В Стэнфордском университете в рамках курса CS221 прошла лекция, посвященная обучению с подкреплением (Reinforcement Learning, RL). В отличие от классических марковских процессов принятия решений (MDP), где правила игры известны заранее, RL предлагает алгоритмы для ситуаций, когда агент не знает ни вероятностей перехода, ни наград, и должен обучаться через непосредственное взаимодействие со средой.
🤖 Введение в Reinforcement Learning: от теории к жизни 10:59
Обучение с подкреплением можно рассматривать как расширение марковских процессов принятия решений (MDP), где агенту не предоставлена модель мира . В стандартном MDP (например, задача о «ненадежном трамвае») мы знаем все параметры: вероятность того, что трамвай сломается, и точную стоимость (отрицательную награду) каждого шага . В RL агент начинает с полного отсутствия знаний о среде.
По мнению лектора, RL — это метафора реальной жизни . В реальности мы не знаем точных вероятностей успеха своих действий; нам приходится пробовать, ошибаться и «подкреплять» те действия, которые привели к положительному результату.
Ключевые компоненты цикла RL:
- Агент (Agent): принимает решение и совершает действие.
- Среда (Environment): возвращает агенту наблюдения (состояния) и награды.
- Действие (Action): шаг, совершаемый агентом .
- Награда (Reward): численный показатель успеха или стоимости действия .
🏗️ Модельный подход: Model-Based Value Iteration 25:06
Самый интуитивно понятный способ решить задачу RL, если вы уже знакомы с MDP — это попытаться восстановить (выучить) модель мира. Этот подход называется Model-Based Value Iteration .
Процесс разделен на три фазы:
- Исследование (Exploration): агент совершает случайные или полуслучайные действия, чтобы собрать данные о переходах между состояниями и получаемых наградах .
- Оценка модели: на основе собранной статистики (счетчиков переходов) агент строит свою внутреннюю «примерную» MDP. Например, если из состояния «1» действие «трамвай» 6 раз привело в состояние «2» и 4 раза оставило в «1», агент оценивает вероятность успеха в 0.6 .
- Планирование (Exploitation): имея расчетную модель, агент запускает алгоритм итерации ценности (Value Iteration) и вычисляет оптимальную стратегию так, будто эта модель истинна .
Главный риск этого метода заключается в том, что если фаза исследования была недостаточной, внутренняя модель агента будет неверной, что приведет к ошибочной стратегии .
📉 Безмодельные методы: Monte Carlo и Q-learning 45:34
Более прямой путь — обучение без построения модели (Model-Free). Вместо того чтобы пытаться понять, как устроен мир, агент сразу пытается оценить выгоду от конкретных действий в конкретных состояниях — так называемые Q-значения (Q-values) .
Model-Free Monte Carlo 47:35
Этот алгоритм основан на усреднении результатов полных «заездов» (rollouts). Агент проходит путь от начала до конца, суммирует все награды (утилитарность) и обновляет оценку Q-значения для каждой пары «состояние-действие» в этом пути .
Основная проблема метода: агент должен дождаться конца эпизода, чтобы сделать выводы. Лектор приводит аналогию: «Вам придется дожить до 100 лет, оглянуться назад на всю свою жизнь и только тогда понять Q-значения каждой ошибки молодости — но будет уже поздно» .
Эпсилон-жадный алгоритм (Epsilon-greedy) 50:35
Чтобы сбалансировать поиск нового и использование известного, применяется параметр $\epsilon$ (эпсилон):
- С вероятностью $\epsilon$ агент выбирает случайное действие (исследование).
- С вероятностью $1 - \epsilon$ агент выбирает лучшее из известных действий (эксплуатация).
⚡ Бутстрэппинг: Алгоритмы SARSA и Q-Learning 1:06:35
Чтобы обучаться «на лету», не дожидаясь конца игры, используются методы временных различий (Temporal Difference) и бутстрэппинг — обновление текущей оценки на основе другой оценки .
SARSA (State-Action-Reward-State-Action) Это On-policy алгоритм. Он обновляет Q-значения текущей стратегии, учитывая то действие, которое агент реально планирует совершить следующим. Из-за этого он более «осторожен».
Q-Learning Это Off-policy алгоритм. В нем обновление Q-значения происходит исходя из предположения, что в следующем состоянии агент выберет наилучшее возможное действие (максимальное Q), даже если на самом деле он решит пойти случайным путем ради исследования .
Разница между ними тонка, но критична:
- SARSA оценивает то, что агент делает на самом деле (включая его ошибки исследования).
- Q-Learning оценивает идеальную, оптимальную стратегию, «подглядывая» в будущее через функцию
max.
Лекция завершается анонсом следующей темы: как применять эти алгоритмы в гигантских пространствах состояний (например, в компьютерных играх или шахматах), где невозможно сохранить таблицу для каждого отдельного состояния .