Q-обучение

Из Википедии, бесплатной энциклопедии

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

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

Обучение с подкреплением [ править ]

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

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

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

  • 0 секунд ожидания + 15 секунд времени боя

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

  • 5 секунд ожидания + 0 секунд боя

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

Алгоритм [ править ]

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

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

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

.

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

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

Обратите внимание, что представляет собой сумму трех факторов:

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

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

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

Влияние переменных [ править ]

Скорость обучения [ править ]

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

Коэффициент скидки [ править ]

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

Начальные условия ( Q 0 ) [ редактировать ]

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

Реализация [ править ]

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

Аппроксимация функции [ править ]

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

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

Квантование [ править ]

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

История [ править ]

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

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

  • В состоянии s выполнить действие a ;
  • Получить состояния последствий s' ;
  • Вычислить оценку состояния ;
  • Обновить значение перекладины .

Термин «вторичное подкрепление» заимствован из теории обучения животных для моделирования значений состояния посредством обратного распространения ошибки : значение состояния Последствия ситуации распространяются на ранее возникшие ситуации. 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-learning. Двойное Q-обучение [23] — это алгоритм обучения с подкреплением вне политики , в котором для оценки значения используется политика, отличная от той, которая используется для выбора следующего действия.

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

, и

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

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

Другие [ править ]

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

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

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

Мультиагентное обучение [ править ]

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

Ограничения [ править ]

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

См. также [ править ]

Ссылки [ править ]

  1. ^ Перейти обратно: а б с Ли, Шэнбо (2023). Обучение с подкреплением для последовательного принятия решений и оптимального управления (первое изд.). Спрингер Верлаг, Сингапур. стр. 1–460. дои : 10.1007/978-981-19-7784-8 . ISBN  978-9-811-97783-1 . S2CID   257928563 . {{cite book}}: CS1 maint: отсутствует местоположение издателя ( ссылка )
  2. ^ Перейти обратно: а б Мело, Франциско С. «Конвергенция Q-обучения: простое доказательство» (PDF) .
  3. ^ Перейти обратно: а б Матиисен, Тамбет (19 декабря 2015 г.). «Демистификация глубокого обучения с подкреплением» . Neuro.cs.ut.ee . Лаборатория вычислительной нейронауки . Проверено 6 апреля 2018 г.
  4. ^ Диттерих, Томас Г. (21 мая 1999 г.). «Иерархическое обучение с подкреплением с помощью разложения функции значения MAXQ». arXiv : cs/9905014 .
  5. ^ Саттон, Ричард; Барто, Эндрю (1998). Обучение с подкреплением: Введение . МТИ Пресс.
  6. ^ Рассел, Стюарт Дж .; Норвиг, Питер (2010). Искусственный интеллект: современный подход (Третье изд.). Прентис Холл . п. 649. ИСБН  978-0136042594 .
  7. ^ Бэрд, Лимон (1995). «Остаточные алгоритмы: обучение с подкреплением с аппроксимацией функций» (PDF) . ICML : 30–37.
  8. ^ Франсуа-Лаве, Винсент; Фонтено, Рафаэль; Эрнст, Дэмиен (07 декабря 2015 г.). «Как не учитывать глубокое обучение с подкреплением: к новым динамическим стратегиям». arXiv : 1512.02011 [ cs.LG ].
  9. ^ Саттон, Ричард С.; Барто, Эндрю Г. «2.7 Оптимистические начальные значения» . Обучение с подкреплением: Введение . Архивировано из оригинала 8 сентября 2013 г. Проверено 18 июля 2013 г.
  10. ^ Перейти обратно: а б с Штейнгарт, Ханан; Нейман, Таль; Левенштейн, Йонатан (май 2013 г.). «Роль первого впечатления в оперантном обучении» (PDF) . Журнал экспериментальной психологии: Общие сведения . 142 (2): 476–488. дои : 10.1037/a0029550 . ISSN   1939-2222 . ПМИД   22924882 .
  11. ^ Хасселт, Хадо ван (5 марта 2012 г.). «Обучение с подкреплением в пространствах непрерывного состояния и действий» . В Виринге, Марко; Оттерло, Мартин ван (ред.). Обучение с подкреплением: современное состояние . Springer Science & Business Media. стр. 207–251. ISBN  978-3-642-27645-3 .
  12. ^ Тезауро, Джеральд (март 1995 г.). «Обучение с временными различиями и TD-гаммон» . Коммуникации АКМ . 38 (3): 58–68. дои : 10.1145/203330.203343 . S2CID   8763243 . Проверено 8 февраля 2010 г.
  13. ^ Винце, Дэвид (2017). «Интерполяция нечетких правил и обучение с подкреплением» (PDF) . 2017 15-й Международный симпозиум IEEE по прикладному машинному интеллекту и информатике (SAMI) . IEEE. стр. 173–178. дои : 10.1109/САМИ.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-обучение» . Машинное обучение . 8 (3–4): 279–292. дои : 10.1007/BF00992698 . hdl : 21.11116/0000-0002-D738-D .
  17. ^ Божиновский, С. (15 июля 1999 г.). «Адаптивный массив Crossbar: первая коннекционистская сеть, решившая проблему обучения с отложенным подкреплением» . В Добникаре, Андрей; Стил, Найджел К.; Пирсон, Дэвид В.; Альбрехт, Рудольф Ф. (ред.). Искусственные нейронные сети и генетические алгоритмы: материалы международной конференции в Портороже, Словения, 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 г.). «Обучение с подкреплением» . В Омидваре Омид; Эллиотт, Дэвид Л. (ред.). Нейронные системы управления . Эльзевир. ISBN  978-0-08-053739-9 .
  20. ^ «Методы и устройства для обучения с подкреплением, патент США № 20150100530A1» (PDF) . Патентное ведомство США. 9 апреля 2015 года . Проверено 28 июля 2018 г.
  21. ^ Мацлиах Б.; Бен-Гал И.; Каган Э. (2022). «Обнаружение статических и мобильных целей автономным агентом с возможностями глубокого Q-обучения» (PDF) . Энтропия . 24 (8): 1168. Бибкод : 2022Entrp..24.1168M . дои : 10.3390/e24081168 . ПМК   9407070 . ПМИД   36010832 .
  22. ^ Мних, Владимир; Кавукчуоглу, Корай; Сильвер, Дэвид; Русу, Андрей А.; Венесс, Джоэл; Бельмар, Марк Г.; Грейвс, Алекс; Ридмиллер, Мартин; Фиджеланд, Андреас К. (февраль 2015 г.). «Контроль на человеческом уровне посредством глубокого обучения с подкреплением». Природа . 518 (7540): 529–533. Бибкод : 2015Natur.518..529M . дои : 10.1038/nature14236 . ISSN   0028-0836 . ПМИД   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) . Учеб. 22-я МКМЛ : 881–888.
  27. ^ Маей, Хамид; Сепешвари, Чаба; Бхатнагар, Шалабх; Саттон, Ричард (2010). «На пути к управлению обучением вне политики с помощью аппроксимации функций в материалах 27-й Международной конференции по машинному обучению» (PDF) . стр. 719–726. Архивировано из оригинала (PDF) 8 сентября 2012 г. Проверено 25 января 2016 г.
  28. ^ Хессель, Маттео; Модаил, Джозеф; ван Хасселт, Хадо; Шауль, Том; Островский, Георг; Дэбни, Уилл; Хорган, Дэн; Пиот, Билал; Азар, Мохаммед; Сильвер, Дэвид (февраль 2018 г.). «Радуга: объединение улучшений в глубоком обучении с подкреплением». Материалы конференции AAAI по искусственному интеллекту . 32 . arXiv : 1710.02298 . дои : 10.1609/aaai.v32i1.11796 . S2CID   19135734 .
  29. ^ Шохам, Йоав; Пауэрс, Роб; Гренагер, Тронд (1 мая 2007 г.). «Если мультиагентное обучение является ответом, то в чем вопрос?» . Искусственный интеллект . 171 (7): 365–377. дои : 10.1016/j.artint.2006.02.006 . ISSN   0004-3702 . Проверено 4 апреля 2023 г.
  30. ^ Сен, Сандип; Секаран, Махендра; Хейл, Джон (1 августа 1994 г.). «Учимся координировать действия, не обмениваясь информацией» . Материалы двенадцатой национальной конференции AAAI по искусственному интеллекту . АААИ Пресс: 426–431 . Проверено 4 апреля 2023 г.
  31. ^ Литтман, Майкл Л. (10 июля 1994 г.). «Марковские игры как основа многоагентного обучения с подкреплением» . Материалы одиннадцатой Международной конференции по машинному обучению . Morgan Kaufmann Publishers Inc.: 157–163. ISBN  9781558603356 . Проверено 4 апреля 2023 г.
  32. ^ Гаскетт, Крис; Веттергрин, Дэвид; Зелинский, Александр (1999). «Q-Learning в пространствах непрерывного состояния и действий» (PDF) .

Внешние ссылки [ править ]