Оценка генерализации в обучении с подкреплением

Читать научную работуПосмотреть код
Quantifying Generalization In Reinforcement Learning

Мы выпускаем CoinRun — среду обучения, которая предоставляет метрику способности агента переносить свой опыт на новые ситуации и уже помогла прояснить давнююзагадку в обучении с подкреплением. CoinRun находит оптимальный баланс в сложности: эта среда проще традиционных платформеров вроде Sonic the Hedgehog, но при этом представляет собой серьезную задачу на генерализацию для современных алгоритмов.

Проблема генерализации

Генерализация между задачами остается сложной задачей для современных алгоритмов глубокого обучения с подкреплениемA (RL). Хотя обученные агенты могут решать сложные задачи, они с трудом переносят свой опыт в новые среды. Несмотря на то что специалисты знают о склонности RL-агентов к переобучению (то есть к зацикливанию на особенностях конкретной среды, а не к усвоению обобщаемых навыков), их по-прежнему оценивают на тех же средах, в которых они проходили обучение. Это все равно что тестировать модель на обучающей выборке в обучении с учителем!

В предыдущих исследованиях для решения этой проблемы использовались бенчмарк Sonic,  лабиринты на основе процедурной генерации сетки и фреймворк General Video Game AI. Во всех случаях генерализация измеряется путем обучения и тестирования агентов на разных наборах уровней. Агенты, обученные на нашем бенчмарке Sonic, отлично справлялись с уровнями обучения, но показывали плохие результаты на тестовых уровнях без какой-либо дополнительной настройки (fine-tuning). Демонстрируя аналогичное переобучение, агенты, обученные в процедурно сгенерированных лабиринтах, заучивали большое количество тренировочных уровней, а агенты GVG-AI плохо работали при настройках сложности, с которыми они не сталкивались во время обучения.

Правила игры

CoinRun создана простой для существующих алгоритмов и имитирует стиль платформеров, таких как Sonic. Уровни в CoinRun генерируются процедурно, что обеспечивает агентам доступ к большому и легко поддающемуся количественной оценке объему обучающих данных. Цель каждого уровня CoinRun проста: собрать единственную монету, которая лежит в конце уровня. Между агентом и монетой находится несколько препятствий, как стационарных, так и динамических. Столкновение с препятствием приводит к мгновенной гибели агента. Единственная награда в среде получается за сбор монеты, и эта награда представляет собой фиксированную положительную константу. Уровень завершается, когда агент погибает, монета собирается или по истечении 1000 временных шагов.

Side-by-side comparison of regular and increased Coinrun difficulty

Оценка генерализации

Мы обучили 9 агентов игре в CoinRun, причем у каждого было разное количество доступных тренировочных уровней. Первые 8 агентов обучались на наборах от 100 до 16 000 уровней. Последнего агента мы обучали на неограниченном наборе уровней, поэтому этот агент никогда не видел один и тот же уровень дважды. Мы обучали наших агентов с использованием политик на основе стандартной 3-слойной сверточной архитектуры, которую мы называем Nature-CNN. Наши агенты обучались с помощью алгоритма Proximal Policy Optimization (PPO) в течение в общей сложности 256 млн временных шагов. Поскольку один эпизод длится в среднем 100 временных шагов, агенты с фиксированными обучающими наборами увидят каждый тренировочный уровень от тысяч до миллионов раз. Последний агент, обученный на неограниченном наборе, увидит около 2 миллионов уникальных уровней — каждый из них ровно один раз.

Мы получили каждую точку данных на следующих графиках путем усреднения результатов финального агента по 10 000 эпизодов. На этапе тестирования агент оценивается на никогда ранее не виденных уровнях. Мы обнаружили, что значительное переобучение происходит при использовании менее чем 4000 уровней для обучения. Фактически, мы все еще наблюдаем переобучение даже при наличии 16 000 уровней обучения!  Неудивительно, что агенты, обученные на неограниченном наборе уровней, показали наилучшие результаты, так как у них был доступ к наибольшему количеству данных. Эти агенты обозначены пунктирной линией на следующих графиках.

Мы сравнили нашу базовую модель Nature-CNN со сверточной архитектурой, используемой в IMPALA, и выяснили, что агенты IMPALA-CNN обобщают знания намного лучше при любом наборе для обучения, как показано ниже.

Nat Vs Imp Generalization 1

Слева: Итоговая производительность на обучающей и тестовой выборках для агентов Nature-CNN после 256 млн временных шагов в зависимости от количества уровней обучения.

Справа: Итоговая производительность на обучающей и тестовой выборках для агентов IMPALA-CNN после 256 млн временных шагов в зависимости от количества уровней обучения.

Повышение эффективности генерализации

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

  • Dropout и L2-регуляризация: оба метода заметно сокращают разрыв в генерализации, хотя L2-регуляризация оказывает более сильное влияние.
  • Аугментация данных (модифицированный Cutout) и батч-нормализация: и аугментация данных, и батч-нормализация существенно улучшают генерализацию.
  • Стохастичность среды: обучение в условиях стохастичности улучшает генерализацию в большей степени, чем любой из упомянутых выше методов (подробности см. в статье).
Misc Gen 500

Дополнительные среды

Мы также разработали две дополнительные среды для исследования переобучения: вариант CoinRun под названием CoinRun-Platforms и простую среду для навигации по лабиринтам RandomMazes. В этих экспериментах мы использовали оригинальную архитектуру IMPALA-CNN в сочетании со слоем LSTM, так как для успешной работы в данных средах необходима память.

В CoinRun-Platforms агент должен собрать несколько монет в течение лимита времени в 1000 шагов. Монеты случайно разбросаны по платформам на уровне. Уровни в CoinRun-Platforms крупнее и имеют фиксированный размер, поэтому агенту приходится более активно исследовать пространство и время от времени возвращаться назад.

Plat Gen 1

Итоговая производительность на обучающей и тестовой выборках в CoinRun-Platforms после 2 млрд временных шагов в зависимости от количества уровней обучения.

Когда мы запустили CoinRun-Platforms и RandomMazes в рамках нашего базового эксперимента, наши агенты сильно переобучились во всех случаях. Особенно сильное переобучение наблюдается в случае RandomMazes, так как значительный разрыв в генерализации сохраняется даже при использовании 20 000 уровней обучения.

Random Mazes Generalization 2

Дальнейшие шаги

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

Мы предлагаем следующие направления для будущих исследований:

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

Если вам интересна эта область исследований, подумайте о том, чтобы начать работу в OpenAI!

Сноски

  1. A

    Даже впечатляющие стратегии обучения с подкреплением (RL) часто обучаются без применения методов с учителем, таких как исключение (dropout) и пакетная нормализация. Однако в режиме обобщения CoinRun мы обнаруживаем, что эти методы действительно оказывают положительное влияние и что наши предыдущие стратегии RL переобучались под конкретные марковские процессы принятия решений (MDP).

Автор

Карл Кобб (Karl Cobbe)

Благодарности

Спасибо многим людям, которые внесли свой вклад в создание этой статьи и блога:

Олег Климов, Крис Хессе, Тэхун Ким, Джон Шульман, Мира Мурати, Джек Кларк, Эшли Пилиписин, Маттиас Плапперт, Илья Суцкевер, Грег Брокман

Внешние рецензенты:

Джон Уолш, Калеб Круз, Нихил Мишра

Материалы

Kenney

Полный текст статьи читайте на OpenAI