Удобное обучение с подкреплением с использованием Stable-Baselines3

Удобное обучение с подкреплением при помощи Stable-Baselines3

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

Обучение с подкреплением без кода-заготовки

Создано автором с помощью Leonardo Ai.

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

Практическое обучение с глубоким Q-обучением

Повысьте уровень своего агента, чтобы выигрывать более сложные игры!

towardsdatascience.com

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

В этой статье я покажу вам библиотеку обучения с подкреплением Stable-Baselines3, которая так же легка в использовании, как scikit-learn. Вместо обучения моделей для предсказания меток, мы получаем обученных агентов, которые хорошо ориентируются в своей среде.

Краткое повторение

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

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

Изображение автора.

Для этого, в Q-обучении мы учим значения качества для каждой пары (s, a), где s – состояние, а – действие, которое агент может выполнить. Q(s, a) это…