Диалоги выдуманных личностей помогут чат-ботам поддержать разговор о себе

Исследователи из Facebook представили Persona-Chat — базу данных, состоящую из более чем 160 тысяч отрывков диалогов реальных людей, которые беседовали от лица выдуманных персон. Разработчики также обучили на примере этих данных компьютерную модель: в будущем, как сообщается в препринте, опубликованном на arXiv, она может помочь персонифицировать чат-ботов и голосовых помощников.

Несмотря на то, что голосовые помощники и чат-боты с каждым годом становятся все совершеннее, поддержать беседу они все еще могут с трудом. Причиной тому — ограничения обучающей выборки: компьютер можно научить разговаривать и даже отвечать на вопросы, но для поддержания цельной беседы данных может быть недостаточно. Чат-бот, например, не обладает сформированной личностью и интересами — и поэтому не может ответить на сложные открытые вопросы вроде «что ты любишь делать в дождливый день?». Разумеется, есть вариант, в котором чат-бот или голосовой помощник отвечает на неизвестный ему вопрос абстрактной фразой вроде «я не знаю» или поисковым запросом — но беседой считать это нельзя. Кроме того, при общении такой собеседник удерживает в памяти только небольшой отрывок диалога и не может вернуться к информации, предоставленной ему несколько шагов назад.

Разработчики из Facebook AI Research под руководством Джейсона Вестона (Jason Weston) собрали базу данных из более чем тысячи «персон»: небольших (пять предложений не более 15 слов в каждом) описаний абстрактных личностей, придуманных реальными людьми. Например, описание такой «персоны» может выглядеть так:

«I am a vegetarian. I like swimming. My father used to work for Ford. My favorite band is Maroon5. I got a new job last month, which is about advertising design.»


«Я вегетарианец. Я люблю плавать. Мой отец работал в Ford. Моя любимая группа — Maroon5. Месяц назад я начал работать дизайнером в рекламном агентстве»

Всего в базе данных 1155 таких «персон». Кроме того, исследователи попросили другую группу людей оценить получившихся «персон» и переписать их на основе схожих, связанных характеристик: например, любовь к Maroon5 могла быть заменена в «персоне» на любовь к песне «She Will Be Loved», а утверждение о том, что отец «персоны» работал на Ford, могло превратиться в утверждение о том, что близкий родственник работал в автомобильной компании. Это необходимо для того, чтобы расширить известные о «персоне» факты для составления возможного диалога.

После этого двух людей, предоставивших «персоны», просили немного поговорить: каждому из них была назначена случайная «персона». В результате в базе данных диалогов оказалось 164356 высказываний, и на основе этой базы исследователи обучили несколько компьютерных моделей (генеративную Seq2Seq и ранжирующую Memory Networks). Полученные модели чат-ботов затем оценили, попросив поговорить с ними реальных людей: диалог мог строиться либо вокруг «персоны» компьютера, либо вокруг «персоны» человека, либо вокруг обоих участников диалога. Разработанные модели обошли алгоритм, обученный диалогам на цитатах из фильмов, по беглости, вовлеченности в диалог и полноте беседы.

Пример диалога человека (PERSON 1) и чат-бота, обученного на собранной базе данных

[PERSON 1:] I just got done playing soccer. What have you been up to?

[PERSON 2:] I do not have pets. I spend my free time writing. what about you?

[PERSON 1:] Just graduated from college. Looking for work.

[PERSON 2:] yes I graduated, in writing and poetry.

[PERSON 1:] Have you had anything published?

[PERSON 2:] I mainly write fiction novels.

[PERSON 1:] Do you like to watch sports?

[PERSON 2:] do you like kings of leon my favorite by them is use somebody

[PERSON 1:] Are you married? I will be married soon.

[PERSON 2:] haha, no time. I have got a novel to finish.

[PERSON 1:] What is your novel about?

[PERSON 2:] it is a love story. I really enjoy writing. do you write or read?

[PERSON 1:] Like to read. Spend most time watching football.

[PERSON 2:] yes I do I am and author for a living


[PERSON 1:] Я только что закончил играть в футбол. А ты что делал?

[PERSON 2:] У меня нет домашних животных. В свободное время я пишу. А ты?

[PERSON 1:] Только что закончил учиться. Ищу работу.

[PERSON 2:] Да, я закончил учиться, я изучал поэзию и прозу

[PERSON 1:] У тебя что-нибудь уже опубликовано?

[PERSON 2:] Я в основном пишу фантастику

[PERSON 1:] Тебе нравится смотреть спорт?

[PERSON 2:] Тебе нравятся Kings of Leon? Моя любимая их песня — «Use Somebody»

[PERSON 1:] Ты женат? У меня скоро свадьба

[PERSON 2:] Хаха, нет, у меня нет на это времени. Надо книгу дописать

[PERSON 1:] О чем твоя книга?

[PERSON 2:] О любви. Я очень люблю писать. А тебе больше нравится писать или читать?

[PERSON 1:] Я люблю читать, но вообще — чаще футбол смотрю

[PERSON 2:] Да, я зарабатываю на жизнь тем, что пишу

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

Поддержание беседы на абстрактные темы — это скорее дополнение для голосовых помощников и чат-ботов. А их основной функцией кроме управления чем-либо и распознавания голосовых команд может быть даже оказание психологической поддержки: как Woebot, который при общении с пользователями использует методы когнитивно-поведенческой психотерапии. 

Елизавета Ивтушок