Как классическая игра NetHack помогает обучать нейросети будущего

The TWIML AI Podcast 813 47 мин 4 мин 14.10.2021
Главное

Обучение с подкреплением (Reinforcement Learning, RL) долгое время опиралось на игры вроде Atari, однако современные исследователи считают этот подход ограниченным. Тим Роктешель, научный сотрудник Meta AI (FAIR) и профессор UCL, обсуждает переход к процедурно генерируемым средам и использованию классической игры NetHack для тренировки агентов, способных к настоящему обобщению знаний.

🕹️ Проблема «переобучения» в симуляторах 2:00

На протяжении последнего десятилетия исследования в области RL были сосредоточены на крайне ограниченных и детерминированных средах . Тим Роктешель подчеркивает, что успех в играх Atari, безусловно, продвинул науку, но эти игры статичны. Агенты часто не «учатся» играть в широком смысле, а просто эксплуатируют упрощенные предположения, заложенные в симуляторы, фактически заучивая последовательности действий .

Проблема аналогична переобучению (overfitting) на датасете ImageNet в компьютерном зрении . В RL это проявляется еще острее: если агент привыкает к определенному визуальному паттерну или топологии уровня, малейшее изменение (например, текстуры пола или расположения стен) приводит к полному краху его стратегии . Чтобы преодолеть этот барьер, исследовательское сообщество начало внедрять процедурно генерируемые среды, такие как:

🗡️ NetHack как идеальный полигон для AI 12:00

Роктешель и его команда остановили свой выбор на NetHack — культовой игре жанра rogue-like, созданной в 1987 году . Несмотря на то, что игра полностью текстовая (ASCII-графика в терминале), она обладает невероятной глубиной.

Ключевые особенности NetHack как бенчмарка:

  1. Скорость: отсутствие 3D-графики позволяет симулировать десятки тысяч шагов в секунду на одном GPU .
  2. Сложность: сотни типов монстров и предметов, каждый из которых обладает уникальной механикой взаимодействия .
  3. Перманентная смерть: после гибели персонажа игра начинается заново в абсолютно новом, процедурно созданном подземелье .
  4. Длительность: прохождение игры занимает в среднем 50 000 шагов, что в разы больше, чем в StarCraft II .

Тим отмечает, что даже для опытного человека игра крайне сложна: самому Роктешелю потребовалось два года регулярной игры во время поездок на поезде, чтобы одержать свою первую победу («вознестись») .

🧠 От «берсерка» к осознанному исследователю 18:00

Первые попытки применить стандартные алгоритмы глубокого RL к NetHack дали любопытные результаты. Агенты научились базовым навыкам: открывать двери, избегать сильных монстров и даже есть пищу, чтобы не умереть от голода . Однако они все еще далеки от победы.

Основная проблема заключается в функции вознаграждения. Обычный игровой счет в NetHack — плохая метрика для оптимизации. Агент, стремящийся максимизировать счет, превращается в «берсерка»: он просто бежит вперед, убивая всё на своем пути, и быстро погибает, так как не тратит время на поиск экипировки и стратегическое развитие .

По мнению Роктешеля, агенты должны руководствоваться не внешними очками, а внутренней мотивацией (intrinsic motivation) и любопытством . Ученый проводит параллель со своей докторской диссертацией по NLP и графам знаний: агент в NetHack должен вести себя как ученый, ставящий эксперименты. Например, выяснять: «Что будет, если я смешаю эти два зелья?» или «Могу ли я прокопать туннель вниз с помощью этого жезла?» .

🛠️ MiniHack и обучение через дизайн сред 30:48

Для более тонкой настройки исследований команда Роктешеля создала проект MiniHack. Это «песочница» на базе движка NetHack, которая позволяет описывать конкретные задачи на специальном языке (DSL) . Исследователи могут создавать изощренные лабиринты или специфические ситуации для проверки конкретных навыков агента.

Одним из самых перспективных направлений Тим называет Unsupervised Environment Design (UED) . В этой концепции существуют два агента:

Учитель не просто создает случайные миры, а ищет такие конфигурации, где Студент допускает ошибки, но имеет потенциал для обучения . Этот процесс автоматического формирования учебного плана (curriculum learning) позволяет выращивать агентов, обладающих «Zero-shot generalization» — способностью успешно проходить созданные вручную сложные уровни, которые они никогда не видели в процессе обучения .

🚀 Будущее и открытые вопросы 44:22

В завершение беседы Роктешель выделил основные приоритеты будущих исследований:

  1. Масштабирование сложности: переход от 2D-лабиринтов к полноценным 3D-мирам (например, в стиле Minecraft), где сложность нарастает эволюционно .
  2. Обучение на демонстрациях: на серверах alt.org накоплено около 5 миллионов записей игр людей в NetHack . Проблема в том, что в них записаны состояния, но не действия (клавиши), что требует разработки новых методов обратного RL.
  3. Символьное представление: использование того факта, что NetHack — символьная игра. Это открывает путь к нейросимвольным моделям, сочетающим глубокое обучение и классическую логику .

Тим подчеркивает: цель не в том, чтобы «взломать» конкретную игру, используя бесконечные вычислительные мощности, а в создании методов, которые позволят AI функционировать в непредсказуемом реальном мире .

💬 Цитаты

«В NetHack вы должны стать своего рода ученым: понять, что будет, если смешать эти два зелья или использовать жезл для копания туннелей.»

Тим Роктешель 22:45

«NetHack симулируется в терминале, что делает его невероятно быстрым, но при этом он остается одной из самых сложных игр в истории.»

Тим Роктешель 12:41
👥 Спикеры
🔗 Упомянутые сайты и проекты
📖 Термины
Rogue-like
Жанр игр, характеризующийся случайной генерацией уровней и необратимостью смерти персонажа.
Zero-shot generalization
Способность модели успешно решать задачу в новых условиях без предварительного дообучения на них.
Procedural Content Generation
Метод создания игрового контента (уровней, предметов) с помощью алгоритмов, а не вручную.
Neuro-symbolic AI
Подход, объединяющий нейронные сети для распознавания образов и символьную логику для рассуждений.
📊 Цифры
🗓 Хронология
  1. 1987 Выход первой версии игры NetHack.
  2. 2013 Тим Роктешель начинает PhD в области NLP в UCL.
  3. 2020 Выход среды NetHack Learning Environment (NLE) и презентация на NeurIPS.
⚖️ Другая сторона
Искусственный интеллект NetHack Reinforcement Learning Тим Роктешель MiniHack Meta AI