Как функция оценки помогает в градиенте политики?

Я пытаюсь изучить методы градиента политики для обучения с подкреплением, но я застрял в части функции оценки.

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

В методах градиента политики мы делаем это, беря градиент ожидания траекторий, и получаем:

Объективная функция изображения

Здесь я не мог понять, как этот градиент лог-политики смещает распределение (через его параметры θ), чтобы математически увеличить баллы его выборок? Разве мы не ищем что-то, что делает градиент этой целевой функции нулевым, как я объяснил выше?

1 ответ

Вы хотите максимизировать

J(theta) = int( p(tau;theta)*R(tau) ) 

Интеграл закончился tau (траектория) и p(tau;theta) это его вероятность (т.е. увидеть состояние последовательности, действие, следующее состояние, следующее действие, ...), которая зависит как от динамики среды, так и от политики (параметризованной theta). Формально

p(tau;theta) = p(s_0)*pi(a_0|s_0;theta)*P(s_1|s_0,a_0)*pi(a_1|s_1;theta)*P(s_2|s_1,a_1)*...

где P(s'|s,a) - вероятность перехода, заданная динамикой.

Поскольку мы не можем контролировать динамику, а только политику, мы оптимизируем ее параметры, и мы делаем это с помощью градиентного подъема, что означает, что мы берем направление, заданное градиентом. Уравнение на вашем изображении получено из лог-трюкаdf(x)/dx = f(x)*d(logf(x))/dx.

В нашем случае f(x) является p(tau;theta)и мы получаем ваше уравнение. Затем, поскольку у нас есть доступ только к конечному количеству данных (нашим выборкам), мы приближаем интеграл с математическим ожиданием.

Шаг за шагом вы (в идеале) достигнете точки, где градиент равен 0, что означает, что вы достигли (локального) оптимума.

Вы можете найти более подробное объяснение здесь.

РЕДАКТИРОВАТЬ

Неформально вы можете подумать об изучении политики, которая увеличивает вероятность получения высокой прибыли. R(tau). Как правило,R(tau)- совокупная сумма вознаграждений. Для каждой пары состояние-действие(s,a) поэтому вы максимизируете сумму вознаграждения, которое получаете за выполнение a в состоянии s и следующие piпотом. Ознакомьтесь с этим замечательным резюме для получения более подробной информации (рис. 1).

Другие вопросы по тегам