Подтвердить что ты не робот

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

Я изучаю Укрепление обучения и чтение книги Саттона для университетского курса. Помимо классических алгоритмов PD, MC, TD и Q-Learning, я читаю о методах градиента политики и генетических алгоритмах решения проблем решения. У меня никогда не было опыта в этой теме, и у меня возникают проблемы с пониманием того, когда метод должен быть предпочтительнее другого. У меня есть несколько идей, но я не уверен в них. Может кто-нибудь кратко объяснить или рассказать мне источник, где я могу найти что-то о типичной ситуации, когда нужно использовать определенные методы? Насколько я понимаю:

  • Динамическое программирование и линейное программирование должны использоваться только тогда, когда MDP имеет несколько действий и состояний, а модель известна, поскольку она очень дорога. Но когда DP лучше LP?
  • Методы Монте-Карло используются, когда у меня нет модели проблемы, но я могу сгенерировать образцы. Он не имеет предвзятости, но имеет большую дисперсию.
  • Временные методы разности должны использоваться, когда методы MC требуют слишком большого количества выборок, чтобы иметь небольшую дисперсию. Но когда я должен использовать TD и Q-Learning?
  • Градиент политики и генетические алгоритмы хороши для непрерывных MDP. Но когда кто-то лучше другого?

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

  • Агент изучает онлайн или офлайн?
  • Можно ли отделить изучение и использование фаз?
  • можем ли мы провести достаточно исследований?
  • является горизонтом MDP конечным или бесконечным?
  • непрерывны состояния и действия?

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

4b9b3361

Ответ 1

Коротко:

Агент изучает онлайн или офлайн? помогает вам решать, используя онлайн-или автономные алгоритмы. (например, on-line: SARSA, off-line: Q-learning). Он-лайн методы имеют больше ограничений и требуют большего внимания к оплате.

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

можем ли мы провести достаточно исследований? Уровень исследования может быть определен в зависимости от определения проблемы. Например, если у вас есть имитационная модель проблемы в памяти, вы можете исследовать ее по своему усмотрению. Но реальное исследование ограничено количеством ресурсов, которые у вас есть. (например, энергия, время,...)

- состояния и действия непрерывные? Учитывая, что это предположение помогает выбрать правильный подход (алгоритм). Для RL разработаны как дискретные, так и непрерывные алгоритмы. Некоторые "непрерывные" алгоритмы внутренне дискретизируют состояние или пространства действий.