При использовании функциональной аппроксимации в обучении с подкреплением как выбрать действия? - PullRequest
0 голосов
/ 31 октября 2018

На этом слайде показано уравнение для Q (состояние, действие) в терминах набора весов и функций. Я запутался в том, как написать функцию функции.

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

В примере Пакмана, показанном несколькими слайдами позже, по заданному состоянию известно, каким будет эффект действия. Но это не всегда так. Например, рассмотрим проблему с полюсом тележки (в тренажерном зале OpenAI). Характеристики (из которых, собственно, и состоит наблюдение) - это четыре значения: положение тележки, скорость тележки, угол полюса и скорость вращения полюса. Есть два действия: нажать влево и нажать вправо. Но заранее неизвестно, как эти действия изменят четыре значения функции. Так как же вычислить Q (s, a)? То есть, как написать функции функции f i (состояние, действие) ?

Спасибо.

1 Ответ

0 голосов
/ 06 ноября 2018

Выбор действий зависит от вашего алгоритма и стратегии исследования. Например, в Q обучения вы можете сделать что-то, называемое эпсилон жадные исследования. Espilon% времени, когда вы выбираете случайное действие, а остальные% времени, когда вы выполняете действие с наибольшим ожидаемым значением (жадное действие).

Так, как написать функцию, которая отображает наблюдение и действие с числовым значением?

С помощью наград вы можете приблизить состояние, значения действий. Затем используйте награды и (в зависимости от алгоритма) значение следующего состояния. Например, формула обновления обучения Q: enter image description here

Вы обновляете старое значение Q (s, a) с помощью вознаграждения и вашей оценки оптимального будущего значения из следующего состояния.

В табличном обучении Q вы можете оценивать каждое значение Q (s, a) индивидуально и обновлять значение каждый раз, когда вы посещаете состояние и выполняете действие. В приближении функции Q обучения вы используете что-то вроде нейронной сети для аппроксимации значений Q (s, a). Выбирая, какое действие выбрать, вы вводите состояние и действие в нейронную сеть и возвращаете приблизительные значения нейронной сети для каждого действия. Затем выберите действие, основанное на вашем алгоритме (например, жадный метод epsilon). Когда ваш агент взаимодействует со средой, вы обучаете и обновляете нейронную сеть новыми данными для улучшения приближения функции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...