Mir-knigi.info
mir-knigi.info » Книги » Компьютеры и интернет » Базы данных » Охота на электроовец. Большая книга искусственного интеллекта - Марков Сергей Николаевич

Охота на электроовец. Большая книга искусственного интеллекта - Марков Сергей Николаевич

Тут можно читать бесплатно Охота на электроовец. Большая книга искусственного интеллекта - Марков Сергей Николаевич. Жанр: Базы данных / Прочая компьютерная литература. Так же Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте mir-knigi.info (Mir knigi) или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Перейти на страницу:

Во-вторых, помимо наличия полезных навыков, современные виртуальные ассистенты обычно способны решать две другие важные задачи: отвечать на вопросы для открытой предметной области (Open Domain Question Answering, ODQA) и поддерживать разговор на произвольные темы, или, проще говоря, болтать (chitchat). ODQA обычно сводится к задаче соотнесения вопроса пользователя и некоторой словарной статьи (источником которой может быть, например, онлайн-словарь или энциклопедия) и традиционно решается при помощи моделей, основанных на поиске. Таким образом, в сухом остатке мы имеем одну бесспорную задачу виртуального ассистента, в которой может быть востребована генеративная диалоговая модель, и эта задача — болтовня. Самая легкомысленная, на первый взгляд, задача, с технологической точки зрения оказывается наиболее сложной. И именно для решения этой задачи предназначены такие «монстры», как Meena и BlenderBot.

Как оценить качество болтовни? Беседа с chitchat-моделью должна приносить пользователю удовольствие, и эта цель отнюдь не тождественная цели, которая стоит перед ботами, участвующими в соревнованиях, подобных AI Loebner. Виртуальному ассистенту вовсе не нужно выдавать себя за человека, напротив, такое его поведение будет весьма странным. Ассистент должен давать осмысленные ответы на вопросы пользователя. Однако этого критерия явно недостаточно. Например, фраза «я не знаю» будет осмысленным ответом на практически любой вопрос, но вряд ли такой ответ удовлетворит пользователя. Поэтому вторым важным качеством ответа следует считать его специфичность текущему контексту. Именно на оценке этих двух свойств ответа основана метрика SSA (Sensibleness and Specificity Average, Средняя осмысленность и специфичность), предложенная создателями бота Meena.

Создатели Meena использовали следующую методику расчёта SSA. На краудсорсинговой платформе люди-оценщики оценивали диалоги разговорных агентов (в роли которых выступали различные диалоговые модели и люди). Каждый диалог начинался со стандартного приветствия (Hi!). В отношении каждой из реплик диалога оценщики должны были, руководствуясь здравым смыслом, рассудить, в полной ли мере она разумна в данном контексте. Если что-то казалось неправильным — запутанным, нелогичным, не соответствующим контексту или фактически неверным, тогда на вопрос о разумности реплики следовало дать отрицательный ответ. Если же ответ являлся осмысленным, то необходимо было оценить его специфичность в данном контексте. Например, если A сказал: «Я люблю теннис», а B ответил: «Это хорошо», то высказывание следовало пометить как «неспецифичное», поскольку этот ответ может быть использован во множестве различных контекстов. Но если B ответил: «Я тоже! Обожаю следить за игрой Роджера Федерера!», то такой ответ помечался как «специфичный», поскольку он был тесно связан с обсуждаемым вопросом.

Итоговая оценка рассчитывалась на основе 1600–2400 реплик из 100 диалогов каждого из агентов. Осмысленность рассчитывалась как доля положительных ответов от общего числа ответов на вопрос о разумности реплик данного агента. Специфичность, соответственно, — как доля положительных ответов на вопрос о специфичности реплик агента от общего числа ответов на данный вопрос. Величина SSA была рассчитана как среднее арифметическое специфичности и осмысленности.

Поскольку расчёт значения этой метрики возможен лишь на основе опроса экспертов, её величина не годится в качестве целевой функции в процессе обучения модели. На эту роль подходит только полностью автоматизированная метрика, такая, например, как оценка способности модели предсказывать реплики диалогов, входящих в обучающую выборку. В случае Meena модель в процессе обучения стремилась минимизировать величину перплексии (perplexity) [2270], [2271]. Чем ниже перплексия, тем более уверенно модель предсказывает токены (символы, части слов или слова) последовательности. Величина перплексии для последовательности токенов равна единице, делённой на среднее геометрическое вероятностей каждого из токенов последовательности.

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

— У вас продаётся славянский шкаф?

— Шкаф продан, могу предложить никелированную кровать с тумбочкой.

Охота на электроовец. Большая книга искусственного интеллекта - image247.jpg

Предположим, нам нужно оценить перплексию ответов модели при генерации второй (ответной) реплики этого диалога. Токенизатор (т. е. алгоритм, применяемый для разбивки текста на токены) представил эту реплику в виде последовательности из 11 токенов: «шкаф», «продан», «,», «могу», «предложить», «никелированную», «кровать», «с», «тумбочкой», «.» и «<END>» (специальный токен, означающий окончание реплики). Начнём смотреть вероятности, которые наша модель прогнозировала для каждого из токенов при генерации последовательности слева направо. То есть какова, по мнению модели, была вероятность того, что реплика, отвечающая на вопрос «У вас продаётся славянский шкаф?», начнётся словом «шкаф»? Допустим, модель считала, что вероятность этого составляет 0,1. Теперь возьмём следующую вероятность, а именно вероятность того, что реплика, которая является ответом на вопрос «У вас продаётся славянский шкаф?» и начинающаяся при этом словом «шкаф», будет продолжена словом «продан»? Допустим, эта вероятность равна 0,5. Поскольку наша модель генерирует слова ответа одно за другим слева направо, мы на каждом шаге просто добавляем к предшествующей последовательности очередной токен и вновь «просим» модель предсказать распределение вероятностей для следующего токена, затем выбираем из этого распределения вероятность для токена, на самом деле встреченного на следующей позиции в последовательности, и так далее до конца последовательности. Положим, в итоге для наших 11 токенов мы получили следующий набор вероятностей: 0,1; 0,5; 0,8; 0,9; 0,9; 0,9; 0,9; 0,9; 0,9; 0,9; 0,9. Теперь перемножим их между собой и извлечём из результата корень одиннадцатой степени — получим примерно 0,69. Теперь разделим единицу на это число и получим итоговое значение — приблизительно равное 1,45, что и будет перплексией данной последовательности ответов модели. Легко заметить, что чем с большей вероятностью наша модель предсказывает токены, тем меньше итоговая величина перплексии. При стопроцентной вероятности для каждого из токенов последовательности итоговая перплексия будет равна единице. Если бы каждому из токенов соответствовала вероятность 0,5, то итоговая перплексия была бы равна двойке. По мере уменьшения вероятностей величина перплексии стремится к бесконечности. Высокая перплексия последовательности с точки зрения модели означает, что эта последовательность является «неожиданной» для модели, плохо согласующейся с её прогнозом. Например, модель, обученная на большом корпусе рекламных текстов, скорее будет ожидать последовательность «Мы удовлетворим даже самого требовательного клиента», чем «Бумага летать кольцо вперёд красный!». Поэтому первая фраза будет обладать низкой перплексией, а вторая — высокой.

Перплексию часто используют в качестве целевой функции при обучении языковых моделей, так что в данном случае создатели Meena не открыли Америку. Однако весьма поучительным открытием стало то, что величина перплексии сильно коррелирует (коэффициент детерминации R2 = 0,93) со значением SSA. Чем ниже перплексия модели, тем более высокое значение SSA получают ответы диалоговой модели при оценке их людьми.

Интересны итоги сравнения диалоговых реплик Meena по метрике SSA с ответами людей и других разговорных агентов. Уверенную победу в сравнении одержали люди с показателем SSA = 0,86. Лучшая из модификаций Meena смогла получить SSA = 0,79. Неоднократный (2013, 2016, 2017, 2018, 2019) победитель AI Loebner [2272] бот Mitsuku получил SSA = 0,56, а бот Xiaoice от Microsoft (по всей видимости, использовалась его англоязычная версия по имени Zo) — SSA = 0,31. Как видно из этого сравнения, новая модель от Google смогла преодолеть более половины разрыва в искусстве болтовни между людьми и чат-ботами [2273].

Перейти на страницу:

Марков Сергей Николаевич читать все книги автора по порядку

Марков Сергей Николаевич - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки mir-knigi.info.


Охота на электроовец. Большая книга искусственного интеллекта отзывы

Отзывы читателей о книге Охота на электроовец. Большая книга искусственного интеллекта, автор: Марков Сергей Николаевич. Читайте комментарии и мнения людей о произведении.


Уважаемые читатели и просто посетители нашей библиотеки! Просим Вас придерживаться определенных правил при комментировании литературных произведений.

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

Надеемся на Ваше понимание и благоразумие. С уважением, администратор mir-knigi.info.


Прокомментировать
Подтвердите что вы не робот:*