Обучение с подкреплением и выравнивание
Temporal difference и Q-learning
Учиться, не зная модели и не дожидаясь конца эпизода
Снять требование модели
Динамическое программирование упиралось в . Заменим математическое ожидание выборкой: агент сделал шаг, увидел награду и следующее состояние — этого достаточно.
Две вещи здесь новы. Первая:
Сравним с двумя соседями:
| метод | цель | нужна модель | ждать конца эпизода |
|---|---|---|---|
| динамическое программирование | да | нет | |
| Монте-Карло | наблюдённый целиком | нет | да |
| TD(0) | нет | нет |
TD берёт лучшее из двух столбцов: выборку вместо ожидания у Монте-Карло, бутстрэппинг вместо полного возврата у динамического программирования.
Почему TD обычно лучше Монте-Карло
Ожидание такое: цель TD смещена (использует несовершенную оценку ), зато у неё намного меньше дисперсия — она зависит от одного случайного перехода, а не от всей траектории. Монте-Карло несмещён, но собирает шум всего эпизода.
Проверим на классическом случайном блуждании из пяти состояний, где истинные значения известны точно и равны . Пятьдесят прогонов, :
| метод | средняя RMS-ошибка после 100 эпизодов | после 1000 |
|---|---|---|
| TD(0) | ||
| Монте-Карло |
TD втрое точнее, и разрыв не сокращается с числом эпизодов — при постоянном обе оценки выходят на плато, определяемое дисперсией цели. Смещение TD при этом на результат почти не влияет: оно исчезает по мере того, как становится точнее, а дисперсия — не исчезает никогда.
Полезная формулировка: TD меняет несмещённость на дисперсию, и обмен обычно выгоден. Урок 080 покажет, что между этими двумя крайностями есть непрерывное семейство.
Q-learning
Чтобы выбирать действия без модели, нужна , а не (урок 020). Правило то же, с максимумом внутри:
Максимум делает алгоритм off-policy: цель говорит о жадной политике, а данные собираются какой угодно — например -жадной. Это разделение полезно: можно исследовать среду случайно и при этом выучивать оптимальную политику.
Сравните с SARSA, где вместо максимума стоит фактически выбранное действие:
| Q-learning | SARSA | |
|---|---|---|
| цель | по жадному действию | по фактическому |
| что выучивает | оптимальную политику | ценность своей политики |
| поведение у обрыва | идёт по краю | обходит с запасом |
Третья строка — знаменитый пример «cliff walking», и он не курьёз. Если поведение остаётся -жадным, SARSA учитывает, что иногда сорвётся, и держится подальше; Q-learning выучивает путь, оптимальный для агента, который никогда не ошибается. Какой ответ правильный, зависит от того, будет ли исследование выключено при использовании.
терминал стена
- горизонт 1/(1−γ)
- 10
- значение старта
- 0.344
- изменение за проход
- 0.0e+0
- проходов до сходимости
- 7
Точное решение. Именно к нему сходится табличный Q-learning при бесконечном исследовании и убывающем шаге.
Условия сходимости
Табличный Q-learning сходится к при двух условиях:
- каждая пара посещается бесконечно часто;
- шаги удовлетворяют условиям Роббинса–Монро: , .
Второе условие — то же самое, что в стохастической аппроксимации (блок 5, урок 060): шаги должны убывать, но не слишком быстро. Например подходит, — нет (сумма конечна, и алгоритм остановится, не дойдя).
Первое условие практически недостижимо и в этом вся трудность применения: чтобы гарантированно выучить, нужно бесконечно исследовать; чтобы получать награду, нужно использовать выученное. Компромисс называют exploration–exploitation, и универсального решения у него нет — -жадность, оптимистичная инициализация, UCB и энтропийные бонусы (урок 120) решают его по-разному.
Итог
- TD заменяет ожидание выборкой и полный возврат — бутстрэппингом.
- Обмен «смещение против дисперсии» обычно выгоден: втрое меньшая ошибка на классическом тесте.
- Q-learning off-policy благодаря максимуму в цели; SARSA on-policy и потому осторожнее.
- Сходимость требует бесконечного исследования и убывающих по Роббинсу–Монро шагов.
- Первое условие недостижимо, и отсюда вся проблематика исследования.
Источники
- Sutton, Barto — Reinforcement Learning, An Introduction — Главы 6 и 7, TD, SARSA, Q-learning и пример со случайным блужданием
- Watkins, Dayan — Q-learning — Доказательство сходимости
Проверки
0 из 2Бутстрэппинг и выбор цели
Отметьте все верные утверждения о TD-обучении.
Один шаг Q-learning и SARSA
Реализуйте
td_step(q_sa, reward, q_next, gamma, alpha), гдеq_next— список ценностей действий в следующем состоянии, а фактически выбранным там оказалось действие с индексом нуль. Верните[q_target, td_error, updated_q, off_policy_gap]:q_target= — цель Q-learning;td_error= ;updated_q= ;off_policy_gap— разность между ошибкой Q-learning и ошибкой SARSA, где цель второй равна , то есть используетq_next[0].
Последнее число измеряет, насколько цель по жадному действию расходится с целью по фактическому. Оно равно нулю ровно тогда, когда выбранное действие и было жадным.
Загрузка редактора…
Ctrl/⌘ + Enter