Краткое поступление к обучению с подкреплением

kratkoe postuplenie k obucheniyu s podkrepleniem?v=1656551308

за ADL

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

Благодаря достижениям в работе с робототехникой манипуляции руками Google Deep Mind победил профессионального игрока Alpha Go, а недавно команда OpenAI победила профессионального игрока в DOTA, за последние годы сфера обучения с подкреплением действительно взорвалась.

1*EM8x5jAL-SeUUG7b4anCQg
1*rvGVriKT_aLeLKvAP16S0A
Примеры

В этой статье мы обсудим:

  • Что такое обучение с подкреплением и его суть, как награды, задачи и т.п.
  • 3 категории обучения с подкреплением

Что такое обучение с подкреплением?

Начнем объяснение с примера – скажем, есть маленький ребенок, который начинает учиться ходить.

Давайте разделим этот пример на две части:

1. Ребенок начинает ходить и успешно добирается до дивана.

Поскольку диван является конечной целью, малыш и родители довольны.

1*sDMJA6qzlo59o7iivh6U6Q

Итак, малыш счастлив и получает благодарность от родителей. Это положительно — ребенок чувствует себя хорошо (положительное вознаграждение +n).

2. Ребенок начинает ходить и падает через какое-то препятствие между ними и получает синяки.

1*i_999FG_Y-DnlCtpEKb5Vw

Ой! Ребенок травмируется и ощущает боль. Это негативно — ребенок плачет (отрицательное вознаграждение -n).

Именно так мы, люди, учимся – путем и ошибкам. Обучение с подкреплением концептуально сродни, но это вычислительный подход к обучению с помощью действий.

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

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

1*vz3AN1mBUR2cr_jEG8s7Mg
  • Агент RL получает состояние С⁰ от окружающая среда то есть Марио
  • Исходя из этого состояние S⁰, агент RL принимает an действие А⁰, скажем — наш агент RL двигается вправо. Поначалу это случайно.
  • Сейчас окружающая среда находится в новом состоянии (новый кадр от Марио или игрового движка)
  • Кое-что дает окружающую среду вознаграждение Р¹ агенту RL. Это, вероятно, дает +1, потому что агент еще не умер.

Этот цикл RL продолжается до тех пор пока мы не погибнем или не достигнем места назначения, и он непрерывно выводит последовательность состояние, действие и вознаграждение.

Основная цель нашего агента RL – максимизировать вознаграждение.

Максимизация вознаграждения

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

Совокупное вознаграждение на каждом шагу времени с соответствующим действием записывается следующим образом:

1*up3hsG1ToqndcnmdA8tbRw

Однако когда суммируем все вознаграждения, все не так.

Давайте разберемся в этом подробно:

1*l8wl4hZvZAiLU56hT9vLlg

Скажем, наш агент RL (роботизированная мышь) находится в лабиринте, содержащем сыр, удары электрическим током и коты. Цель – съесть максимальное количество сыра, прежде чем кошка съест его или получить удар током.

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

Это имеет смысл, правда?

Скидка вознаграждений работает следующим образом:

Мы определяем ставку дисконтирования, которая называется гамма. Он должен быть от 0 до 1. Чем больше гамма, тем меньше скидка и наоборот.

Итак, наши кумулятивные ожидаемые (сниженные) вознаграждения:

1*ef-5D-aBUShEnvMjiCujNw
Совокупное ожидаемое вознаграждение

Задания и их виды в обучении с подкреплением

А Задача является единственным случаем проблемы обучения с подкреплением. В основном мы имеем два типа задач: непрерывные и эпизодические.

Постоянные задачи

Это типы задач, которые длятся вечно. Например, агент RL, осуществляющий автоматическую торговлю на Форексе/Бирже.

0*Rpz3cfDnays7p4-e
Фото Криса Ливерани на Unsplash

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

Агент RL должен продолжать работу, пока мы не решим остановить его вручную.

Эпизодическая задача

В этом случае мы имеем начальную и конечную точку называется терминальным состоянием. Это создает эпизод: список состояний (S), действий (A), наград (R).

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

Разведка и эксплуатация компромисса

Существует принципиальная концепция компромисса исследования и эксплуатации в обучении с подкреплением. Исследование – это поиск дополнительной информации о среде, тогда как эксплуатация – это использование уже известной информации, чтобы максимизировать вознаграждение.

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

1*R9hA8rKx52oByN5Xa7Aqng

В приведенной выше игре наша работаемая мышь может иметь большое количество небольшого сыра (+0,5 каждая). Но на вершине лабиринта есть большая сумма сыра (+100). Итак, если мы сосредоточимся только на ближайшем вознаграждении, наша работаемая мышь никогда не достигнет большой суммы сыра – она просто эксплуатирует.

Но если мышь-робот немного исследует, она сможет найти большое вознаграждение, то есть большой творог.

Это основная концепция разведка и эксплуатация компромисса.

Подходы к обучению с подкреплением

Теперь разберемся с подходами к решению задач обучения с подкреплением. В основном существует 3 подхода, но в этой статье мы рассмотрим только 2 основных подхода:

1. Политический подход

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

1*0eMOC89KDSeJAPxEpOZi5Q

Мы изучаем функцию политики, которая помогает нам сопоставлять каждое состояние с лучшим действием.

Углубляясь в политику, мы разделяем политику на два типа:

  • Детерминированный: политика в данном состоянии(ах) всегда будет возвращать то же действие(а). Это означает, что оно предварительно отображено как S=(s) ➡ A=(a).
  • Стохастический: Он дает распределение вероятности на разные действия.. то есть Стохастическая политика ➡ p( A = a | S = s )

2. На основе ценностей

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

Стоимость каждого состояния – это общая сумма вознаграждения, которую агент RL может рассчитывать на получение в будущем от определенного состояния.

0*квтРАхБЗО-h77Iw1

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

В следующем примере мы видим, что на каждом шагу мы будем использовать наибольшую ценность для достижения нашей цели: 1 3 4 ➡ 6 так далее…

1*96F7YC253a5-mXNPVUTCSg
Лабиринт

Игра в понг – интуитивно понятный пример

1*6D27X-9bipEPrgHrrjwIRA

Давайте возьмем настоящий пример игры в понг. Этот пример просто познакомит вас с интуицией. Как работает обучение с подкреплением. Мы не будем вдаваться в подробности в этом примере, но в следующей статье мы обязательно копаем поглубже.

Предположим, мы научим нашего агента RL играть в понг.

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

1*nGQ4cQneWpgbUpl7aREGwg

Метод, используемый для обучения этому алгоритму, называется градиент политики. Мы предоставляем случайные кадры из игрового движка, и алгоритм производит случайный выход, дающий вознаграждение, возвращаемое в алгоритм/сеть. Это итерационный процесс

Будем обсуждать градиенты политики в следующей статье с более подробной информацией.

1*-SwnWvR-VhZRhX-a9ruF6Q
Среда = Игровой двигатель и Агент = Агент RL

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

Теперь мы научим агента играть в понг. Для начала мы будем кормить кучу игровых кадров (штаты) к сети/алгоритму и разрешите алгоритму решить действие. Первоначальные действия агента, очевидно, будут плохими, но нашему агенту иногда посчастливится набрать очко, и это может оказаться случайным событием. Но благодаря этому счастливому случайному событию он получает вознаграждение, и это помогает агенту понять, что серия действий была достаточно удачной, чтобы получить вознаграждение.

1*cdq5CaGCJCU6ePiXS9GbYg
Результаты во время обучения

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

1*roRyfK2mmV1E_MsN0cRzcg
Источник: OLEGIF.com

Ограничение

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

1*H6wuWYx1wlGRTNfiFGWvhA
Красное разграничение Показывает все действия, совершенные в проигрышном эпизоде

Но если агент выступал Ну с начала эпизода, но только через последние 2 действия агент проиграл игру, отвергать все действия нет смысла. Скорее это имеет смысл, если мы просто удалим два последних действия, которые привели к потере.

1*ZSPXbb8q_2zZiVEQdbDX9A
Зеленое разграничение показывает все правильные действия, а красное разграничение — это действие, которое следует удалить.

Это называется Проблема присвоения кредита. Эта проблема возникает из-за а редкая настройка вознаграждений. То есть, вместо того, чтобы получать вознаграждение на каждом шагу, мы получаем вознаграждение в конце эпизода. Итак, агент должен узнать, какие действия были верными, а какие фактические действия привели к проигрышу в игре.

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

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

Заключительное примечание

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

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

Но хотелось бы отметить, что армирование не является тайным черным ящиком. Любой прогресс, который мы видим сегодня в области обучения с подкреплением, является результатом ярких умов, работающих днем ​​и ночью над конкретными программами.

В следующий раз мы поработаем над Q-learning агентом, а также рассмотрим некоторые основные вещи в обучении с подкреплением.

А до тех пор, наслаждайтесь искусственным интеллектом?

Важно : Эта статья является 1-й частью серии Deep Reinforcement Learning. Полная серия будет доступна как в текстовых формах для чтения на средстве, так и в форме пояснения видео на моем канале на YouTube.

Для более глубокого и интуитивного понимания обучения с подкреплением я бы рекомендовал просмотреть следующее видео:

Подпишитесь на мой канал YouTube, чтобы получить больше видео AI: ADL .

Если вам понравилась статья, нажмите кнопку ? аs Я остаюсь мотивированным писать материалы, и пожалуйста, следите за мной на Medium &

1*z8B3R6kZjTkMKPv3MnUYxg
1*-etmF1WRWkvWO6cSol7f1w
1*7DWddirTA0TDNoAL34xjag

Если у вас возникли вопросы, пожалуйста, сообщите мне в комментарии ниже или Twitter. Подпишитесь на мой канал YouTube, чтобы получить больше технических видео: ADL .

Добавить комментарий

Ваш адрес email не будет опубликован.