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

A. Агент: агент выполняет действия; например, дрон, доставляющий товары, или Super Mario, управляющий видеоигрой. Алгоритм - это агент. В жизни агент - это вы.

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

C. Окружающая среда: мир, в котором движется агент. Среда принимает текущее состояние и действие агента в качестве входных данных и возвращает в качестве выходных данных вознаграждение агента и его следующее состояние. Если вы агент, среда может быть законами физики и правилами общества, которые обрабатывают ваши действия и определяют их последствия.

D. Состояние (S): Состояние - это конкретная и непосредственная ситуация, в которой находится агент; то есть конкретное место и момент, мгновенная конфигурация, которая связывает агента с другими важными вещами, такими как инструменты, препятствия, враги или призы. Это может быть текущая ситуация, возвращаемая окружающей средой, или любая будущая ситуация. Были ли вы когда-нибудь не в том месте и не в то время? Это состояние.

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

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

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

Но есть две ключевые проблемы со всеми алгоритмами RL.

  1. Редкие награды: это разница во времени между предпринятым действием и соответствующими наградами.

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

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

Итак, в RL есть решение этих двух проблем. Решение состоит в том, чтобы определить присущую агенту функцию вознаграждения, которую агент разрабатывает сам. Эта функция вознаграждения называется любопытством. Он вдохновлен тем фактом, что мы, люди, так привыкли работать с чрезвычайно редкими наградами. Психолог назвал это внутренней мотивацией, иначе называемой любопытством. Рассмотрим агента, который видит наблюдение x (t), выполняет действие a (t) и переводит x (t + 1) в следующее состояние с наблюдением. Мы хотим стимулировать этого агента наградой за то, насколько информативным был переход. Чтобы получить эту награду, мы используем бонус исследования, включающий следующие элементы:

а. Сеть для встраивания наблюдений в представления.

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

Учитывая кортеж перехода,

награда за исследование тогда определяется как,

также называется любопытством.

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

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

Тогда возникает вопрос, как рассчитать эту ошибку?

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

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

Что мы подразумеваем под соответствующей информацией? Что делает некоторые данные актуальными, а некоторые другие - нерелевантными для нашего агента.

Чтобы гарантировать, что он содержит только релевантную информацию, мы заранее определяем правило того, какие данные можно считать релевантными. Соответствующие данные должны моделировать как объекты среды, которыми может управлять агент, так и объекты среды, которые могут влиять на агент. Все остальное, что не находится под контролем агентов и не влияет на них, мы можем отбросить.

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

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

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

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

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

Мы можем формализовать эти две модели математически.

  1. Обратная модель: она кодирует состояние s и состояние s + 1 (следующее состояние) в два вектора признаков, которые обучены предсказывать действие.

2. Прямая модель: она принимает входные данные вектора признаков и предсказывает представление признаков следующего состояния.

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

Вывод:

По мере того, как мы узнаем больше об ИИ, мы узнаем больше о себе и о том, как мы учимся.

Следует помнить о трех вещах:

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

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

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

Ссылка:

  1. Юрий Бурда, Харри Эдвардс, Дипак Патхак,
    Амос Сторки, Тревор Даррелл и Алексей А. Эфрос. Масштабное исследование обучения, ориентированного на любопытство