Когда выбрать SARSA против Q Learning

19

SARSA и Q Learning - это алгоритмы обучения с подкреплением, которые работают аналогичным образом. Самым поразительным отличием является то, что SARSA придерживается политики, а Q Learning - вне политики. Правила обновления следующие:

Q Обучение:

Q(sT,aT)Q(sT,aT)+α[рT+1+γМаксимумa'Q(sT+1,a')-Q(sT,aT)]

Sarsa:

Q(sT,aT)Q(sT,aT)+α[рT+1+γQ(sT+1,aT+1)-Q(sT,aT)]

где sT,aTрT и r_t - состояние, действие и вознаграждение на временном шаге T а γ - коэффициент дисконтирования.

Они в основном выглядят одинаково, за исключением того, что в SARSA мы выполняем реальные действия, а в Q Learning мы выполняем действия с наивысшей наградой.

Существуют ли теоретические или практические условия, в которых один должен отдавать предпочтение другому? Я вижу, что получение максимума в Q Learning может быть дорогостоящим и тем более в пространствах непрерывных действий. Но есть ли что-нибудь еще?

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

Ответы:

27

Они в основном выглядят одинаково, за исключением того, что в SARSA мы выполняем реальные действия, а в Q Learning мы выполняем действия с наивысшей наградой.

На самом деле в обоих случаях вы «выполняете» фактическое одиночное сгенерированное действие затем. В процессе Q обучения вы обновляете оценку, исходя из максимальной оценки возможных следующих действий, независимо от того, какое действие вы предприняли. Находясь в SARSA, вы обновляете оценки на основе и выполняете те же действия.aT+1

Вероятно, это то, что вы имели в виду под «взять» в вопросе, но в литературе принятие действия означает, что оно становится значением, например, и влияет на , ,aTрT+1sT+1

Существуют ли теоретические или практические условия, в которых один должен отдавать предпочтение другому?

Q-обучение имеет следующие преимущества и недостатки по сравнению с SARSA:

  • Q-learning непосредственно изучает оптимальную политику, в то время как SARSA изучает почти оптимальную политику во время изучения. Если вы хотите изучить оптимальную политику с использованием SARSA, вам нужно будет выбрать стратегию , которая превратит в -greedy action action, который может стать непомерным гиперпараметром для настройки.εε

  • Q-обучение (и обучение вне политики в целом) имеет более высокую дисперсию для каждой выборки, чем SARSA, и может страдать от проблем, сходящихся в результате. Это становится проблемой при обучении нейронных сетей с помощью Q-обучения.

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

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

Если ваша цель состоит в том, чтобы обучить оптимального агента для моделирования или в недорогой и быстро повторяющейся среде, тогда Q-learning является хорошим выбором благодаря первому пункту (изучение оптимальной политики напрямую). Если ваш агент учится онлайн, и вы заботитесь о вознаграждениях, полученных во время обучения , то SARSA может быть лучшим выбором.

Нил Слэйтер
источник
Дополнительный вопрос: stats.stackexchange.com/questions/361485/…
Маппет