stringtranslate.com

Q-обучение

Q -learning — это алгоритм обучения с подкреплением без модели , позволяющий узнать значение действия в определенном состоянии. Он не требует модели среды (отсюда и «без модели») и может решать проблемы со стохастическими переходами и вознаграждениями без необходимости адаптации. [1]

Для любого конечного марковского процесса принятия решений Q - обучение находит оптимальную политику в смысле максимизации ожидаемого значения общей награды за любые и все последовательные шаги, начиная с текущего состояния. [2] Q -обучение может определить оптимальную политику выбора действий для любого заданного конечного марковского процесса принятия решений, учитывая бесконечное время исследования и частично случайную политику. [2] «Q» относится к функции, которую вычисляет алгоритм – ожидаемые награды за действие, предпринятое в заданном состоянии. [3]

Обучение с подкреплением

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

Целью агента является максимизация его общей награды. Он делает это, добавляя максимальную награду, достижимую из будущих состояний, к награде за достижение текущего состояния, эффективно влияя на текущее действие потенциальной будущей наградой. Эта потенциальная награда представляет собой взвешенную сумму ожидаемых значений наград всех будущих шагов, начиная с текущего состояния. [1]

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

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

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

Алгоритм

Таблица состояний Q-Learning по действиям, которая инициализируется нулем, затем каждая ячейка обновляется посредством обучения

После шагов в будущее агент примет решение о следующем шаге. Вес для этого шага рассчитывается как , где ( фактор дисконтирования ) — это число от 0 до 1 ( ). Предполагая , он имеет эффект оценки вознаграждений, полученных ранее, выше, чем полученных позже (отражая ценность «хорошего старта»). может также интерпретироваться как вероятность успеха (или выживания) на каждом шаге .

Таким образом, алгоритм имеет функцию, которая вычисляет качество комбинации состояние-действие:

.

Перед началом обучения ⁠ ⁠ инициализируется возможно произвольным фиксированным значением (выбранным программистом). Затем, каждый раз, когда агент выбирает действие , наблюдает вознаграждение , входит в новое состояние (которое может зависеть как от предыдущего состояния , так и от выбранного действия) и обновляется. Ядром алгоритма является уравнение Беллмана как простое итеративное обновление значения , использующее средневзвешенное значение текущего значения и новой информации: [4]

где — вознаграждение, получаемое при переходе из состояния в состояние , а — скорость обучения .

Обратите внимание, что это сумма трех факторов:

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

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

Влияние переменных

Скорость обучения

Скорость обучения или размер шага определяет, в какой степени вновь полученная информация переопределяет старую информацию. Коэффициент 0 заставляет агента ничему не учиться (используя исключительно предыдущие знания), в то время как коэффициент 1 заставляет агента рассматривать только самую последнюю информацию (игнорируя предыдущие знания для изучения возможностей). В полностью детерминированных средах скорость обучения является оптимальной. Когда проблема является стохастической , алгоритм сходится при некоторых технических условиях к скорости обучения, которые требуют, чтобы она уменьшилась до нуля. На практике часто используется постоянная скорость обучения, например, для всех . [5]

Фактор дисконтирования

Фактор дисконтирования ⁠ ⁠ определяет важность будущих вознаграждений. Фактор, равный 0, сделает агента «близоруким» (или близоруким), учитывая только текущие вознаграждения, т. е. (в правиле обновления выше), в то время как фактор, приближающийся к 1, заставит его стремиться к долгосрочному высокому вознаграждению. Если фактор дисконтирования равен или превышает 1, значения действий могут расходиться. Для без конечного состояния или если агент никогда его не достигает, все истории окружения становятся бесконечно длинными, а полезности с аддитивными, недисконтированными вознаграждениями, как правило, становятся бесконечными. [6] Даже при факторе дисконтирования, который лишь немного ниже 1, обучение с помощью Q -функции приводит к распространению ошибок и нестабильностей, когда функция значения аппроксимируется с помощью искусственной нейронной сети . [7] В этом случае начало с более низкого фактора дисконтирования и увеличение его до конечного значения ускоряет обучение. [8]

Начальные условия (В0)

Поскольку Q -обучение является итеративным алгоритмом, он неявно предполагает начальное условие до того, как произойдет первое обновление. Высокие начальные значения, также известные как «оптимистические начальные условия», [9] могут стимулировать исследование: независимо от того, какое действие выбрано, правило обновления приведет к тому, что оно будет иметь более низкие значения, чем другая альтернатива, тем самым увеличивая вероятность их выбора. Первое вознаграждение может быть использовано для сброса начальных условий. [10] Согласно этой идее, при первом выполнении действия вознаграждение используется для установки значения . Это позволяет немедленно обучаться в случае фиксированных детерминированных вознаграждений. Ожидается, что модель, которая включает сброс начальных условий (RIC), будет предсказывать поведение участников лучше, чем модель, которая предполагает любое произвольное начальное условие (AIC). [10] RIC, по-видимому, согласуется с поведением человека в повторяющихся экспериментах с бинарным выбором. [10]

Выполнение

Q -learning в своей простейшей форме хранит данные в таблицах. Этот подход дает сбои с увеличением числа состояний/действий, поскольку вероятность того, что агент посетит определенное состояние и выполнит определенное действие, становится все меньше.

Аппроксимация функции

Q -обучение можно объединить с аппроксимацией функций . [11] Это позволяет применять алгоритм к более крупным задачам, даже когда пространство состояний непрерывно.

Одним из решений является использование (адаптированной) искусственной нейронной сети в качестве аппроксиматора функции. [12] Другая возможность заключается в интеграции нечеткой интерполяции правил (FRI) и использовании разреженных нечетких баз правил [13] вместо дискретных Q-таблиц или ИНС, что имеет преимущество в том, что является формой представления знаний, понятной человеку. Аппроксимация функции может ускорить обучение в конечных задачах из-за того, что алгоритм может обобщать более ранний опыт на ранее невиданные состояния.

Квантование

Другой метод уменьшения пространства состояний/действий квантует возможные значения. Рассмотрим пример обучения балансированию палки на пальце. Описание состояния в определенный момент времени включает положение пальца в пространстве, его скорость, угол палки и угловую скорость палки. Это дает четырехэлементный вектор, который описывает одно состояние, т. е. снимок одного состояния, закодированный в четырех значениях. Проблема в том, что присутствует бесконечно много возможных состояний. Чтобы уменьшить возможное пространство допустимых действий, можно присвоить ведру несколько значений. Точное расстояние пальца от его начального положения (от -бесконечности до бесконечности) неизвестно, но известно, находится ли он далеко или нет (Близко, Далеко). [14]

История

Q -обучение было представлено Крисом Уоткинсом в 1989 году. [15] Доказательство сходимости было представлено Уоткинсом и Питером Даяном в 1992 году. [16]

Уоткинс рассматривал тему «Обучение с отсроченными вознаграждениями», название своей докторской диссертации. Восемью годами ранее, в 1981 году, та же проблема под названием «Отсроченное обучение с подкреплением» была решена с помощью Crossbar Adaptive Array (CAA) Бозиновски. [17] [18] Матрица памяти была такой же, как и Q-таблица Q- обучения восемь лет спустя . Архитектура ввела термин «оценка состояния» в обучение с подкреплением. Алгоритм обучения с перекрёстной ...

Термин «вторичное подкрепление» заимствован из теории обучения животных для моделирования значений состояния посредством обратного распространения : значение состояния ⁠ ⁠ ситуации последствий распространяется обратно на ранее встреченные ситуации. CAA вычисляет значения состояния по вертикали, а действия — по горизонтали («перекладина»). Демонстрационные графики, показывающие отложенное обучение с подкреплением, содержали состояния (желательные, нежелательные и нейтральные состояния), которые были вычислены функцией оценки состояния. Эта система обучения была предшественником алгоритма Q-обучения. [19]

В 2014 году Google DeepMind запатентовала [20] приложение Q-обучения к глубокому обучению под названием «глубокое обучение с подкреплением» или «глубокое Q-обучение», которое позволяет играть в игры Atari 2600 на уровне эксперта.

Варианты

Глубокое Q-обучение

Система DeepMind использовала глубокую сверточную нейронную сеть со слоями мозаичных сверточных фильтров для имитации эффектов рецептивных полей. Обучение с подкреплением нестабильно или расходится, когда для представления Q используется нелинейный функциональный аппроксиматор, такой как нейронная сеть. Эта нестабильность возникает из-за корреляций, присутствующих в последовательности наблюдений, того факта, что небольшие обновления Q могут существенно изменить политику агента и распределение данных, а также корреляций между Q и целевыми значениями. Метод может использоваться для стохастического поиска в различных областях и приложениях. [1] [21]

Техника использовала воспроизведение опыта, биологически вдохновленный механизм, который использует случайную выборку предыдущих действий вместо самого последнего действия для продолжения. [3] Это устраняет корреляции в последовательности наблюдений и сглаживает изменения в распределении данных. Итеративные обновления корректируют Q в направлении целевых значений, которые обновляются только периодически, что еще больше снижает корреляции с целью. [22]

Двойное Q-обучение

Поскольку будущее максимальное приближенное значение действия в Q-обучении оценивается с использованием той же функции Q, что и в текущей политике выбора действия, в шумных средах Q-обучение иногда может переоценивать значения действия, замедляя обучение. Для исправления этого был предложен вариант, называемый Double Q-обучение. Double Q-обучение [23] — это алгоритм обучения с подкреплением вне политики, в котором для оценки значения используется другая политика, нежели та, что используется для выбора следующего действия.

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

, и

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

Этот алгоритм был позднее модифицирован в 2015 году и объединен с глубоким обучением [24] , как в алгоритме DQN, в результате чего появился Double DQN, который превосходит исходный алгоритм DQN. [25]

Другие

Отложенное Q-обучение — это альтернативная реализация онлайн- алгоритма Q -обучения с, вероятно, приблизительно правильным (PAC) обучением . [26]

Жадный GQ — это вариант Q -обучения, используемый в сочетании с аппроксимацией (линейной) функции. [27] Преимущество жадного GQ заключается в том, что сходимость гарантируется даже при использовании аппроксимации функции для оценки значений действия.

Распределительное Q-обучение — это вариант Q -обучения, который стремится моделировать распределение возвратов, а не ожидаемый возврат каждого действия. Было замечено, что оно облегчает оценку глубокими нейронными сетями и может включать альтернативные методы контроля, такие как контроль, чувствительный к риску. [28]

Многоагентное обучение

Q-обучение было предложено в многоагентной среде (см. раздел 4.1.2 в [29] ). Один из подходов состоит в том, чтобы притвориться, что окружающая среда пассивна. [30] Литтман предлагает минимаксный алгоритм Q-обучения. [31]

Ограничения

Стандартный алгоритм Q-обучения (использующий таблицу) применим только к дискретным действиям и пространствам состояний. Дискретизация этих значений приводит к неэффективному обучению, в основном из-за проклятия размерности . Однако существуют адаптации Q-обучения, которые пытаются решить эту проблему, такие как Wire-fitted Neural Network Q-Learning. [32]

Смотрите также

Ссылки

  1. ^ abc Li, Shengbo (2023). Reinforcement Learning for Sequential Decision and Optimal Control (Первое издание). Springer Verlag, Сингапур. стр. 1–460. doi :10.1007/978-981-19-7784-8. ISBN 978-9-811-97783-1. S2CID  257928563.{{cite book}}: CS1 maint: location missing publisher (link)
  2. ^ ab Melo, Франциско С. «Конвергенция Q-обучения: простое доказательство» (PDF) .
  3. ^ ab Matiisen, Tambet (19 декабря 2015 г.). «Demystifying Deep Reinforcement Learning». neuro.cs.ut.ee . Computational Neuroscience Lab . Получено 2018-04-06 .
  4. ^ Дитерих, Томас Г. (21 мая 1999 г.). «Иерархическое обучение с подкреплением с декомпозицией функции значений MAXQ». arXiv : cs/9905014 .
  5. ^ Саттон, Ричард; Барто, Эндрю (1998). Обучение с подкреплением: Введение. MIT Press.
  6. ^ Рассел, Стюарт Дж .; Норвиг, Питер (2010). Искусственный интеллект: современный подход (третье изд.). Prentice Hall . стр. 649. ISBN 978-0136042594.
  7. ^ Бэрд, Лимон (1995). «Остаточные алгоритмы: обучение с подкреплением и аппроксимацией функций» (PDF) . ICML : 30–37.
  8. ^ Франсуа-Лаве, Венсан; Фонтено, Рафаэль; Эрнст, Дамьен (2015-12-07). «Как дисконтировать глубокое обучение с подкреплением: на пути к новым динамическим стратегиям». arXiv : 1512.02011 [cs.LG].
  9. ^ Саттон, Ричард С.; Барто, Эндрю Г. "2.7 Оптимистичные начальные значения". Обучение с подкреплением: Введение . Архивировано из оригинала 2013-09-08 . Получено 2013-07-18 .
  10. ^ abc Штейнгарт, Ханан; Нейман, Таль; Левенштейн, Йонатан (май 2013 г.). «Роль первого впечатления в оперантном обучении» (PDF) . Журнал экспериментальной психологии: Общие сведения . 142 (2): 476–488. doi :10.1037/a0029550. ISSN  1939-2222. PMID  22924882.
  11. ^ Хасселт, Хадо ван (5 марта 2012 г.). «Обучение с подкреплением в пространствах непрерывного состояния и действий». В Виринге, Марко; Оттерло, Мартин ван (ред.). Обучение с подкреплением: современное состояние . Springer Science & Business Media. стр. 207–251. ISBN 978-3-642-27645-3.
  12. ^ Tesauro, Gerald (март 1995). «Temporal Difference Learning and TD-Gammon». Communications of the ACM . 38 (3): 58–68. doi : 10.1145/203330.203343 . S2CID  8763243. Получено 08.02.2010 .
  13. ^ Винце, Дэвид (2017). «Интерполяция нечетких правил и обучение с подкреплением» (PDF) . 2017 IEEE 15-й Международный симпозиум по прикладному машинному интеллекту и информатике (SAMI) . IEEE. стр. 173–178. doi :10.1109/SAMI.2017.7880298. ISBN 978-1-5090-5655-2. S2CID  17590120.
  14. ^ Кришнан, Шриватсан; Лам, Максимилиан; Читлангия, Шарад; Ван, Зишен; Барт-Марон, Габриэль; Фауст, Александра; Редди, Виджай Джанапа (13 ноября 2022 г.). «QuaRL: Квантование для быстрого и экологически устойчивого обучения с подкреплением». arXiv : 1910.01055 [cs.LG].
  15. ^ Уоткинс, CJCH (1989). Обучение на основе отложенных вознаграждений (PDF) (диссертация доктора философии). Кембриджский университет . EThOS  uk.bl.ethos.330022.
  16. ^ Уоткинс, Крис; Даян, Питер (1992). «Q-learning». Машинное обучение . 8 (3–4): 279–292. doi : 10.1007/BF00992698 . hdl : 21.11116/0000-0002-D738-D .
  17. ^ Бозиновски, С. (15 июля 1999 г.). «Адаптивный массив с перекрестными связями: первая сеть коннекционистов, которая решила проблему отложенного обучения с подкреплением». В Dobnikar, Andrej; Steele, Nigel C.; Pearson, David W.; Albrecht, Rudolf F. (ред.). Искусственные нейронные сети и генетические алгоритмы: Труды международной конференции в Портороже, Словения, 1999 г. Springer Science & Business Media. стр. 320–325. ISBN 978-3-211-83364-3.
  18. ^ Бозиновски, С. (1982). «Система самообучения с использованием вторичного подкрепления». В Траппл, Роберт (ред.). Кибернетика и системные исследования: Труды шестой европейской встречи по кибернетике и системным исследованиям . Северная Голландия. стр. 397–402. ISBN 978-0-444-86488-8.
  19. ^ Барто, А. (24 февраля 1997 г.). "Обучение с подкреплением". В Омидвар, Омид; Эллиотт, Дэвид Л. (ред.). Нейронные системы для управления . Elsevier. ISBN 978-0-08-053739-9.
  20. ^ "Методы и устройства для обучения с подкреплением, патент США № 20150100530A1" (PDF) . Патентное ведомство США. 9 апреля 2015 г. . Получено 28 июля 2018 г. .
  21. ^ Мацлиах Б.; Бен-Гал И.; Каган Э. (2022). «Обнаружение статических и мобильных целей автономным агентом с глубокими способностями к Q-обучению» (PDF) . Энтропия . 24 (8): 1168. Bibcode :2022Entrp..24.1168M. doi : 10.3390/e24081168 . PMC 9407070 . PMID  36010832. 
  22. ^ Мних, Владимир; Кавукчуоглу, Корай; Сильвер, Дэвид; Русу, Андрей А.; Венесс, Джоэл; Бельмар, Марк Г.; Грейвс, Алекс; Ридмиллер, Мартин; Фиджеланд, Андреас К. (февраль 2015 г.). «Управление на уровне человека посредством глубокого обучения с подкреплением». Nature . 518 (7540): 529–533. Bibcode :2015Natur.518..529M. doi :10.1038/nature14236. ISSN  0028-0836. PMID  25719670. S2CID  205242740.
  23. ^ Ван Хасселт, Хадо (2011). «Двойное Q-обучение» (PDF) . Достижения в области нейронных систем обработки информации . 23 : 2613–2622.
  24. ^ Ван Хасселт, Хадо; Гез, Артур; Сильвер, Дэвид (8 декабря 2015 г.). «Глубокое обучение с подкреплением с помощью двойного Q-обучения». arXiv : 1509.06461 [cs.LG].
  25. ^ Ван Хасселт, Хадо; Гез, Артур; Сильвер, Дэвид (2015). «Глубокое обучение с подкреплением с двойным Q-обучением» (PDF) . Конференция AAAI по искусственному интеллекту : 2094–2100. arXiv : 1509.06461 .
  26. ^ Штрель, Александр Л.; Ли, Лихонг; Виуиора, Эрик; Лэнгфорд, Джон; Литтман, Майкл Л. (2006). «Обучение с подкреплением без модели Pac» (PDF) . Proc. 22nd ICML : 881–888.
  27. ^ Maei, Hamid; Szepesvári, Csaba; Bhatnagar, Shalabh; Sutton, Richard (2010). "Toward off-policy learning control with function approximation in Proceedings of the 27th International Conference on Machine Learning" (PDF) . стр. 719–726. Архивировано из оригинала (PDF) 2012-09-08 . Получено 2016-01-25 .
  28. ^ Хессель, Маттео; Модаил, Джозеф; ван Хасселт, Хадо; Шауль, Том; Островски, Георг; Дабни, Уилл; Хорган, Дэн; Пиот, Билал; Азар, Мохаммад; Сильвер, Дэвид (февраль 2018 г.). «Радуга: объединение улучшений в глубоком обучении с подкреплением». Труды конференции AAAI по искусственному интеллекту . 32. arXiv : 1710.02298 . doi : 10.1609/aaai.v32i1.11796. S2CID  19135734.
  29. ^ Шохам, Йоав; Пауэрс, Роб; Гренагер, Тронд (1 мая 2007 г.). «Если многоагентное обучение — это ответ, то в чем вопрос?». Искусственный интеллект . 171 (7): 365–377. doi :10.1016/j.artint.2006.02.006. ISSN  0004-3702 . Получено 4 апреля 2023 г.
  30. ^ Сен, Сандип; Секаран, Махендра; Хейл, Джон (1 августа 1994 г.). «Учимся координировать действия, не делясь информацией». Труды Двенадцатой национальной конференции AAAI по искусственному интеллекту . AAAI Press: 426–431 . Получено 4 апреля 2023 г.
  31. ^ Литтман, Майкл Л. (10 июля 1994 г.). «Марковские игры как основа для многоагентного обучения с подкреплением». Труды Одиннадцатой международной конференции по машинному обучению . Morgan Kaufmann Publishers Inc.: 157–163. ISBN 9781558603356. Получено 4 апреля 2023 г. .
  32. ^ Гаскетт, Крис; Веттергрин, Дэвид; Зелински, Александр (1999). «Q-обучение в непрерывных пространствах состояний и действий» (PDF) .

Внешние ссылки