Изменения

Перейти к: навигация, поиск

Диалоговые системы

3610 байт добавлено, 04:37, 20 января 2021
Нет описания правки
Обычно после распознавания именованных сущностей выполняется ''заполнение слотов'' (англ. slot filling), в ходе которого каждая найденная сущность приводится к своей нормальной форме с учетом ее типа и множества возможных значений. Заполнение слотов позволяет не учитывать морфологию сущности при дальнейшей ее обработке. Простейшим подходом к решению данной задачи является поиск с использованием расстояния Левенштейна.
Для получения эмбеддингов используются различные языковые модели: Word2Vec, ESIM, GPT, BERT. Хорошей Каждой определяется свой способ представления слов и предложений для наиболее точного извлечения их смысловых значений. С хорошей языковой модели моделью достаточно около 100 примеров для хорошей классификации намерения <ref> https://www.slideshare.net/KonstantinSavenkov/nlu-intent-detection-benchmark-by-intento-august-2017 </ref>.
Система с классической архитектурой плохо масштабируется. Так как сценарии диалога нужно определять вручную, их становится сложно согласовывать при большом количестве.
* '''Generation Network'''. Генерирует предложение, используя вектор действия <tex> \mathbf{o}_t </tex> и генератор языка. Предложение содержит специальные токены, которые заменяются на сущности из базы данных по указателю.
Данную архитектуру также называют ''сквозной '' (англ. end-to-end trainable), так как на данных обучается каждая ее часть. Для модели с данной архитектурой не требуется создавать промежуточные состояния вручную, а также ее можно обобщить на намерения, которые не наблюдались во время обучения.
== Чат-ориентированные диалоговые системы ===
=== С ограниченными ответами ===Данный тип систем обычно используется чтобы занять пользователя, например, во время ожидания выполнения задачи. Система поддерживает бессодержательный, но связный диалог.
=== С Системы с ограниченными ответами (англ. retrieval-base) по последовательности фраз выдают наиболее подходящий ответ из списка возможных. Преимуществом таких систем является то, что ответы строго контролируются: можно удалить нежелательные шутки, нецензурные или критикующие выражения. Системы с генерацией ответов ===(англ. generation-base) генерируют ответ пословно. Такие системы более гибкие, но фильтровать их сложней.
== Примеры диалоговых систем ==
ELIZA
иалоговая система-психоаналитик (сейчас, ее назвали бы чат-бот), родом из 60-ых годов.
Диалоговая DOS (Dialog Operating System) {{---}} диалоговая операционная системана основе DeepPavlov. '''AliMe Assist''' {{---}} помощник для пользователей магазина AliExpress. Его архитектура представлена на рисунке . Серым цветом выделены блоки, где используются методы машинного обучения. Система состоит из 3 подсистем: поиск информации или решения, выполнение задачи для клиента и путая переписка в чате. Для извлечения намерения вопрос <tex> q </tex> проверяется на соответствие шаблонам при помощи дерева суффиксов (англ. trie-based pattern matching). Если соответствие найти не удалось, то вопрос передается классификатору, построенному на CNN-сети. На вход сети подаются эмбеддинги слов вопроса и семантических тэгов, которые относятся к нему и контексту (предыдущему вопросу). Для получения эмбеддингов используется FastText. Выбор CNN-сети вместо RNN основан на том, что первая сеть учитывает контекстную информацию слов (слова перед и после текущего слова) и работает быстрей. Точность классификации 40 намерений составляет 89,91%. [[Файл : Ds-alime.png | 350px | thumb | right |Рисунок . Архитектура AliMe Assist]] Xiaolce {{---}} чат-бот, развиваемый китайским отделением Microsoft. Состоит из множества навыков, которые делятся на эмоциональные и рациональные. Имеется навык, который комментирует картинки или сочиняет по ним стихи. Сценарии диалога делятся на персональные и социальные. Бот старается установить эмоциональную связь с пользователем, чтобы продлить диалог с ним.
== Фреймворки ==
spaCy
 
== Другое ==
 
Языковые модели: .
 
31
правка

Навигация