Разработчик показал нейросеть, которая воссоздаёт аркады на Raspberry Pi Pico 2 W

1 мин
Разработчик показал нейросеть, которая воссоздаёт аркады на Raspberry Pi Pico 2 W

Разработчик под никнеймом SheepSeb поделился проектом, в котором две компактные нейросети воссоздают простые игры на Raspberry Pi Pico 2 W и сами учатся в них играть.

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

Для экономии ресурсов автор проекта использовал трансформер, который некоторое количество раз применяет один блок с общими весами. Основные матричные вычисления при этом перевели в восьмибитный структура. В зависимости от игры схема содержит от 26 до 131 тыс. параметров. Обучают её заранее на игровых записях — до 3 млн примеров на игру.

Примечательно, что в симуляциях игр есть ошибки, которыми агент может пользоваться. В частности, в Breakout агент набрал 210 очков при максимуме в 56. Эти ошибки автор исправляет с помощью обучения на дополнительных данных.

Сами игры сильно упрощены: кадры состоят из сеток размером от 20 × 16 до 48 × 48 ячеек. Протестировать симуляции можно в браузерном демо. Оно запускает модели с помощью WebAssembly. Можно следить за тем, как модель обучается играть. Код проекта обнародован на GitHub.

Поделиться

TelegramVK