Multi-agent Communication meets Natural Language: Synergies between Functional and Structural Language Learning
https://arxiv.org/abs/2005.07064
⏰ Когда - 14 мая 2020
🍭️️️ В чем понт
В нашем мире есть много умных систем. Логично, что им нужно взаимодействовать друг с другом, чтобы передавать информацию, и в будущем эта потребность будет только расти. Представьте себе два беспилотника, которые могут передавать друг другу сообщения о ситуации на дороге, чтобы сделать вождение более безопасным. Важно, чтобы эти сигналы были интерпретируемыми, а еще лучше — на естественном языке, чтобы в случае неприятностей, мы могли понимать, что произошло.
Авторы предлагают модельную задачу, на которой агенты передают друг другу информацию с дополнительной целью формулировать ее максимально понятным человеку способом, а также структурируют и предоставляют анализ случаев, когда язык модели начинает отличаться от человеческого.
🏋️️ Поставновка задачи: угадай картинку по подписи
Есть два агента: говорящий и слушающий. Говорящему агенту дают набор картинок и показывают на одну из них — картинку-таргет. Задача говорящего — сгенерировать предложение, хорошо отделяющее картинку-таргет от других приведенных. Задача слушающего — получив на вход предложение, понять какая из картинок была загадана говорящим. Задача слушающего и говорящего - сделать так, что описания картинок были даны на максимально человечном языке — понять не только ЧТО сказать, но и КАК это сделать
Модель учиться на датасете Abstract Scenes с картинками и возможными описаниями к ним. Пример картинки и подходящей к ней подписи — на картинке под постом
💃 Модель
Говорящий агент берет картинку-таргет и генерит к ней текстовое описание: с помощью предобученного ResNet делает из картинки вектор, дальше подает вектор на вход LSTM, которая генерит текст, описывающий картинку.
Слушающий агент берет на вход все картинки, генерит к каждой тексовое описание аналогично говорящему (только веса его модели не зависят от весов говорящего). Далее слушающий пытается угадать, какая их всех картинок была таргетом - сравнивает описание картинки-таргета от говорящего со всеми описаниями своих картинок и выбирает ближайшую с помощью скалярного произведения.
К лоссу на функциональность коммуникаци добавлен лосс модели image captioning на датасете Abstract Scenes, - регуляризация на “человечность”.
Обучать агентов можно совсестно, либо фиксировать слушающего и учить только говорящего (замораживать слушающего).
🔦 Человечен ли язык агентов и как это измерить?
Авторы разделили причины “нечеловечности” языка на три категории: структурную, семантическую и прагматическую.
Структурная “нечеловечность” — агенты продуктивно общаются и достигают своих целей, но язык грамматически неверен. Такая ситуация возникает, когда недостаточно сильно регуляризуем на image captioning. Мерить ее можно как вероятность для языковой модели сгенерировать текст.
Семантическая “нечеловечность” — предложение построено грамматически верно, но значения слов могут быть перепутаны. Например в тексте “мальчик стоит на дерево” слово “дерево” перепутано со словом “земля”. Мерить ее можно как вероятность сгенерировать текст при условии картинки.
И наконец, самая нетривиальная и интересная разновидность ”нечеловечности” языка — прагматическая. Она возникает, когда модель дает корректные предложения, но имеет под ними ввиду что-то другое, не то, что человек. Пример: есть 2 картинки с нарисованным солнцем, сетка-слушатель выдает предложение "Светит солнце”, а сетка слушатель угадывает, про какую картинку шла речь, хотя для человека это невозможно — такое описание подходит под обе картинки. Способ измерить такое расхождение — сравнить результаты человека-слушателя и сети-слушателя.
Такое расхождения по результатам эксперимента получается особенно сильным у сети, где слушатель обучается вместе с говорящим, то есть где параметры слушателя не заморожены.
💎 Что в итоге
Машины будут становится только умнее и уметь понимать их - вопрос безопасности. Ждем дальнейших крутых исследований на различных прикладных задачах)
https://arxiv.org/abs/2005.07064
⏰ Когда - 14 мая 2020
🍭️️️ В чем понт
В нашем мире есть много умных систем. Логично, что им нужно взаимодействовать друг с другом, чтобы передавать информацию, и в будущем эта потребность будет только расти. Представьте себе два беспилотника, которые могут передавать друг другу сообщения о ситуации на дороге, чтобы сделать вождение более безопасным. Важно, чтобы эти сигналы были интерпретируемыми, а еще лучше — на естественном языке, чтобы в случае неприятностей, мы могли понимать, что произошло.
Авторы предлагают модельную задачу, на которой агенты передают друг другу информацию с дополнительной целью формулировать ее максимально понятным человеку способом, а также структурируют и предоставляют анализ случаев, когда язык модели начинает отличаться от человеческого.
🏋️️ Поставновка задачи: угадай картинку по подписи
Есть два агента: говорящий и слушающий. Говорящему агенту дают набор картинок и показывают на одну из них — картинку-таргет. Задача говорящего — сгенерировать предложение, хорошо отделяющее картинку-таргет от других приведенных. Задача слушающего — получив на вход предложение, понять какая из картинок была загадана говорящим. Задача слушающего и говорящего - сделать так, что описания картинок были даны на максимально человечном языке — понять не только ЧТО сказать, но и КАК это сделать
Модель учиться на датасете Abstract Scenes с картинками и возможными описаниями к ним. Пример картинки и подходящей к ней подписи — на картинке под постом
💃 Модель
Говорящий агент берет картинку-таргет и генерит к ней текстовое описание: с помощью предобученного ResNet делает из картинки вектор, дальше подает вектор на вход LSTM, которая генерит текст, описывающий картинку.
Слушающий агент берет на вход все картинки, генерит к каждой тексовое описание аналогично говорящему (только веса его модели не зависят от весов говорящего). Далее слушающий пытается угадать, какая их всех картинок была таргетом - сравнивает описание картинки-таргета от говорящего со всеми описаниями своих картинок и выбирает ближайшую с помощью скалярного произведения.
К лоссу на функциональность коммуникаци добавлен лосс модели image captioning на датасете Abstract Scenes, - регуляризация на “человечность”.
Обучать агентов можно совсестно, либо фиксировать слушающего и учить только говорящего (замораживать слушающего).
🔦 Человечен ли язык агентов и как это измерить?
Авторы разделили причины “нечеловечности” языка на три категории: структурную, семантическую и прагматическую.
Структурная “нечеловечность” — агенты продуктивно общаются и достигают своих целей, но язык грамматически неверен. Такая ситуация возникает, когда недостаточно сильно регуляризуем на image captioning. Мерить ее можно как вероятность для языковой модели сгенерировать текст.
Семантическая “нечеловечность” — предложение построено грамматически верно, но значения слов могут быть перепутаны. Например в тексте “мальчик стоит на дерево” слово “дерево” перепутано со словом “земля”. Мерить ее можно как вероятность сгенерировать текст при условии картинки.
И наконец, самая нетривиальная и интересная разновидность ”нечеловечности” языка — прагматическая. Она возникает, когда модель дает корректные предложения, но имеет под ними ввиду что-то другое, не то, что человек. Пример: есть 2 картинки с нарисованным солнцем, сетка-слушатель выдает предложение "Светит солнце”, а сетка слушатель угадывает, про какую картинку шла речь, хотя для человека это невозможно — такое описание подходит под обе картинки. Способ измерить такое расхождение — сравнить результаты человека-слушателя и сети-слушателя.
Такое расхождения по результатам эксперимента получается особенно сильным у сети, где слушатель обучается вместе с говорящим, то есть где параметры слушателя не заморожены.
💎 Что в итоге
Машины будут становится только умнее и уметь понимать их - вопрос безопасности. Ждем дальнейших крутых исследований на различных прикладных задачах)