Обучение общению

В этой статье мы рассказываем о новых исследованиях OpenAI, в ходе которых агенты разрабатывают собственный язык.

Learning To Communicate

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

Обучение агентов созданию языка

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

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

Multi Agent Comm

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

На каждом временном шаге наши агенты могут совершать два типа действий: (i) действия в окружающей среде (например, перемещение или осмотр объектов) и (ii) коммуникативные действия (например, трансляция слова всем остальным агентам). (Обратите внимание: хотя агенты придумывают слова, которые, как мы обнаружили, соответствуют объектам и другим агентам, а также таким действиям, как «Посмотреть на» или «Идти к», для самих агентов эти слова являются абстрактными символами, представленными в виде one-hot векторов; мы обозначаем эти one-hot векторы английскими словами, отражающими их значение, ради интерпретируемости.) Перед тем как совершить действие, агент наблюдает сообщения от других агентов с предыдущего временного шага, а также расположение всех сущностей и объектов в мире. Он сохраняет эту коммуникацию в частной рекуррентной нейронной сети, что обеспечивает ему память о услышанных словах.

Env Streams

Мы используем дискретные коммуникативные действия (сообщения, состоящие из отдельных символов, похожих на слова), передаваемые по дифференцируемому каналу связи. Канал связи является дифференцируемым, если он позволяет агентам напрямую информировать друг друга о том, какое сообщение они должны были отправить на каждом временном шаге, слегка изменяя свои сообщения для достижения положительного изменения в вознаграждении, которое оба агента рассчитывают получить. Агенты делают это, вычисляя градиент будущего вознаграждения по отношению к изменениям в отправленных сообщениях (т. е. насколько изменилось бы вознаграждение при использовании других сообщений). Например, если один агент понимает, что он мог бы выполнить задачу лучше, если бы второй агент передал другую информацию, первый агент может точно указать второму, как изменить свои сообщения, чтобы сделать их максимально полезными. Другими словами, агенты задают вопрос: «Как мне изменить свой коммуникативный вывод, чтобы получить наибольшее совместное вознаграждение в будущем?».

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

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

Как экспериментальная установка влияет на эволюцию языка

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

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

Другая проблема, с которой мы столкнулись, заключалась в попытках агентов использовать отдельные слова для кодирования смысла целых предложений. Это происходило, когда мы давали им возможность использовать большие словарные запасы; в конце концов они создавали единое высказывание, кодирующее смысл целого предложения, например: «красный агент, иди к синему ориентиру». Хотя это полезно для агентов, такой подход требует экспоненциального роста размера словарного запаса с увеличением длины предложения и не соответствует нашей более широкой цели — созданию ИИ, интерпретируемого для людей. Чтобы удержать агентов от создания такого рода языка, мы внедрили предпочтение компактных размеров словарного запаса через склонность использовать уже популярные слова, вдохновляясь идеями, изложенными в работе «Эволюция синтаксической коммуникации» (The evolution of syntactic communication). Мы реализовали это, добавив вознаграждение за произнесение конкретного слова, пропорциональное тому, как часто это слово произносилось ранее.

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

Не умеешь говорить? Позволь мне указать путь. Не слышишь? Позволь мне провести тебя.

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

Выведенный язык и обоснованный язык

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

Компьютеры, языковые модели которых обучаются без обоснования, очень похожи на персонажа из «Китайской комнаты» Джона Серла: они сопоставляют входящий текст с некоторой разновидностью словаря семантического значения, созданного путем анализа больших объемов текста. Неясно, насколько эти компьютеры понимают то, что представляет собой текст, поскольку они никогда не покидали эту комнату и не имели возможности взаимодействовать с миром, который описывает текст.

Следующие шаги

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

По мере роста сложности этого изобретенного языка нам будет все сложнее делать эти языки интерпретируемыми для людей. Именно поэтому в нашем следующем проекте Райан Лоу (Ryan Lowe) и Игорь Мордач (Igor Mordatch) исследуют способы связи изобретенных языков с английским путем взаимодействия агентов с агентами, говорящими по-английски. Это позволит автоматизировать перевод их языка на наш. Это междисциплинарное начинание, охватывающее области искусственного интеллекта, лингвистики и когнитивных наук, и в рамках него мы будем сотрудничать с исследователями из Калифорнийского университета в Беркли. Если вы заинтересованы в разработке более умных языковых моделей, подумайте о том, чтобы работать в OpenAI.

Для получения дополнительной информации

Более подробную информацию о технических особенностях нашего исследования вы можете найти в исследовательской работе:  «Появление обоснованного композиционного языка в популяциях мультиагентов» (Emergence of Grounded Compositional Language in Multi-Agent Populations), а о мотивах его проведения — в работе:  «Парадигма ситуированного и целеориентированного изучения языка» (A Paradigm for Situated and Goal-Driven Language Learning).

Авторы

Питер Аббил (Pieter Abbeel), Игорь Мордач (Igor Mordatch), Райан Лоу (Ryan Lowe), Джон Готье (Jon Gauthier), Джек Кларк (Jack Clark)

Полный текст статьи читайте на OpenAI