Усиленное обучение или контролируемое обучение? - PullRequest
0 голосов
/ 14 ноября 2018

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

Ответы [ 3 ]

0 голосов
/ 28 ноября 2018

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

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

0 голосов
/ 17 января 2019

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

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

0 голосов
/ 14 ноября 2018

Причина в том, что эти два поля имеют принципиальное различие:

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

В машинном обучении существует 4 поля:

  • Обучение под наблюдением
  • Обучение без учителя
  • Обучение под контролем
  • Обучение с подкреплением

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

Обучение под наблюдением

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

Самый большой вынос:

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

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

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

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

Ключевые отличия контролируемого обучения от RL:

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

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

Мы делаем это для Deep RL, потому что он имеет буфер воспроизведения опыта.Но это невозможно для контролируемого обучения, потому что отсутствует концепция вознаграждения.

Пример: Ходьба в лабиринте.

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

Принимаясправа в квадрате 3: Награда = 5

Влево в квадрате 3: Награда = 0

Взятие в квадрате 3: Награда = -5

Контролируемое обучение

Взятие прав в квадрате 3

Взятие левого в квадрате 3

Взятие в квадрате 3

Когда вы попытаетесь принять решение в квадрате 3, RL поймет, что идет правильно. Обучение под наблюдением будет сбито с толку, потому что в одном примере ваши данные говорят, что они имеют право в квадрате 3, во 2-м примере - влево, в третьем примере - в сторону увеличения. Так что оно никогда не сойдет.

...