Фундаментальный выбор в обучении с подкреплением: обучение с подкреплением или обучение без подкрепления.
Как простой выбор влияет на исследования, безопасность и эффективность
Делиться

Обучение с подкреплением часто осуществляется с помощью длинного списка алгоритмов. SARSA, Q-обучение, PPO, DQN, SAC и т. д. Каждое название, кажется, указывает на разный метод, разный приём или разную математическую формулировку. Но многие из этих алгоритмов построены вокруг гораздо более простого вопроса:
Должен ли агент учиться только на основе поведения, которое он использует в данный момент, или он также может учиться на поведении, сгенерированном каким-либо другим способом?
В этом и заключается главное различие между обучением в рамках политики и обучением вне рамок политики .
Чтобы сделать это различие интуитивно понятным, нам нужно одно базовое определение. В обучении с подкреплением политика — это правило или стратегия, которую агент использует для принятия решения о том, какое действие предпринять в каждой ситуации. Как только эта идея станет ясной, различие станет легче увидеть. Метод, основанный на политике, обучается на той же стратегии, которой агент в данный момент следует. Метод, основанный на отсутствии политики, разделяет эти два подхода. Агент может вести себя в соответствии с одной стратегией, одновременно изучая другую.
Это не просто терминология. Это влияет на некоторые из наиболее важных свойств алгоритма обучения: как он исследует пространство, сколько данных ему требуется, может ли он учиться на старом опыте и насколько стабильным будет обучение. В условиях, когда данные дешевы, это может показаться техническим решением. В условиях, когда сбор данных дорог, занимает много времени или сопряжен с риском, это становится практической необходимостью.
Рассмотрим робота, обучающегося перемещению по оживленному складу. Из соображений безопасности его поведение во время обучения может оставаться консервативным. Метод обучения с использованием стратегии, основанной на текущей политике, напрямую улучшает это консервативное поведение. Метод обучения с использованием стратегии, отличной от текущей политики, обеспечивает большую гибкость, например, робот может продолжать действовать осторожно, одновременно обучаясь на основе накопленного опыта другой стратегии, которая в конечном итоге может оказаться более эффективной. Это разделение между тем, как агент ведет себя, и тем, чему он учится, является ключевой идеей обучения с использованием стратегии, отличной от текущей политики.
Это единственное различие помогает систематизировать значительную часть обучения с подкреплением. Оно объясняет классическое различие между SARSA и Q-обучением и продолжает формировать многие современные методы глубокого обучения с подкреплением. В этой статье мы подробно разберем эту идею, начиная с табличной модели, где каждое обновление прозрачно, а затем используем эту основу для формирования интуитивного понимания более широкой области обучения с подкреплением.
Что вы запомните :
- Методы обучения на основе текущей политики (on-policy learning) обучаются, используя ту же стратегию, которую агент в данный момент применяет для взаимодействия с окружающей средой. Они часто более стабильны и проще для анализа, но обычно не могут в полной мере использовать старые данные. SARSA — это стандартный табличный пример обучения на основе текущей политики .
- Внеполитические методы обучаются целевой стратегии, используя данные, собранные в ходе выполнения другой поведенческой стратегии. Это делает их более эффективными с точки зрения использования данных и позволяет им обучаться на основе буферов воспроизведения, зарегистрированных данных или опыта другого агента, но обучение может быть менее стабильным. Q-обучение — это стандартный табличный пример обучения вне политики .
- Ожидаемый показатель SARSA занимает промежуточное положение, основываясь на прогнозируемых последующих действиях; он часто уменьшает вариативность и может использоваться как в условиях соответствия политике, так и вне ее.
- Это различие влияет на некоторые из наиболее важных свойств системы обучения с подкреплением, включая исследование , эффективность использования выборок , стабильность и безопасность в процессе обучения .
- Табличные методы — это не просто исторические этапы, они предоставляют наиболее наглядный способ сформировать интуитивное понимание тех же идей, которые вновь появляются в современном глубоком обучении с подкреплением.
Чтобы уточнить это различие, нам нужно отступить назад и задать более фундаментальный вопрос: чему на самом деле пытается научиться агент, работающий с подкреплением? Прежде чем сравнивать такие алгоритмы, как SARSA и Q-обучение, полезно понять, какой объект они обновляют. В большинстве табличных методов обучения с подкреплением агент не изучает действия напрямую; он изучает оценки того, насколько хороши различные действия в разных ситуациях. Как только эта идея станет ясна, разница между обучением по стратегии и обучением вне стратегии станет гораздо более очевидной.
1. Что пытается узнать агент?
Представьте себе агента, блуждающего по миру. На каждом шаге он находится в некотором состоянии s , выбирает действие a , получает вознаграждение r и попадает в новое состояние s' . Его цель: максимизировать общее вознаграждение, которое он получает за определенный период времени.
Но для этого агенту необходим способ оценки своих решений. Он должен ответить на такие вопросы, как:
- Целесообразно ли предпринимать действия (а) в штате (штатах)?
- Приведёт ли такой выбор к лучшим результатам в будущем?
- Насколько ответ зависит от дальнейших действий агента?
Центральным понятием в обучении с подкреплением является функция ценности действия , обычно обозначаемая как (Q(s, a)). Проще говоря, эта функция измеряет, насколько выгодно совершить действие (a) в состоянии (s), учитывая не только непосредственное вознаграждение, но и будущие вознаграждения, которые могут последовать.
Точнее, при политике π функция ценности действия определяется как ожидаемая доходность, когда мы начинаем в состоянии s, выполняем действие a, а затем постоянно следуем политике π:

где (Gt) — общая дисконтированная доходность за временной шаг (t):

Объединив эти данные, мы можем явно записать функцию ценности действия следующим образом:

На первый взгляд, эта система обозначений может показаться сложной, но интуитивно она проста:
Если я сейчас совершу действие (а) в состоянии (s), а затем продолжу следовать политике ( π ) , какое общее вознаграждение я могу ожидать?
Ценность действия зависит не только от того, что происходит непосредственно после его совершения. Она также зависит от того, что агент делает впоследствии. Одно и то же действие может иметь разную ценность при разных будущих стратегиях. Именно поэтому функция ценности действия всегда определяется относительно политики. И именно здесь начинается различие между политикой и ее отклонением.
Нам необходимо запомнить два важных термина:
- Целевая политика ( π ): политика, которую агент пытается оценить или улучшить.
- Поведенческая политика ( б ): политика, которая фактически порождает опыт.
Исходя из этих определений, мы можем четко обозначить различие:
- При обучении на основе политики агент изучает ту же самую политику, которую он использует для действий. Это означает, что целевая политика и политика поведения совпадают: ( π = b).
- При обучении вне политики агент изучает одну политику, следуя при этом другой. В этом случае целевая политика и политика поведения различаются: (pi neq b).
На первый взгляд, это может показаться незначительной разницей в формулировках, но она имеет серьезные последствия.
При использовании метода, основанного на стратегии управления , агент улучшает стратегию, которую он фактически использует в окружающей среде. При использовании метода, основанного на стратегии управления вне политики , агент может вести себя одним образом, например, осторожно или случайным образом для исследования, одновременно изучая другую стратегию в фоновом режиме. Именно это разделение позволяет методам, основанным на стратегии управления вне политики, повторно использовать старые данные, учиться на основе исследовательских действий и даже извлекать пользу из опыта, накопленного другим агентом.
Простая аналогия поможет. Представьте, что вы учитесь играть в шахматы. Подход, основанный на анализе правил, — это как совершенствование путем анализа конкретных ходов, которые вы делаете во время партий. Подход, не основанный на анализе правил, — это как игра в одном стиле на тренировках, одновременно изучая последствия более сильных ходов, опираясь на записи партий или примеры экспертов. В обоих случаях вы учитесь, но связь между вашими действиями и тем, чему вы учитесь, различна. Именно эта связь является ключевой идеей данной статьи.
В следующем разделе мы конкретизируем это различие, рассмотрев, как на практике обновляются оценки значений. Именно здесь контраст между SARSA и Q-обучением становится особенно показательным.
2. Обучение с использованием временной разницы: с чего на самом деле начинается история.
Прежде чем сравнивать SARSA и Q-обучение , необходимо понять, на какой идее они основаны, а именно, на обучении с временной разностью (TD-обучение) .
Если различие между текущим и нетекущим режимом управления указывает на тип взаимосвязи между режимами, используемыми алгоритмом, то обучение с подкреплением (TD learning) показывает , как агент обновляет свои знания, полученные из опыта . В этом смысле обучение с подкреплением является общей основой многих важнейших методов обучения с подкреплением.
Исторически сложилось так, что обучение с использованием технологий временной детерминации находится между двумя более старыми идеями:
- Методы Монте-Карло обучаются на основе полных эпизодов. Они используют реальные результаты из опыта, но могут обновляться только после завершения эпизода.
- Динамическое программирование — это метод обновления оценок путем бутстрапинга на основе других оценок. Он может быть очень эффективным, но предполагает наличие полной модели окружающей среды.
Метод динамического обучения (TD learning) сочетает в себе лучшие стороны обоих подходов. Подобно методам Монте-Карло, он обучается непосредственно на основе опыта и не требует модели окружающей среды. Подобно динамическому программированию, он обновляет оценки, используя другие оценки, а не дожидаясь самого конца эпизода.
Именно это сочетание делает обучение по методу TD таким эффективным.
Предположим, агент пытается оценить значение состояния ( V(s) ). После перехода из состояния ( St ) в ( St+1 ) и получения вознаграждения ( Rt+1 ) одношаговое обновление TD выглядит следующим образом:
V(St) ← V(St) + α [Rt+1 + γV(St+1) − V(St)]
На первый взгляд это может показаться просто еще одним уравнением, но логика проста. Агент начинает с текущей оценки (V(S_t)), а затем корректирует эту оценку в сторону более точной цели:
Цель = Rt+1 + γV(St+1)
Эта цель гласит: возьмите полученное вами немедленное вознаграждение, затем добавьте дисконтированную оценку того, что последует дальше. Количество в скобках,
δt = Rt+1 + γV(St+1) − V(St)
Это называется ошибкой TD . Ошибку TD можно рассматривать как меру неожиданности :
- Если значение близко к нулю, значит, предсказание агента было приблизительно верным.
- Если результат положительный, значит, всё прошло лучше, чем ожидалось.
- Если результат отрицательный, значит, всё обернулось хуже, чем ожидалось.
Таким образом, обновление TD — это вполне естественная идея: прогнозировать, наблюдать, сравнивать и корректировать.
Здесь также вступает в игру идея бутстреппинга . В обучении с временным разрешением агент обновляет оценку, используя другую оценку. Вместо того чтобы ждать полной будущей доходности, он использует свою текущую оценку следующего состояния в качестве части целевой функции. Это делает обучение быстрее и более инкрементальным, что является одной из причин, почему методы временного разрешения играют столь важную роль в обучении с подкреплением.
Однако бутстреппинг имеет важное следствие: важно, какую именно оценку мы будем использовать в качестве основы для бутстреппинга .
Именно здесь в алгоритмической форме начинает проявляться различие между соответствующими и не соответствующими политике условиями.
И SARSA , и Q-обучение — это методы управления с временной зависимостью (TD-контроль) . Они используют обновления в стиле TD для изучения значений действий и улучшения поведения с течением времени. Ключевое различие между ними заключается в целевой переменной, от которой они отталкиваются при начальной загрузке:
- SARSA обновляет информацию, используя действие, которое агент фактически совершит далее.
- Обновления Q-обучения основаны на том действии, которое, согласно текущим оценкам, выглядит наилучшим образом.
Этого единственного изменения достаточно, чтобы один метод соответствовал установленным правилам , а другой — нет .
В следующем разделе мы подробно рассмотрим, как это сделать.
3. SARSA: Понимание последствий собственного выбора
SARSA — это классический алгоритм управления TD , работающий в соответствии с политикой . Его название происходит от используемого им кортежа:
( Состояние, Действие , Вознаграждение , следующее состояние , следующее действие )
Вот правило обновления:
Q(St,At) ← Q(St,At) + α[Rt+1+γ Q(St+1,At+1)−Q(St,At)]
Q(St+1, At+1) — это значение действия, которое агент фактически совершил на следующем шаге. Это не лучшее действие, не среднее значение, а лишь то действие, которое он действительно собирается совершить.
Это может показаться не таким уж важным, но на самом деле всё меняется. Если агент использует ε-жадную стратегию (в основном жадную, иногда случайную), то SARSA изучает ценность этой ε-жадной стратегии со всеми её недостатками. Агент учитывает свои собственные несовершенства.
Фрагмент кода (концептуальный):
# SARSA update next_action = policy(Q, next_state) td_target = reward + gamma * Q[next_state, next_action] td_error = td_target - Q[state, action] Q[state, action] += alpha * td_error
После обновления Q агент просто заново выводит свою ε-жадную политику из новых значений Q. Если политика в конечном итоге проходит все пары состояние-действие, и ε стремится к нулю, SARSA сходится к оптимальной политике. Но в процессе обучения он изучает собственное (несовершенное) поведение.
Прогулка по скале
Лучший способ увидеть это в действии — прогулка по скалам . Представьте себе сетку:

Начало в точке S , цель в точке G. Каждый шаг стоит −1. Если мы наступим на обрыв, получим −100 и вернемся в точку S.
У нас есть две очевидные стратегии:
- Безопасный путь – подняться вверх и обойти скалу, подальше от обрыва.
- Тропа, пролегающая вдоль обрыва – просто идите вдоль нижнего ряда прямо к финишу.
SARSA осваивает безопасный путь.
Почему? Потому что система знает, что иногда приходится действовать наугад. Если идти прямо по краю обрыва, то иногда можно споткнуться и упасть. Оценки стоимости, проводимые SARSA, отражают этот риск. Поэтому система предпочитает внутренний маршрут.
Если наш агент действительно иногда совершает ошибки, то выбор безопасного пути — это разумное решение. В классическом эксперименте «Хождение по обрыву» ε остается постоянным на уровне 0,1, поэтому SARSA никогда не становится полностью жадной; именно поэтому ее обученная стратегия остается безопасной. При уменьшении ε SARSA в конечном итоге сошлась бы на оптимальном пути, но по пути понесла бы гораздо больше потерь.
4. Q-обучение: представляя себе идеальное будущее
Q-обучение меняет правила игры. Вот его обновленная версия:

Вместо использования значения следующего действия, он использует максимум среди всех возможных следующих действий. Это и есть действие, выходящее за рамки политики. Агент может действовать ε-жадно, но его обновления ведут себя так, как если бы он действовал оптимально, начиная со следующего шага.
Фрагмент кода (концептуальный):
# Q-learning update td_target = reward + gamma * np.max(Q[next_state, :]) td_error = td_target - Q[state, action] Q[state, action] += alpha * td_error
Q-обучение при ходьбе по скалам
Снова к обрыву. Q-обучение изучает путь, пролегающий вдоль обрыва.
Она представляет себе будущее, в котором действует идеально — без случайных спотыканий. В этом идеальном мире ходить рядом с обрывом вполне допустимо, потому что идеальный агент никогда не падает. Оператор максимума предполагает оптимальное поведение на каждом будущем шаге, поэтому риск исследования просто исчезает из его оценок.
Что это означает на практике? Во время обучения Q-обучение часто показывает худшие результаты в онлайн-режиме, чем SARSA. Оно опасно приближается к краю пропасти и иногда падает, накапливая большие штрафы. SARSA, действуя осторожно, получает более высокое совокупное вознаграждение во время обучения.
Но после обучения, когда мы отключаем исследование, Q-обучение выбирает оптимальный короткий путь. SARSA же придерживается более длинного и безопасного маршрута.
Это классический компромисс: лучший конечный результат против лучшего результата в процессе обучения.
5. Ожидаемый результат SARSA: лучшее из двух миров?
Существует третий алгоритм, занимающий промежуточное положение между SARSA и Q-обучением: Expected SARSA . Он использует ожидание по всем следующим действиям вместо одного образца или максимума:

Эта сумма представляет собой взвешенное среднее всех возможных последующих действий, где весами являются вероятности, полученные в результате текущей политики.
Почему это круто?
- Отсутствует отклонение от выборки действий. Обновления SARSA происходят скачкообразно, потому что следующее действие является случайным. Ожидаемое значение SARSA усредняется по всем возможным вариантам, что обеспечивает гораздо более плавные обновления.
- Это может быть политика, соответствующая или не соответствующая стратегии. Если целевая стратегия π совпадает со стратегией поведения, то это политика, соответствующая стратегии. Если π — жадная стратегия, а поведение — исследовательское, то это политика, не соответствующая стратегии.
- Это включает Q-обучение как частный случай. Когда ππ является жадным алгоритмом, сумма сводится к maxaQ(St+1, a).
В экспериментах по обходу препятствий метод Expected SARSA обычно превосходит как SARSA, так и Q-обучение в широком диапазоне размеров шага. Недостаток? Для вычисления этой суммы требуется итерация по всем действиям — это хорошо для небольших сеток, но дорого, когда у нас большие или непрерывные пространства действий. Именно поэтому Q-обучение (и его глубокая версия DQN) остается более популярным на практике.
6. Скрытая ловушка: смещение максимизации в Q-обучении
Q-обучение имеет коварный недостаток: смещение максимизации . Поскольку оно использует maxaQ(St+1,a), а эти значения Q являются лишь зашумленными оценками, максимум, как правило, оказывается завышенным.
Представьте, что все истинные значения действий равны 0, но наши оценки содержат некоторый случайный шум. Максимум этих зашумленных оценок обычно будет положительным. Затем Q-обучение начинает с этого положительного завышения оценки, делая его еще больше. Со временем агент становится чрезмерно самоуверенным.
Решение, описанное в учебнике, — это двойное Q-обучение . Используйте две независимые Q-функции, Q1 и Q2. Пусть одна выбирает наилучшее действие, а другая его оценивает:

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

Разделение выбора и оценки устраняет положительное смещение. Эта идея позже привела к созданию Double DQN , ключевого улучшения по сравнению с оригинальной Deep Q-Network.
7. Взгляд с n-шаговой моделью: спектр, а не бинарная категория.
Одна из самых впечатляющих идей в учебнике заключается в том, что одношаговый TD и метод Монте-Карло — это всего лишь два полюса спектра, соединенные n-шаговыми возвратами .
Целевой показатель TD за n шагов выглядит следующим образом:

- n=1 дает нам стандартную одношаговую целевую функцию TD (используемую алгоритмами SARSA и Q-обучения).
- n=∞ дает нам полную доходность метода Монте-Карло без использования бутстреппинга.
Большее значение n означает большую зависимость от реальных вознаграждений (меньшее смещение), но также и большую дисперсию. Меньшее значение n означает большую зависимость от текущих оценок (большее смещение), но меньшую дисперсию и более быстрое распространение.
Здесь различие между режимами «включено» и «выключено» становится еще более существенным. Для n-шагового метода SARSA действия в траектории должны соответствовать изучаемой нами стратегии. Для n-шаговых методов, работающих вне стратегии, нам необходима выборка по значимости для коррекции несовпадающих распределений. Это сложная тема, но она показывает, что выбор между режимами «включено» и «выключено» — это не просто переключение; он проявляется на всех временных горизонтах.
8. Итак, когда и что следует использовать?
Давайте перейдем к практике. Как мы делаем выбор, когда создаем реальную систему?
Пример эффективности и воспроизведения опыта
Главное преимущество методов, работающих вне политики, заключается в повторном использовании старых данных . Поскольку их обновления не предполагают, что данные получены из текущей политики, мы можем хранить каждый переход в буфере воспроизведения и считывать его тысячи раз. Именно поэтому DQN работает так хорошо — он учится на миллионах прошлых случаев. Методы, работающие в рамках политики, такие как PPO, должны собирать новые данные после каждого обновления, что гораздо менее эффективно с точки зрения использования выборки.
Онлайн-эффективность в процессе обучения
Если мы внедряем агента, который должен хорошо работать с первого дня, нам, вероятно, понадобится метод, основанный на политике. SARSA (или PPO) будет более осторожным и стабильным в процессе обучения. Методы, основанные на отсутствии политики, могут слишком агрессивно исследовать пространство и привести к реальным проблемам.
Безопасность и чувствительность к рискам
Это очень важный момент. SARSA естественным образом повышает осведомленность о рисках, поскольку учится на собственном несовершенстве в выполнении задач. Если мы знаем, что наш агент будет время от времени совершать ошибки, SARSA будет избегать состояний, в которых ошибка будет катастрофической. Q-обучение предполагает идеальное выполнение задач в будущем, поэтому оно может быть опасно самоуверенным.
Смертельная триада (Почему глубокое обучение с подкреплением иногда терпит неудачу)
Когда мы объединяем аппроксимацию функций (например, нейронную сеть) + бутстреппинг + обучение вне политики , мы получаем то, что известно как смертельная триада . Эта комбинация может привести к расходимости или нестабильности, если ею не управлять должным образом.
9. Шпаргалка: SARSA против Q-обучения против ожидаемого SARSA
| Свойство | САРСА | Q-обучение | Зависит от варианта. |
| Политическая парадигма | О политике | Вне политики | Или |
| Целевая платформа Bootstrap | Выбрано следующее действие | Максимальное следующее действие | Ожидаемое следующее действие |
| Онлайн-выступления | Лучше | Худший | Лучше |
| Асимптотическое качество политики | Субоптимальный (при фиксированном ε) | Оптимальный | Оптимальный |
| Обновление дисперсии | Выше | Середина | Самый низкий |
| Вычислительная стоимость | Низкий | Низкий | Середина |
| Опыт повторного использования | Нет | Да | Да (вариант, не соответствующий правилам) |
| Смещение максимизации | Нет | Да | Нет |
| Смертельно опасная триада | Низкий | Выше | Зависит от варианта |
10. Связь глубокого обучения
Всё это не просто теоретические рассуждения. Каждый современный алгоритм глубокого обучения с подкреплением наследует суть этих табличных методов:
- DQN : Q-обучение с использованием нейронной сети, буфера воспроизведения и целевой сети. Полностью внеполитическое обучение.
- Double DQN : Q-обучение с исправлением Double Q-обучения.
- PPO : Соответствует политике, стабилен, каждый раз использует новые данные.
- SAC : Актор-критик, действующий вне политики, с бонусом к энтропии, использует буфер воспроизведения для повышения эффективности использования выборки.
- Воспроизведение опыта : возможно только благодаря обучению вне установленных правил.
Каждый из этих алгоритмов — это лишь частный ответ на один и тот же фундаментальный вопрос.
11. Итак, какую философию вы выберете?
Универсального правильного ответа не существует. Все зависит от того, что вы строите.
Примените данную политику, если:
- Безопасность имеет значение (во время обучения нежелательно рискованное поведение).
- Хорошая производительность необходима с самого начала.
- Вы можете позволить себе собирать свежие данные после каждого обновления.
- Вы обеспокоены стабильностью (смертельной триадой).
Отклониться от условий полиса, если:
- Эффективность использования выборок имеет решающее значение (например, в робототехнике, дорогостоящих симуляциях).
- У вас есть буфер воспроизведения или предварительно собранные данные.
- Для вас главное — конечный результат, и вы можете смириться с некоторыми сложностями в процессе обучения.
- Вы работаете в режиме симуляции, где количество шагов невелико.
Учитывайте ожидаемый уровень SARSA, если:
- Вам нужны обновления с меньшей дисперсией.
- Возможно, вам потребуется переключаться между режимами «включено» и «выключено» политики.
- Ваше пространство действий достаточно мало, чтобы вычислить ожидания.
На практике многие современные системы сочетают в себе оба подхода: критик, не зависящий от политики, для эффективного обучения, и субъект, зависящий от политики, для стабильного улучшения. Но понимание компромиссов на табличном уровне дает возможность делать этот выбор обдуманно.
Примеры из Gridworld — это не вспомогательные средства, а фундамент. Усвоив их, вы сможете взглянуть на любой алгоритм обучения с подкреплением и сразу понять, где он находится на спектре «включено/выключено» и почему он работает именно так.
Ссылки
- Саттон, Р.С., и Барто, А.Г. (2018). Обучение с подкреплением: Введение (2-е изд.). Издательство MIT Press. Доступно на incompleteideas.net
Если вам это показалось интересным, то следующие статьи этой серии, посвященные n-шаговым методам и отслеживанию соответствия критериям, станут еще более понятными с точки зрения различия между политикой и ее отсутствием, а связи с современными алгоритмами углубятся еще больше.
Ананйя Бхаттачарья. Все работы Ананйи Бхаттачарьи.
Источник: towardsdatascience.com

Добавить комментарий
Для отправки комментария вам необходимо авторизоваться.