Глава 11. Основы глубокого обучения с подкреплением
443
Листинг 11.4.
Цикл обучения примера cart-pole, реализующий алгоритм REINFORCE
Чтобы увидеть алгоритм REINFORCE в действии, задайте 25 эпох на странице
демонстрации и нажмите кнопку
Train
. По умолчанию состояние среды отображается
в режиме реального времени во время обучения, так что можно видеть, как обуча
ющийся агент делает многократные пробы. Для ускорения обучения снимите флажок
Render During Training
(Отрисовка во время обучения). Двадцать пять эпох обучения
займет несколько минут на более или менее современном ноутбуке. Этого должно
444
Часть III • Продвинутые возможности глубокого обучения с TensorFlow.js
быть достаточно для достижения наилучших показателей работы (при настройках
по умолчанию: 500 ходов на каждый эпизод игры). Рисунок 11.7 демонстрирует
типичную кривую обучения, на нем построен график средней длины эпизода как
функции от номера итерации обучения. Обратите внимание, что в процессе об
учения наблюдаются довольно сильные колебания, среднее число ходов меняется
с итерациями немонотонным и сильно зашумленным образом. Для обучения с под
креплением подобные колебания характерны.
По завершении обучения нажмите кнопку
Test
и увидите, что агент весьма непло
хо удерживает систему «тележка — шест» в равновесии на протяжении значитель
ного числа ходов. А поскольку на этапе контроля нет ограничений максимального
числа ходов (500 по умолчанию), возможно, агент сможет растянуть эпизод и на
более чем 1000 ходов. Если эпизод длится слишком долго, можете нажать кнопку
Stop
и моделирование завершится.
Рис. 11.7.
Кривая, отражающая количество ходов, которое агент способен продержаться
в эпизодах примера cart-pole, как функция от количества итераций обучения. Идеальный результат
(в данном случае 500 шагов) достигается примерно на 20-й итерации. Этот результат достигается
при размере скрытого слоя, равном 128 нейронам. Заметно немонотонная и колеблющаяся форма
кривой довольно характерна для задач RL
В завершение этого раздела подытожим постановку задачи и роль алгоритма
REINFORCE градиентов по стратегиям на рис. 11.8. На этом рисунке изображены
основные части решения. На каждом шаге агент с помощью нейронной
сети стра-
тегий
оценивает степень правдоподобия того, что приложение направленной влево
(или, что эквивалентно, вправо) силы — более удачный вариант. Эта степень прав
доподобия преобразуется в фактическое действие с помощью процесса случайной
выборки, побуждающего агент исследовать на ранних этапах и действовать в соот
ветствии со степенью достоверности позднее. Данное действие меняет состояние
системы «тележка — шест» в среде, которая, в свою очередь, вознаграждает агент
вплоть до конца эпизода. Процесс повторяется на протяжении нескольких эпизо
Do'stlaringiz bilan baham: |