Авторы Петр Козаковский и Петр Милос

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

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

Обучение с подкреплением - это очень общая парадигма машинного обучения, ориентированная на обучение независимых агентов посредством взаимодействия. Такие агенты действуют в заданной среде, приобретая новый опыт и улучшая свое поведение. Более простой термин мог бы быть «обучение методом проб и ошибок».

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

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

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

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

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

Методы обучения с подкреплением можно условно разделить на безмодельные и основанные на моделях. В безмодельных методах агент не делает никаких явных предположений об окружающей среде. Ему нужно узнать о нем все, взаимодействуя с ним и наблюдая за результатами. Этот режим очень интересен, потому что он не требует от нас предоставления агенту каких-либо дополнительных знаний о мире - он узнает все, что ему нужно, самостоятельно. Это наиболее распространенный подход к RL, используемый многими современными системами, такими как OpenAI Five и AlphaStar. Однако, поскольку агент может обучаться только методом проб и ошибок, ему обычно требуются огромные объемы данных для достижения значимого поведения (например, 10000 лет игры для OpenAI Five). Мы говорим, что безмодельные методы обычно имеют низкую выборочную эффективность.

Напротив, методы, основанные на модели, предполагают доступ к модели среды, которая является (возможно, приблизительной) внутренней копией среды. Агент может использовать модель, чтобы представить, что произойдет после выполнения определенных действий. Существуют различные способы использования таких моделей. Один из них - планирование - поиск наилучшей последовательности действий в соответствии с моделью, а затем выполнение ее в реальной среде. AlphaZero реализует этот метод, используя вариант поиска по дереву Монте-Карло в качестве алгоритма планирования. Другой способ - создать вымышленные образцы опыта, которые могут заменить взаимодействие с реальной средой. Это особенно полезно, если последние дороги или труднодоступны. В крайнем случае агент может учиться полностью с помощью модели (внутри симуляции), а затем переноситься непосредственно в реальную среду без накопления какого-либо дополнительного опыта. Этот подход, называемый sim2real transfer, обычно используется для роботизированного управления и автономных транспортных средств, где реальный опыт непомерно дорог. Как правило, подходы на основе моделей позволяют агенту тестировать некоторые решения без реального взаимодействия, что значительно сокращает объем данных, необходимых из реальной среды, что обеспечивает более высокую эффективность выборки.

Модель может быть указана человеком или изучена самим агентом. Последняя формулировка объединяет безмодельный и модельный подходы, обеспечивая лучшее из обоих миров. С одной стороны, нам не нужно заранее закодировать агенту какую-либо информацию о среде. С другой стороны, агент все еще может использовать модель, чтобы лучше информировать свои решения. Во многих случаях изучить модель проще, чем изучить оптимальную стратегию - в первом случае нам нужно только предсказать, что произойдет в следующий момент, а во втором нам нужно предсказать все будущие результаты текущего решения. Фундаментальная проблема связана с недостатками усвоенной модели, которые могут затруднить процесс планирования. Еще одна проблема заключается в том, что изучение моделей может быть непростым, особенно для пространств наблюдения большой размерности, таких как изображение камеры или экран компьютера.

Просто

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

Мы представляем очень простой (каламбур) метод обучения агента на основе модели: SimPLe - Simulated Policy Learning. Мы одновременно изучаем модель среды и политику и используем модель для создания имитационного опыта для улучшения политики. Во время обучения политика повторно переживает ситуации из различных точек реальных собранных траекторий, но в каждой из них может принимать разные решения и видеть их результаты, предсказанные моделью.

Наш алгоритм состоит из трех этапов:

  • Запуск агента в реальной среде для сбора данных
  • Обучение модели мира на собранных данных
  • Обучение агента в среде, моделируемой моделью мира.

Модель среды обучается с использованием обучения с учителем. Политика обучается с использованием проксимальной оптимизации политики (PPO), широко используемого алгоритма обучения с подкреплением без использования моделей. Единственная разница в том, что мы используем смоделированный опыт, а не реальный опыт - мы вводим наблюдения, предсказанные моделью, в политику. Как видите, учитывая реализации этих двух строительных блоков и архитектуру модели, действительно очень просто реализовать SimPLe.

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

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

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

Видео модель

В качестве модели среды мы используем архитектуру, аналогичную условному вариационному автоэнкодеру для предсказания видео. Наша модель авторегрессионная - на основе нескольких предыдущих наблюдений она предсказывает одно следующее наблюдение. Во время обучения будущие кадры кодируются в апостериорную по скрытой переменной способом, подобным вариационному автоэнкодеру (VAE), обычно используемому для стохастического предсказания видео. На основе выборки из апостериорного и предыдущих кадров модель предсказывает будущие кадры. Во время вывода этот процесс зацикливается - предсказанный следующий кадр подается в качестве входных данных в модель на следующем временном шаге и так далее.

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

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

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

Полученные результаты

При оценке мы сосредоточились на измерении эффективности нашего метода для выборки. Мы установили ограничение в 100 тыс. Образцов (то есть взаимодействий с окружающей средой), которое наш алгоритм может собирать (это примерно 2 часа игры), и измерили количество образцов, необходимых базовым параметрам, чтобы соответствовать нашему результату. Мы сравнили наш метод с Rainbow, современным алгоритмом без моделей для Atari в то время, и обычным PPO, который мы используем для обучения политики в смоделированной среде.

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

Видео

В этом разделе мы демонстрируем предсказательную силу нашей модели. Видео разделены на три панели: слева - прогноз нашей модели, в центре - основные кадры истинности из реальной среды, а справа - разница между ними.

В некоторых играх наша модель может идеально предсказывать будущее на коротких временных горизонтах. Одна из таких игр - Pong:

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

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

Чтобы увидеть больше видео, мы рекомендуем вам посетить веб-страницу нашей газеты.

Заключение

В этом посте мы описали SimPLe, метод, который доказал, что при достаточно мощных архитектурах моделей обучение с подкреплением на основе моделей возможно даже в сложных визуальных областях, таких как игры Atari, и в этом тесте достигли высочайшей эффективности сэмплов. Наше исследование вдохновило многих других, которые улучшили и расширили наши результаты, такие как: Hasselt et al, 2019, представляющий более эффективную сэмплерную версию Rainbow, Hafner et al, 2020, разрабатывающий эффективный способ планирования в скрытом пространстве, и Schrittwieser et al, 2019, сочетающий поиск по дереву с изученной моделью. Мы надеемся, что дальнейшие успехи в обучении с подкреплением на основе моделей приблизят нас к широкомасштабному применению методов RL в реальных задачах.

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