TD обучение против Q обучения
В идеальной информационной среде, где мы можем узнать состояние после какого-либо действия, например, игры в шахматы, есть ли причина использовать Q-обучение, а не TD-обучение (разность во времени)?
Насколько я понимаю, TD обучение будет пытаться выучить значение V(состояние), но Q обучение будет изучать значение Q(значение действия состояния), что означает, что Q обучение учится медленнее (так как комбинация действий состояния больше, чем только состояние), это правильно?
2 ответа
Q-Learning - это метод обучения TD (временная разница).
Я думаю, что вы пытаетесь сослаться на TD(0) против Q-обучения.
Я бы сказал, что это зависит от того, ваши действия детерминированы или нет. Даже если у вас есть функция перехода, решение о том, какое действие предпринять в TD(0), может оказаться дорогостоящим, поскольку вам необходимо рассчитать ожидаемое значение для каждого из действий на каждом шаге. В Q-Learning это будет суммироваться в Q-значении.
Учитывая детерминированную среду (или, как вы говорите, "идеальную" среду, в которой вы можете узнать состояние после выполнения действия), я думаю, вы можете смоделировать влияние всех возможных действий в данном состоянии (то есть вычислить все возможные следующие состояния), и выберите действие, которое достигает следующего состояния с максимальным значением V(состояние).
Однако следует учитывать, что для данной политики определены как функции значения V(состояние), так и функции Q (состояние, действие). В некотором смысле, функция значения может рассматриваться как среднее значение функции Q в том смысле, что V(s) "оценивает" состояние s для всех возможных действий. Таким образом, для вычисления правильной оценки V(s) агенту все еще необходимо выполнить все возможные действия в s.
В заключение, я думаю, что хотя V(s) проще, чем Q(s,a), вероятно, им нужно такое же количество опыта (или времени), чтобы получить стабильную оценку.
Вы можете найти больше информации о функциях значений (V и Q) в этом разделе книги Sutton & Barto RL.
Q Learning - это алгоритм управления TD, это означает, что он пытается дать вам оптимальную политику, как вы сказали. Обучение TD является более общим в том смысле, что оно может включать в себя алгоритмы управления, а также только методы прогнозирования V для фиксированной политики.
Фактически Q-обучение - это процесс использования пар состояние-действие, а не просто состояний. Но это не значит, что Q-обучение отличается от TD. В TD(0) наш агент делает один шаг (который может быть одним шагом в паре состояние-действие или просто состояние), а затем обновляет его Q-значение. То же самое и в n-шаговом TD, где наш агент выполняет n шагов, а затем обновляет Q-значения. Сравнивать TD и Q-обучение - неправильный путь. Вместо этого вы можете сравнить алгоритмы TD и SARSA. И TD и MonteCarlo