Разработчики из Google AI представили Meena — чат-бота, который может общаться на любые темы и учитывать контекст разговора. В основе чат-бота — алгоритм на основе seq2seq, обученный на четырех миллиардах слов из разговоров пользователей социальных сетей. Дополнительно исследователи разработали метрику оценки работы чат-ботов людьми на основе измерения конкретики разговора и того, имеет ли реплика смысл: по ней Meena набрала 79 процентов, что минимум на 23 процента выше, чем другие чат-боты, и всего на 7 ниже человека. Подробнее о работе чат-бота можно прочитать в препринте на arXiv,org, а также в блоге Google AI.
Сейчас чат-боты уже достаточно развиты и могут поддержать короткий разговор с пользователем. У всех них, однако, есть большое ограничение: обычно количество тем, на которые отдельный чат-бот может общаться, довольно небольшое, и, стоит пользователю уйти от темы, система начинает выдавать неспецифичные ответы вроде «я не знаю».
В основе такого ограничения, с одной стороны, лежит недостаток данных, а с другой — то, что чат-боты не могут запоминать контекст разговора: другими словами, при беседе система отвечает только на последний запрос, но не может вернуться к предыдущему, что во многом и делает разговор неспецифичным и неестественным.
Дэниел Адивардана (Daniel Adiwardana) и его коллеги из Google AI решили обойти оба этих ограничения и создали Meena. В основе системы — алгоритм seq2seq на основе рекуррентной нейросети, главная задача которого — поиск взаимосвязей между отдельными кусками информации или — более специфично — «перевод» одного куска в другой.
Алгоритм в основе Meena обучен на отрывках реальных разговоров пользователей соцсетей. Особенность алгоритма состоит в том, что за отдельную часть беседы для обучения берется не пара реплика-реплика, а целый диалог, состоящий из семи реплик со стороны каждого из пользователей. Это, таким образом, позволяет учитывать достаточно обширный контекст беседы. Кроме того, в обучающую выборку вошло достаточно большое количество данных: диалоги, насчитывающие около 40 миллиардов слов.
Для оценки работы чат-бота исследователи создали две отдельные метрики: автоматическую и метрику для оценки реальными людьми. Первая основана на подсчете параметра «растерянности» (perplexity), который подсчитывает обратную вероятность появления каждого последующего слова в сгенерированном тексте на основе распределения вероятностей обучающей выборки.
Другими словами, этот параметр отражает то, из скольких вариантов была выбрана итоговая реплика. Чем их меньше, тем качественнее работает чат-бот: в реальном разговоре между людьми варианты ответа на реплику сильно ограничены контекстом и темой разговора. Исследователи, поэтому, справедливо посчитали, что эта оценка концептуально довольна близка к той, которую могут дать чат-боту люди.
Метрика для оценки людьми, в свою очередь, основана на измерении двух параметров: того, имеет ли реплика чат-бота смысл и того, насколько она конкретная. При человеческой оценке эти два параметра учитываются при каждой новой реплике, а сама оценка — бинарная (либо «да», либо «нет»). Например, если пользователь скажет чат-боту «Я очень люблю пирожки», а тот ответит «Здорово!», то ответ будет иметь смысл, но не будет конкретным, а если он ответит «Сегодня дождь идет» — наоборот. С другой стороны, если ответом будет либо «Стишки или выпечку?», либо «Я тоже, больше всего мне нравится с капустой», то он подойдет по обоим параметрам метрики.
Работу Meena сравнили с другими чат-ботами, включая CleverBot и Mitsuku, а также с диалогами реальных людей в интерактивном режиме — во время общения. По метрике, использованной для оценки людьми, Meena набрала больше всех остальных чат-ботов — 79 процентов. Диалог с реальным человеком, в свою очередь, набрал 86 процентов, а CleverBot и Mitsuku — по 56 процентов. Человеческая метрика и «растерянность» при этом коррелировали (коэффициент — 0,93): чем ниже был этот параметр, тем выше была оценка людей.
Откроют ли Meena для публики отдельно или же Google интегрирует его в другие свои сервисы вроде Assistant — неизвестно: пока что компания не планирует создавать для бота публичный интерфейс. Кроме того, исследователи также отметили, что алгоритм все же нуждается в доработке, так как для качественной работы чат-бота диалог с ним все же должен быть неотличим от беседы с реальным человеком по любой — автоматической или нет — метрике.
Интересно, что для обучения чат-ботов не всегда используют реальные разговоры. Например, в 2018 году Facebook выложила открытую базу данных около 160 тысяч диалогов, совершенных от лица выдуманных людей: по словам разработчиков, это поможет чат-ботам поддерживать разговор о себе.
Елизавета Ивтушок
Как устроен стандарт NB-IoT для автономных IoT-устройств
NB-IoT, или Narrow Band Internet of Things, — сравнительно новый стандарт связи, который появился в 2016 году. Он нацелен на взаимодействие широкого круга автономных устройств: датчиков, счетчиков и других умных устройств, которые применяются в промышленности, «умных городах», ЖКХ, сельском хозяйстве и так далее, — между собой и с умными системами управления. Вместе с МТС, которая в 2018 году запустила сеть NB-IoT в коммерческое использование и обеспечила самое широкое федеральное покрытие в России, рассказываем, в чем заключаются преимущества этой технологии.