Как Agent57 от DeepMind превзошел человека в бенчмарке Atari

Yannic Kilcher 9,4 тыс. 32 мин 5 мин 31.03.2020
Главное

Лаборатория ИИ DeepMind представила алгоритм Agent57, ставший первой системой искусственного интеллекта, способной превзойти человеческий уровень производительности во всех 57 играх классического тестового набора Atari. Аналитик Янник Кильхер разбирает техническую эволюцию архитектур обучения с подкреплением, которая сделала это достижение возможным, и подробно анализирует внутренние механизмы нового агента. В то же время эксперт ставит под сомнение реальную универсальность системы, указывая на признаки избыточного инженерного приспособления под конкретный бенчмарк.

🕹️ Эволюция обучения с подкреплением: от DQN к R2D2 0:00

Долгое время игра Solaris оставалась одним из самых сложных испытаний для систем обучения с подкреплением (Reinforcement Learning, RL). Проблема заключалась в структуре распределения наград: агент мог совершать множество действий, но игровой счет на экране не менялся в течение длительного времени. Agent57 базируется на целой серии фундаментальных улучшений классической архитектуры Deep Q-Networks (DQN), разработанной DeepMind еще в 2015 году. Именно публикация 2015 года популяризировала бенчмарк Atari и впервые доказала эффективность связки глубоких нейросетей с обучением с подкреплением.

В классической парадигме RL взаимодействие строится между агентом и средой. Среда выдает наблюдение (в данном случае — текущий кадр игры), а агент должен в ответ выбрать действие. В играх Atari доступно около 20 вариантов действий, сочетающих отклонения джойстика и нажатие кнопки. После этого среда возвращает измененный кадр и определенную награду. Если в игре Pac-Man награда поступает непрерывно за каждую съеденную точку, то в таких играх, как Montezuma's Revenge, агенту необходимо пройти через цепочку комнат, лестниц и врагов, найти ключ, дойти до двери и лишь тогда получить первый положительный сигнал.

Для решения задач с отложенной наградой стандартная архитектура DQN, обновляющая параметры пошагово, оказалась неэффективной. Важным шагом вперед стал алгоритм R2D2, в который интегрировали рекуррентные блоки LSTM или GRU. Благодаря этому сеть начала принимать на вход не просто один изолированный кадр, а закодированную историю прошлых наблюдений и действий за последние 10–100 шагов. Это позволило градиентам напрямую проходить сквозь историю состояний, качественно решая задачу кредитования ответственности (credit assignment) — определения того, какие именно действия в прошлом привели к текущему успеху.

Кроме того, архитектура R2D2 внедрила распределенный подход к вычислениям:

⚖️ Дилемма исследования и эксплуатации 9:59

Несмотря на масштабируемость, главным недостатком алгоритма R2D2 оставалась примитивная стратегия балансирования между исследованием среды (exploration) и эксплуатацией накопленных знаний (exploitation). Традиционно для этого применялся так называемый эпсилон-жадный метод ($\epsilon$-greedy).

Суть данного подхода заключается в фиксации параметра $\epsilon$ (например, на уровне 5%):

Янник Кильхер иллюстрирует уязвимость такой логики на примере космического симулятора. Перед космическим кораблем находятся два метеорита, а чуть дальше — золотая монета. Если агент выбирает действие «выстрел», он уничтожает первый метеорит и сразу получает +1 к награде, но затем неизбежно погибает от второго метеорита. Если же агент выберет действие «движение вправо», в текущем кадре он получит 0 наград, однако сможет облететь препятствия, забрать монету и открыть путь к цепочке из пяти последующих наград.

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

Для исправления этого перекоса был разработан алгоритм Never Give Up (NGU), сфокусированный на создании механизмов внутренней мотивации и «любопытства». К стандартной внешней награде от игровой среды ($r_{ext}$) разработчики добавили собственный внутренний компонент — $r_{int}$, который поощряет агента за обнаружение новизны. Посещая состояния и кадры, которые нейросеть ранее не видела, агент получает дополнительное внутреннее подкрепление, что мотивирует его сознательно выбирать маршруты с нулевой немедленной внешней наградой ради долгосрочного изучения карты.

🧠 Внутренний выбор Agent57: разделение Q-функции и метаконтроль 17:46

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

Первым серьезным изменением структуры стало математическое разделение классической функции полезности (Q-функции) на два независимых потока. Теперь итоговое значение рассчитывается по формуле:

$$Q(s, a) = Q_{ext}(s, a) + \beta \cdot Q_{int}(s, a)$$

Параметр $\beta$ выполняет роль регулятора: при высоких значениях $\beta$ агент превращается в исследователя-экстремала, игнорирующего игровой счет ради поиска новизны, а при низких — в прагматичного игрока, нацеленного только на результат.

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

$$V(s) = \sum_{k=0}^{H} \gamma^k R_{t+k}$$

Если установить $\gamma$ на уровне 0.1, ИИ будет ценить только те награды, которые можно получить буквально на следующем шаге. Если же поднять $\gamma$ до 0.999, то награда, отдаленная на 100 шагов в будущее, становится для агента почти столь же ценной, сколь и мгновенная.

Agent57 динамически управляет параметрами $\beta$ и $\gamma$ прямо в процессе обучения. В начале сессии агенту выгоднее иметь высокий уровень любопытства (большая $\beta$) и короткий горизонт планирования для построения базовой карты ценностей, а ближе к концу — минимизировать внутренние стимулы и увеличивать глубину прогноза, максимизируя итоговый счет.

Для реализации этой схемы инженеры DeepMind внедрили надстрочный блок — метаконтроллер. Архитектура не меняет параметры непрерывно, а выбирает одну из дискретных стратегий (например, из шести фиксированных профилей комбинаций $\beta$ и $\gamma$). Метаконтроллер оценивает эффективность работы каждого профиля на основе возвращаемой из среды общей выручки наград и перераспределяет приоритеты, решая, какая именно стратегия должна генерировать игровой опыт в данный момент времени.

📉 Проблема мета-инжиниринга и критика концепции AGI 30:10

Несмотря на выдающиеся результаты Agent57 на тестовом наборе, Янник Кильхер высказывает аргументированный скепсис относительно архитектурной избыточности решения. По мнению аналитика, использование алгоритма многоруких бандитов со скользящим окном (sliding window bandit) для обучения самого метаконтроллера не решает проблему фундаментально, а лишь переносит дилемму исследования-эксплуатации на один уровень выше. У метаконтроллера появляются собственные скрытые гиперпараметры (например, размер этого самого скользящего окна), которые исследователям снова приходится настраивать вручную.

Кильхер утверждает, что подобный подход начинает напоминать «мета-оверэнжиниринг» — процесс искусственной и чрезмерной подгонки алгоритмических надстроек под узкие особенности конкретного бенчмарка Atari. Вместо создания гибкой, по-настоящему адаптивной системы, инженеры фактически занимаются тонким оверфиттингом структуры под 57 известных конфигураций.

Особую критику со стороны ведущего вызвало позиционирование работы сотрудниками DeepMind. По словам Кильхера, авторы статьи неоправданно начинают повествование с рассуждений о том, как измерять прогресс на пути к созданию сильного искусственного общего интеллекта (AGI). Эксперт считает попытки увязать стопроцентное прохождение старого набора двумерных видеоигр с реальным продвижением к универсальному человеческому мышлению исключительно маркетинговым ходом.

💬 Цитаты

«Мне кажется, мы просто смещаем проблему исследования и эксплуатации на один уровень выше.»

Янник Кильхер 30:38

«Мы подходим к области, где занимаемся мета-оверэнжинирингом наших подходов под специфику конкретного бенчмарка Atari.»

Янник Кильхер 31:06
👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
Обучение с подкреплением
Метод машинного обучения, при котором агент учится принимать решения, взаимодействуя со средой и получая награды или штрафы.
Q-обучение
Алгоритм обучения с подкреплением, который оценивает качество действий агента в определенных состояниях среды.
Дилемма исследования и эксплуатации
Выбор между использованием уже известных стратегий для получения гарантированной награды и поиском новых, потенциально более выгодных путей.
Фактор дисконтирования
Параметр, определяющий ценность будущих наград по сравнению с немедленными.
📊 Цифры
🗓 Хронология
  1. 2015 Выходит статья DeepMind о DQN, заложившая основу применения нейросетей в обучении с подкреплением.
  2. 2019 Разработан алгоритм R2D2, внедривший рекуррентные сети и распределенную архитектуру.
  3. 2020 DeepMind публикует работу об Agent57, превосходящем человека на всем наборе Atari.
⚖️ Другая сторона
Искусственный интеллект Agent57 DeepMind Янник Кильхер обучение с подкреплением