Команда исследователей из OpenAI представила систему Video PreTraining (VPT), которая впервые в истории искусственного интеллекта научилась успешно создавать алмазную кирку в игре Minecraft без использования захардкоженных команд. Метод основан на обучении нейросети на огромном массиве неразмеченных видеороликов с YouTube с помощью предварительно обученной модели инверсной динамики. Известный ИИ-блогер Янник Килчер (Yannic Kilcher) подробно разбирает архитектуру этой системы, её экономическую целесообразность и вычислительную сложность.
⛏️ Сверхсложная задача для искусственного интеллекта 0:00
Игра Minecraft уже много лет служит полигоном для тестирования алгоритмов обучения с подкреплением (Reinforcement Learning), однако продвижение в ней считается классической сверхсложной задачей. Агент оказывается в открытом мире со случайной процедурной генерацией ландшафта, где каждый новый старт уникален. Взаимодействие происходит не через упрощенные абстрактные команды, а напрямую через симуляцию клавиатуры и мыши. Для достижения финальной цели игроку необходимо пройти через сложнейшую цепочку последовательных действий:
- Добыть дерево руками для получения древесины.
- Создать доски и палки, а затем собрать верстак.
- Скрафтить деревянную кирку для добычи булыжника.
- Создать каменную кирку, добыть железную руду и переплавить её в печи.
- Скрафтить железную кирку и с её помощью найти и добыть алмазы.
Янник Килчер отмечает, что эта задача трудна даже для людей. Участники его сообщества в Discord пытались пройти этот путь в рамках 10–15 минутных сессий, и автору лишь однажды удалось добыть два алмаза, тогда как для кирки требуется три. Попытки обучить модель с нуля случайными действиями в среде обучения с подкреплением не приносят никаких результатов.
💰 Экономика данных: куда инвестировать бюджет? 3:46
Главный вопрос, который ставит исследование VPT, заключается в эффективном распределении бюджета при создании ИИ-агентов. При наличии определенной суммы денег у разработчиков есть несколько путей ее инвестирования:
- Сбор размеченных данных через подрядчиков (contractors), когда люди играют в игру, а система записывает их действия. Это позволяет использовать клонирование поведения (behavior cloning), но стоит очень дорого.
- Сбор неразмеченных данных, например, скачивание терабайтов видео с YouTube. Это дает огромный объем информации практически бесплатно, но видео не содержат меток о нажимаемых клавишах.
- Инвестиции в саму разметку или в алгоритмы, которые смогут связать видеоряд с действиями.
Разработчики из OpenAI нашли рецепт, который существенно снижает общую стоимость создания способного агента и может быть применен в любой аналогичной области.
🔄 Метод инверсной динамики: взгляд из будущего 6:14
В основе подхода VPT лежит простое наблюдение: предсказать следующее действие игрока, глядя только на прошлые кадры (как это делают классические каузальные авторегрессионные модели), чрезвычайно сложно. Однако задача резко упрощается, если у модели есть доступ как к прошлым, так и к будущим кадрам видео. Обладая информацией о том, что произойдет дальше, алгоритм может легко восстановить пропущенное действие между кадрами в ретвоспективе.
Янник Килчер сравнивает этот подход с технологией разметки Tesla, о которой ранее рассказывал Андрей Карпати. Если автомобиль на видео временно скрывается за препятствием, определить его траекторию вслепую трудно, но, увидев его последующее появление, восстановить историю движения задним числом не составляет труда.
Процесс разметки данных в VPT состоял из следующих шагов:
- Сбор эталонных данных: OpenAI наняла подрядчиков, которые наиграли 2 000 часов в Minecraft с полной записью нажатий клавиш и движений мыши.
- Обучение модели инверсной динамики (IDM): На этих данных обучили некаузальную нейросеть, которая предсказывает действия игрока для кадра, находящегося в середине временного окна. Точность предсказания IDM превысила 90%.
- Фильтрация данных с YouTube: Из интернета скачали 70 000 часов игрового процесса. С помощью краудсорсинга обучили классификатор (связка предобученной ResNet и SVM), который отсеивал «грязные» ролики с веб-камерами стримеров или плашками подписки, оставляя чистый геймплей в режиме выживания.
- Псевдоразметка: Модель IDM обработала все 70 000 часов чистого видео с YouTube, сгенерировав псевдометки действий для каждого кадра.
В результате OpenAI получила гигантский массив данных для стандартного клонирования поведения, обойдясь минимальными затратами на ручную разметку.
🧠 Архитектура: от 3D-свёрток к трансформерам 15:37
Архитектура моделей IDM (разметчик) и базовой каузальной модели (агент) практически идентична, за исключением того, что агент лишен возможности заглядывать в будущее. В отличие от текстовых моделей вроде GPT-3, которые работают в рамках одного домена (текст на входе и текст на выходе), VPT принимает на вход видеопоследовательность, а на выходе генерирует действия.
Технический стек обработки видео включает в себя несколько уровней:
- Временные 3D-свёртки: Видеоряд обрабатывается трехмерной сверточной нейросетью с размером ядра (kernel size) равным 5 в развертке по времени. Она сканирует каждые пять соседних перекрывающихся кадров.
- Слой эмбеддингов: Результаты свёрток проходят через полносвязные слои (feed-forward) для формирования векторов признаков.
- Трансформер: Полученные эмбеддинги поступают в большую трансформерную модель, которая и вычисляет итоговые параметры.
- Иерархическое кодирование действий: Для предотвращения взрывного роста числа классов и исключения взаимоисключающих команд применяется специфическая иерархическая схема кодирования действий для Minecraft.
📈 Результаты и магия тонкой настройки 19:34
Обученная на 70 000 часах псевдоразмеченных данных базовая модель изначально не имеет конкретной цели. По мнению Янника Килчера, OpenAI избыточно форсит трендовое слово «фундаментальная модель» (foundation model) в тексте работы, шутя, что Стэнфорд, возможно, приплатил им за это. Если запустить этого базового агента в мир, он демонстрирует хаотичное, но уверенное поведение игрока: собирает блоки, рубит деревья, крафтит доски.
Однако настоящая сила подхода проявляется при тонкой настройке (fine-tuning):
- Файнтюнинг на ранней игре: Исследователи отфильтровали видео с YouTube по ключевому слову «early game» (обучающие ролики для новичков). Тонкая настройка на этой выборке подняла эффективность сбора базовых предметов на порядок (в 10 раз).
- Файнтюнинг на целевых данных: Подрядчикам дали задание построить дом. Модель, дообученная на этих данных, показала рост создания верстаков в 213 раз по сравнению с базовой версией.
🎮 Усиление через подкрепление и колоссальные затраты 25:49
Финальным этапом стало применение обучения с подкреплением (RL) поверх модели, дообученной на роликах «early game». Исследователи применили метод формирования вознаграждения (reward shaping), выдавая агенту бонусы за каждый последующий предмет в технологической цепочке.
Результаты экспериментов наглядно демонстрируют превосходство VPT:
- Случайная инициализация + RL дают нулевой результат: агент ничему не учится.
- Базовая модель + RL позволяет дойти до создания печи, но более сложные инструменты остаются недоступны.
- Модель «early game» + RL + reward shaping успешно создает алмазную кирку в 2,5% тестовых запусков.
Янник Килчер подчеркивает, что 2,5% — это огромный успех, учитывая, что оценка проводилась на случайных сидах (миры генерировались заново при каждой попытке). При этом он признает, что reward shaping был агрессивным, но напоминает: ранее в Minecraft другие команды использовали еще более жесткие ограничения вознаграждений, но не добивались ничего.
Главный минус проекта — его колоссальная вычислительная стоимость. Обучение моделей потребовало 9 дней непрерывной работы кластера из 720 графических процессоров NVIDIA V100. К счастью для сообщества, OpenAI выложила модель в открытый доступ для участников соревнования MineRL, избавив независимых разработчиков от необходимости тратить миллионы долларов на предобучение.