Вы находитесь на странице: 1из 66

Что внутри чат-бота?

Принципы и технологии

Иван Бондаренко
Контактные центры (колл-центры)
Проблемы пользователей
What are the best headphones to buy for under $30?

How can I fix WiFi and antenna reception problems with my


iPhone 3GS?

I found Canon EOS 80D very easy to use. I definitely


recommend this camera.
Как решить эти проблемы пользователей?
Нанять 100500 операторов, которые будут читать
форумы, отвечать на вопросы и т.п.
Как решить эти проблемы пользователей?
Нанять 100500 операторов, которые будут читать форумы,
отвечать на вопросы и т.п.

Сделать искусственного оператора - диалогового робота


Робот должен уметь понимать и отвечать!

Анализ текстов на естественном языке (natural language processing)

1. Понимание текста (Natural Language Understanding, NLU)


2. Порождение текста (Natural Language Generation)
3. Распознавание и синтез речи (Speech-to-Text and Text-to-Speech)
Понимание текста

➢ Распознавание именованных сущностей (Named Entity


Recognition)
➢ Классификация пользовательских намерений (Intent
Classification)
➢ Анализ тональности высказывания (Sentiment Analysis)
Распознавание именованных сущностей
Классификация пользовательский намерений

Блокировка
Симку, говорю, заблокируйте! сим-карты
Могу ли я отключить на время
номер?
Нечаянно положил деньги на Возврат
другой номер. Что делать? денег
Верните назад мои деньги!
Связь с
А кто-то живой может
ответить НА МОЙ вопрос?! оператором
………
Анализ тональности высказывания

Василий Пупкин приобрёл контрольный пакет акций нейтральная эмоция

ООО "Рога и копыта".

Василий Пупкин - негодяй, ведь это был мой пакет негативная эмоция

акций!

Василий Пупкин - успешный бизнесмен, учредивший позитивная эмоция

уникальный холдинг по заготовлению рогов и копыт


Типы чат-ботов

➢ FAQ-чатбот
➢ целенаправленный чат-бот (goal oriented bot)
➢ вопросно-ответная система (question answering system)
➢ “болталка” (chit chat bot)
FAQ-чатбот

Я Алиса, какая сейчас погода?

Бот В настоящее время в Новосибирске плюс восемнадцать,


пасмурно

Я Алиса, сколько время?

Бот Отсутствует подключение к интернету


Целенаправленный чат-бот

http://docs.deeppavlov.ai/en/latest/skills/go_bot.html
Вопросно-ответная система
Глобализация экономики — сложный и
противоречивый процесс. С одной стороны, она
облегчает хозяйственное взаимодействие между
государствами, создаёт условия
Одна из наиболее для доступа
влиятельных стран
групп первой
к передовым достижениям человечества,
половины 70-х, Kraftwerk, вышедшие из краут-рока,
обеспечивает экономию
заложили основыповсей
Галилей ресурсов, стимулирует
последующей
праву считается электронной не только
основателем
мировой прогресс. С другой,
музыки экспериментальной,глобализация
своими работами, начиная но — всведёт
диска к1974 года
значительной мере — и
негативным последствиям:
Autobahn закреплению
. Фактически именно
теоретической физики.Kraftwerk стали методе он
В своём научном
периферийной модели
переходной ступенью
осознанно экономики, потере своих
от рок-музыки
сочетал продуманный к новому
эксперимент с его
ресурсов странами, не входящими в золотой Коллекция
музыкальному поджанру,
рациональным в дальнейшем
осмыслением и обобщением, и лично
миллиард .
отдалившемуся от собственно
дал впечатляющие рока,
примеры однако
таких исследований. документов
ставшему огромной
Иногда частью музыкальной
из-за недостатка научных данных Галилей
индустрии.
ошибался (например, в вопросах о форме планетных
орбит, природе комет или причинах приливов), но в
подавляющем большинстве случаев его метод
приводил к цели.
Вопросно-ответная система
Глобализация экономики — сложный и
противоречивый процесс. С одной стороны, она
облегчает хозяйственное взаимодействие между
В чём ошибался
государствами,
к передовым
создаёт условия
Одна из наиболее
достижениям
для доступа
влиятельных
человечества,
стран
групп первой
половины 70-х, Kraftwerk, вышедшие из краут-рока,
Галилей?
обеспечивает экономию
заложили основыповсей
Галилей ресурсов, стимулирует
последующей
праву считается электронной не только
основателем
мировой прогресс. С другой,
музыки экспериментальной,глобализация
своими работами, начиная но — всведёт
диска к1974 года
значительной мере — и
негативным последствиям:
Autobahn закреплению
. Фактически именно
теоретической физики.Kraftwerk стали методе он
В своём научном
периферийной модели
переходной ступенью
осознанно экономики, потере своих
от рок-музыки
сочетал продуманный к новому
эксперимент с его
ресурсов странами,
музыкальному не входящими
поджанру,
рациональным в золотой
в дальнейшем
осмыслением и обобщением, и лично
миллиард .
отдалившемуся от собственно
дал впечатляющие рока,
примеры однако
таких исследований.
ставшему огромной
Иногда частью музыкальной
из-за недостатка научных данных Галилей
индустрии.
ошибался (например, в вопросах о форме планетных
орбит, природе комет или причинах приливов), но в
подавляющем большинстве случаев его метод
приводил к цели.
Вопросно-ответная система
Глобализация экономики — сложный и
противоречивый процесс. С одной стороны, она
облегчает хозяйственное взаимодействие между
В чём ошибался
государствами,
к передовым
создаёт условия
Одна из наиболее
достижениям
для доступа
влиятельных
человечества,
стран
групп первой
половины 70-х, Kraftwerk, вышедшие из краут-рока,
Галилей?
обеспечивает теоретической
экономию
заложили физики.
ресурсов,
основы всей В своём
стимулирует
последующей научном методе он
электронной
мировой осознанно
прогресс. С сочетал
другой, продуманный
глобализация
музыки своими работами, начиная с дискаведётэксперимент
к1974 года с его
негативным рациональным
последствиям:
Autobahn . Фактически осмыслением
закреплению и обобщением,
именно Kraftwerk стали и лично
периферийной дал впечатляющие
модели
переходной экономики,
ступенью примеры
потере своих
от рок-музыки таких исследований.
к новому
ресурсов Иногда
странами, неиз-за недостатка
входящими в научных
золотой
музыкальному поджанру, в дальнейшем данных Галилей
миллиард .
отдалившемуся
ошибалсяот собственно
(например, в вопросах
рока, однако о форме
ставшему огромной частью музыкальной
планетных орбит, природе
индустрии.
комет или причинах приливов), но
в подавляющем большинстве случаев его метод
приводил к цели.

https://demo.ipavlov.ai
Машинное обучение
Это методы решения задачи путём автоматического выявления закономерностей в
эмпирических данных.
Виды машинного обучения
● обучение с учителем (supervised learning)
● обучение без учителя (unsupervised learning)
● обучение с подкреплением (reinforcement learning)
Обучение с учителем
Обучение с учителем
Как превратить текст в набор чисел?
Вариант 1 - “мешок слов”
Как превратить текст в набор чисел?
Вариант 2 - “цепочка слов-векторов”
Word2Vec - слово в семантический вектор

2013 год

Tomas Mikolov и другие

Efficient Estimation of Word


Representations in Vector Space
Дистрибутивная гипотеза

Слова, встречающиеся в схожих контекстах, имеют близкие значения!

Ученые провели анализ алгоритмов

Ученые провели исследование алгоритмов


Два варианта Word2Vec: CBOW и SkipGram
Преимущества Word2Vec
➢ Эффективное сокращение размерности векторов слов
➢ Вектора слов получается осмысленными
➢ Векторные операции над векторами слов тоже осмыслены!
Недостатки word2vec

● Не учитывают глубокую семантику


● Не решают проблемы омонимии
Недостатки word2vec

Коса
Обучение с учителем
Учитель готовит данные

http://brat.nlplab.org/
Проблема - нужен учитель!

Обычный размер размеченных текстовых корпусов - от нескольких


сотен до нескольких тысяч текстов.
А нужны - десятки тысяч текстов!
Решение проблемы
Перенос обучения для задач NLU

● ELMo (Embeddings from Language Models)


○ Deep contextualized word representations, 2018, https://arxiv.org/abs/1802.05365

● BERT (Bidirectional Encoder Representations from Transformers)


○ BERT: Pre-training of Deep Bidirectional Transformers for Language
Understanding, 2018, https://arxiv.org/abs/1810.04805
ELMo
Рекуррентные нейросети

Рекуррентные нейросети
содержат обратные связи
Учёт “глубокой” семантики в тексте

Программист Вася любит пиво. Каждый вечер после работы он заходит в


«Джонатан» и пропускает бокал-другой.
Языковое моделирование
Embeddings from Language Models
Двунаправленная LSTM - основа ELMo
Конкатенация и взвешивание состояний LSTM
Где взять обученные ELMo?

https://tfhub.dev/google/elmo/2
Где взять обученные ELMo?

http://docs.deeppavlov.ai/en/latest/apiref/models/elmo.html
BERT

Скажем решительное “Нет!” рекуррентным сетям!


“Последовательность в последовательность”
Внимание! Это - внимание
Transformer. Внимание и ничего, кроме внимания!
Ashish Vaswani, Noam Shazeer, Niki
Parmar, Jakob Uszkoreit, Llion Jones,
Aidan N. Gomez, Lukasz Kaiser, Illia
Polosukhin
Attention Is All You Need
2017
BERT: Bidirectional Encoder Representations from
Transformers
Чему мы учим BERT? Задача один
Чему мы учим BERT? Задача два
Результаты в анализе текстов на английском
Task type Type of measure Previous BERT
state-of-the-art

Single Sentence Classification (SST-2 Accuracy 93,2% 94,9%


dataset for sentiment analysis)

Sentence Pair Classification (STS-B Accuracy 81,0% 86,5%


dataset for semantic textual similarity)

Question Answering F1 score 91,7% 93,2%


(SQuAD 1.1 dataset)

Single Sentence Tagging (CoNLL-2003 F1 score 92,6% 92,8%


dataset for named entity recognition)
BERT по-русски в проекте iPavlov
http://docs.deeppavlov.ai/en/latest/components/bert.html
Распознавание речи
Что распознаём?

1. Кто говорит? (распознавание говорящего)


2. Как говорит? (распознавание эмоциональной составляющей речи)
3. Что говорит? (распознавание сказанного — собственно
распознавание речи)
Кто говорит? Распознавание говорящего
Как говорит? Распознавание эмоций в голосе
Что говорит? Распознавание речи… но какой?
1. Задача распознавания голосовых команд.

2. Задача распознавания речевых запросов по грамматике.

3. Задача поиска ключевых слов в потоке слитной речи.

4. Задача распознавания слитной речи со сверхбольшим словарём (от 10 000


слов и больше).
Классическая архитектура распознавания речи
Открытые конструкторы распознавания речи

➢ HTK http://htk.eng.cam.ac.uk
➢ CMU Sphinx https://cmusphinx.github.io
➢ Kaldi http://kaldi-asr.org
Рекомендуемые материалы

1. Daniel Jurafsky, James H. Martin.

Speech and Language Processing


Рекомендуемые материалы

2. Маннинг К.Д., Рагхаван П., Шютце Х.

Введение в информационный поиск


Рекомендуемые материалы

3. Гудфеллоу Я., Бенджио И., Курвилль А.

Глубокое обучение (Deep Learning)


Рекомендуемые материалы

4. Франсуа Шолле

Глубокое обучение на Python


(Deep Learning with Python)
Рекомендуемые материалы

5. С.Николенко, А.Кадурин, Е.
Архангельская

Глубокое обучение. Погружение в


мир нейронных сетей
iPavlov - проект по компьютерной лингвистике
iPavlov.ai http://ipavlov.ai/

Демонстрация работы:
http://demo.ipavlov.ai/

Хакатоны и летние школы DeepHack


http://deephack.me/
Kaldi - конструктор нейросетевых систем
распознавания речи

http://kaldi-asr.org
Рад ответить на ваши вопросы

Иван Бондаренко
bond005@yandex.ru

vk.com/bond005