Автор: Шамиль Мамедов Редактура: Герман Петров

Введение

В этой статье мы подробно рассмотрим один из методов обучения с подкреплением — метод, в основе которого лежит функция ценности. А еще познакомимся с нашим первым алгоритмом Q-обучения.

Для лучшего понимания статьи рекомендуем посмотреть нашу предыдущую публикацию на тему обучения с подкреплением по этой ссылке.

Обучение с подкреплением

Давайте вспомним, что такое обучение с подкреплением. Наша задача здесь — создать агента, который способен принимать умные решения. Это может быть, например, агент для игры в видеоигры или агент для торговли на бирже. Второй должен учиться максимизировать выгоды и выбирать, когда и какие акции стоит купить или продать.

Рисунок 1. Парадигма обучения с подкреплением. Агент получает состояние среды и вознаграждение. На их основе он предпринимает действие, которое, в свою очередь, меняет состояние среды

Рисунок 1. Парадигма обучения с подкреплением. Агент получает состояние среды и вознаграждение. На их основе он предпринимает действие, которое, в свою очередь, меняет состояние среды

Наш агент будет учиться принимать решения, взаимодействуя с окружающей средой методом проб и ошибок и получая награды в качестве обратной связи. Его цель — максимизация ожидаемой совокупной награды. Процесс, по которому агент принимает решения, называется политикой $\pi$, которая возвращает действие $a_t$, исходя из текущего состояния среды $s_t$.

Два метода на основе ценности (value-based methods)

В подходах на основе ценности мы обучаем функцию ценности $v_\pi$, которая определяет ожидаемое вознаграждение определенного состояния $s$:

$$ v_\pi(s) = \mathbb{E}\pi\big[R{t+1} + \gamma R_{t+2} + \gamma^2 R_{t+3} + \dots\ |\ S_t = s\big]. $$

Ценность состояния — это ожидаемое дисконтированное вознаграждение $R$, которое может получить агент, если начнет действовать из состояния $S_t=s$ и будет следовать установленной стратегии $\pi$.

Но что значит действовать в соответствии с установленной стратегией? В конце концов, в методах, основанных на значении, у нас нет стратегии, поскольку мы обучаем функцию ценности, а не стратегию.

Вспомним следующее: цель агента обучения с подкреплением — найти оптимальную стратегию $π^*$. Для этого есть два ключевых типа методов:

Поскольку в методах, основанных на ценности, стратегия не тренируется, нам нужно определить ее. Например, если мы хотим стратегию, которая, исходя из функции ценности, всегда будет выбирать действия, приводящие к наибольшему вознаграждению, мы получим жадную стратегию.

Следовательно, независимо от метода, который мы будем использовать для решения нашей проблемы, у нас будет стратегия. В случае методов, основанных на ценности, стратегия не обучается: ваша стратегия — это просто заранее определенная функция (например, жадная стратегия). Она использует ценности, предоставленные функцией ценности для выбора своих действий.

Функция ценности состояния (value function)

Функция ценности состояния при стратегии $π$ записывается так: