Примечания по обучению с подкреплением

Мои заметки к вводной лекции профессора Дэвида Сильвера по обучению с подкреплением

Почему заметки о лекциях по обучению с подкреплением?

Идея этих примечаний к удивительным лекциям DeepMind по обучению с подкреплением, которые преподает Дэвид Сильвер (один из моих любимых исследователей ИИ :)), состоит в том, чтобы поэкспериментировать с другим способом написания учебных тем, в которых я хочу поделиться своими мыслями по теме, изучайте это в письменной форме и, надеюсь, помогите читателям, в равной степени заинтересованным в изучении этой темы, предоставив систематизированные заметки по важной теме, написанные в сочетании с надежным источником. А теперь перейдем к заметкам!

Базовый обзор обучения с подкреплением

Фундаментальная идея обучения с подкреплением (RL) - это обучение через опыт путем взаимодействия с окружающей средой.

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

Основной цикл, который мы наблюдаем:
- на каждом шаге t агент:
- выполняет действие Aₜ
- получает наблюдение Oₜ
- получает скалярное вознаграждение Rₜ
- Окружение:
- получает действие Aₜ
- Выдает наблюдение Oₜ₊₁
- Выдает скалярное вознаграждение Rₜ₊₁
- t увеличивает шаг.

Я понял здесь под наблюдением некоторое представление агента об окружающей среде.

История событий характеризуется следующим образом: H = A₁O₁R₁A₂O₂R₂….
и состояние понимается как некоторая функция этой истории событий,
S = f ( ЧАС). Если мы предполагаем полную наблюдаемость, где агент непосредственно наблюдает за состоянием среды, тогда Sᵃₜ = Sᵉₜ = Oₜ. Это означает, что представление среды агентом совпадает с состоянием среды.

Для таких случаев у нас есть процесс принятия марковского решения. С другой стороны, есть частичная наблюдаемость, где агент должен построить представление состояния окружающей среды (потому что он не может полностью это наблюдать!).

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

  • Наивный: предполагается, что агент может наблюдать всю историю событий: Hₜ = Sᵉₜ, поэтому в этом случае состояние среды соответствует истории событий.
  • Убеждение: здесь агент считает, что мир может находиться в заданном состоянии: Sᵉₜ = P (Sᵉₜ = s)
  • RNN: здесь применяется нелинейность к линейному преобразованию состояний и наблюдению с помощью некоторых весов для состояний и весов для наблюдений: δ (Sᵃₜ ₋₁Wₛ + OₜWₒ)

Большинство лекций этой серии предполагают полную наблюдаемость.

Основные компоненты RL

Три основных компонента обучения с подкреплением:

  • Политика: рассказывает нам, как действовать.
  • Функция значения: сообщает нам, насколько хорошо или плохо быть в данном состоянии.
  • Модель: (необязательно) описывает способ прогнозирования динамики окружающей среды.

Политика

Политика - это то, что описывает поведение агента, это карта от состояния к действию. Он может быть детерминированным, где каждое состояние отображается на заданное действие: a = π (s). Здесь действие является результатом применения функции политики к состоянию, в котором мы находимся. Политики также могут быть стохастическими, и в этом случае политика больше не является функцией, а является распределением действия при заданных состояниях: π (a | s) = P (Aₜ = a | Sₜ = s).

Функция значения

Функция ценности используется для оценки качества состояний. Это соответствует ожиданиям будущих вознаграждений с учетом этого конкретного состояния. Жизненно важно, чтобы мы могли выбрать лучшее действие, которое принесет наибольшее вознаграждение, и его можно определить как: v (s) = E [Rₜ₊₁ + λ Rₜ₊₂ + λ² Rₜ₊₃… | Sₜ = s ].

Здесь коэффициент λ - это коэффициент скидки, и это скалярное значение от 0 до 1, где значения близки значение 0 означает, что агент будет больше заботиться о недавних вознаграждениях, а значения, близкие к 1, означают, что агент меньше заботится о том, когда произойдет вознаграждение.

Модель

Модель предсказывает динамику окружающей среды, поэтому она должна предсказывать два значения:
- вероятность P перехода в заданное состояние < br /> - следующая немедленная награда R

Pᵃₛₖ = P(Sₜ₊₁=k | Sₜ=s, Aₜ=a)

Rᵃₛ = E[Rₜ₊₁ | Sₜ=s, Aₜ=a]

Пример лабиринта

В своей первой лекции Сильвер приводит пример лабиринта, в котором есть начальная и конечная точки. В рамках обучения с подкреплением компоненты будут следующими:

Политика

Здесь стрелки указывают, какие действия может выполнять агент, что в данном случае означает: Вверх, Вниз, Вправо или Влево.

Функция значения

Функция ценности количественно определяет, насколько хорошо находиться в состоянии лабиринта, и основывается на том, как далеко это состояние находится от конечной точки.

Модель

Чтобы предсказать динамику окружающей среды, мы должны знать, сколько награды мы получаем от каждого состояния, а также то, как действия меняют состояние. Размещение наград отражает динамику окружающей среды.

Примечание о функции ценности и вознаграждении

вознаграждение указывает насколько хорошо быть в этом состоянии в данный конкретный момент, value function сообщает вам в целом, насколько хорошо быть в каждом соответствующем состоянии. Функция ценности учит вас, чего ожидать от состояния в долгосрочной перспективе.

Категоризация агентов обучения с подкреплением

Существует три основных компонента и, следовательно, три основных типа агентов RL: на основе политик, на основе значений и на основе модели. На пересечении трех находится актер-критик.

Последовательное принятие решений. Предпосылки обучения с подкреплением.

Последовательное принятие решений имеет две фундаментальные проблемы:

  • Проблема с RL

Улучшение политики через взаимодействие с неизвестной средой.

  • Проблема планирования

Улучшение политики посредством вычислений, выполняемых с моделью среды.

Проблемы в RL

Обучение с подкреплением решает две фундаментальные проблемы:

  • Исследование | Эксплуатация

Сколько нужно исследовать окружающую среду и сколько использовать известные полезные состояния?

  • Прогноз | Контроль

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

Заключительные мысли о RL

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

В задаче лабиринта интуитивно понятно, что если вы разместите -1 награду во всех местах, кроме финишной черты, вы создадите стимул для модели найти выход как можно быстрее, но есть проблемы, в которых вы этого не сделаете. иметь целостное представление о цели и ее состояниях, и становится трудно понять, как лучше всего структурировать награды.

Например, есть проблемы оптимизации, такие как управление запасами, когда у вас сложное взаимодействие различных систем в цепочке поставок и потенциально конфликтующие цели, поэтому в этом случае разместить вознаграждения, чтобы система могла эффективно учиться, намного сложнее, и, следовательно, проектирование проблема как проблема обучения с подкреплением - это вызов.

Мета-заключение об этом «стиле заметок» письма

Мне нравится такой способ написания, когда написание здесь на Medium становится продолжением моего учебного процесса. Я думаю, что это поучительно для меня с точки зрения того, кто углубляет понимание по теме, и полезно для читателя, который хочет узнать о теме А, сопровождая несколько простых для понимания заметок вместе с лекцией из надежного источника.

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

Если вы хотите углубиться в обучение с подкреплением, ознакомьтесь с этим курсом:

Это партнерская ссылка, если вы воспользуетесь курсом, я получаю небольшую комиссию, ура! :)

Если вам понравился этот пост, свяжитесь со мной в Twitter, LinkedIn и подпишитесь на меня здесь, в Medium. Спасибо и увидимся в следующий раз! :)

использованная литература