2022/10/17
Сегодня я изучал RL, изучая лекцию DeepMind.
Исследование и эксплуатация
Агентам обучения необходимо найти компромисс между двумя вещами.
- Эксплуатация — максимальное повышение производительности на основе текущих знаний.
- Исследование — расширение знаний.
Многорукий бандит
Многорукий бандит представляет собой набор раздачи
A известен как набор действий или «рук».
Ra – это распределение вознаграждений за действие a.
Ценность действия для действия a — это ожидаемое вознаграждение.
Оптимальное значение – это максимальное ожидаемое вознаграждение. Что почти всегда неизвестно.
Сожаление о действии — это разница между максимальной ценностью, которую вы могли бы получить, и той, которую вы получили.
По определению, есть действие, о котором сожаление равно 0. Для любого другого действия сожаление положительно.
Цель состоит в том, чтобы свести к минимуму общее сожаление.
Это то же самое, что максимизировать совокупное вознаграждение.
Эта лекция охватывает эти алгоритмы
- Жадный
- Є(эпсилон) Жадный
- UCB
- Томпсон Сэмплинг
- Градиенты политики
В первых трех используются оценки ценности действий.
I() — индикаторная функция: I(True) = 1 и I(False) = 0.
количество для действия a равно
Это также может быть обновлено постепенно
с
где
Алгоритм Грея
Самый простой алгоритм, который выполняет действие с наивысшим значением.
Эквивалентно
предполагая, что ничья невозможна, иначе вероятности не складываются в 1.
Пример
Допустим, есть два возможных действия, а и б. На временном шаге 1 мы выбираем a и получаем 0. На временных шагах 2–4 мы выбираем b и получаем 1, 0 и 0 соответственно. Значение действия на временном шаге 4 для a равно 0/1 = 0, а b равно 1/3 = 0,333…
Но вполне возможно, что фактически оптимальное действие может быть. Но жадный алгоритм выберет только действие b.
Полная эксплуатация и отсутствие разведки
Жадный алгоритм
С вероятностью 1 — Є выбрать жадное действие
С вероятностью Є выбрать случайное действие.
Є жадный алгоритм никогда не прекращает исследования.
Алгоритм градиентов политик
Можем ли мы изучать политику напрямую вместо того, чтобы изучать ценности?
Например, определите настройки действий Ht(a) и политику
Предпочтения не являются значениями, это просто изучаемые параметры политики.
Целью алгоритма градиентов политик является оптимизация предпочтений.
Идея состоит в том, чтобы обновить параметры политики таким образом, чтобы ожидаемое значение увеличилось.
Мы можем использовать градиентное восхождение.
где θt — текущие параметры политики.
Но сначала мы должны изменить термины во что-то, что мы можем сэмплировать.
Градиентные бандиты
So
является стохастическим градиентным восхождением по (истинному) значению полиса.
Для софтмакс
Это много сложной информации, которую нужно принять. Я бы сократил ее на сегодня и пересматривал снова и снова, пока не понял бы все полностью.