Обучение с подкреплением
Кратко
Обучение с подкреплением (reinforcement learning, RL) — вид машинного обучения, при котором агент учится, взаимодействуя со средой: выбирает действия, получает награды и постепенно находит стратегию, максимизирующую суммарный выигрыш. В отличие от обучения с учителем, правильных ответов агенту никто не показывает — только оценку последствий его действий.
Для чего используется
- обучение поведению, которое трудно задать правилами: игры, управление движением;
- управление аппаратами и оптимизация процессов, где есть измеримый критерий успеха;
- исторические демонстрации силы метода — игры Atari и го (AlphaGo).
Как работает
Основной цикл: агент наблюдает состояние среды, выбирает действие, среда возвращает следующее состояние и награду — числовой сигнал качества. Аналогия — дрессировка: команда, действие, лакомство; со временем животное связывает действия с поощрением. Разница в том, что агент RL исследует варианты сам и учится на тысячах попыток.
Ключевые понятия:
- состояние (state) — полное описание мира; наблюдение (observation) — то, что агент реально видит (часто лишь часть состояния);
- действие (action) — выбор из пространства действий;
- награда (reward) и return — суммарная, обычно дисконтированная, награда по траектории;
- политика (policy) — правило выбора действий, детерминированное или стохастическое;
- функция ценности (value function) — ожидаемый return из состояния при следовании политике.
Цель обучения — политика, максимизирующая ожидаемый return.
Соединение RL с глубоким обучением дало deep RL. Первая работа — DQN (DeepMind, 2013): свёрточная сеть + вариант Q-learning выучила управление напрямую из сырых пикселей экрана. В журнальной версии (Nature, 2015) один и тот же агент с одними гиперпараметрами прошёл 49 игр Atari на уровне, сопоставимом с профессиональным игроком. Устойчивость обучения обеспечили experience replay — случайное воспроизведение прошлого опыта, разрывающее корреляции между последовательными наблюдениями, — и периодически обновляемая целевая сеть.
Основные компоненты
- агент и среда;
- политика, функция ценности, модель среды (если есть);
- алгоритмы: от табличных методов до аппроксимации нейросетями;
- среды для обучения и сравнения алгоритмов — стандартный API Gymnasium.
Примеры
- Gymnasium (Farama Foundation, поддерживаемый форк OpenAI Gym) — стандартный интерфейс сред RL:
env.reset()даёт начальное наблюдение,env.step(action)— следующее наблюдение, награду и флаги завершения. Эталонные среды: CartPole, Lunar Lander, MuJoCo (Ant, Humanoid), Atari. - Spinning Up (OpenAI) — открытое учебное введение в deep RL: терминология, математический фундамент, реализации алгоритмов.
- Канонический учебник — Sutton, Barto «Reinforcement Learning: An Introduction» (2-е изд., MIT Press, 2018, 552 с.), свободно доступен онлайн; часть III разбирает кейсы AlphaGo и Atari.
Связанные темы
Источники
- Spinning Up in Deep RL (OpenAI) — понятия: агент, среда, политика, награда, return, value function.
- Sutton, Barto. Reinforcement Learning: An Introduction — канонический учебник (реквизиты сверены по Google Books).
- Playing Atari with Deep RL (Mnih et al., 2013) — первая DQN, 7 игр Atari.
- Human-level control through deep RL (Mnih et al., Nature 2015) — 49 игр, experience replay, целевая сеть.
- Gymnasium (Farama Foundation) — стандартный API сред.
- Учебник по машинному обучению (ШАД, Яндекс) — RL в систематике видов обучения.