Экспертиза Sibedge в машинном обучении

JINNEE (ВК).jpgИнженеры Sibedge обладают опытом в разных технологиях, включая машинное обучение. Один из наших продуктов — платформа для создания виртуальных ассистентов на основе искусственного интеллекта. В этом материале расскажем о процессе работы над платформой, её преимуществах и том, как она помогает миллионам людей находить нужную информацию.

Разработка и технологии

Всё началось в 2019 году. Небольшая команда занималась разработкой системы быстрого поиска по внутренней документации. В какой-то момент мы поняли, что пользователям удобнее всего искать информацию с помощью виртуального ассистента. Первая версия нашей системы основывалась на чётких правилах (rule-based). Если в поисковом запросе присутствовало слово, полностью или частично совпадающее с тем, что искал пользователь, система выдавала ответ. Если же слово не совпадало — поиск не давал результата.

Такая система была неудобной и неэффективной, нужно было менять подход. Именно тогда родилась идея использовать машинное обучение. Вместо того, чтобы вбивать в поисковую строку сложные стандартизированные запросы, можно обычным разговорным языком попросить систему найти нужный документ. В процессе поиска решения мы остановились на технологиях NLU (Natural Language Understanding) и NLP (Natural Language Processing) для понимания и обработки естественного человеческого языка.

Тогда же мы столкнулись и с первыми трудностями. Оказалось, что в русском языке достаточно сложно строить семантические модели для определения намерений пользователя. Когда машина пытается понять смысл запроса, конвертирует его в векторы, пропускает через нейросеть и выдаёт предположение о том, что человек имел в виду. Важно было подобрать правильную модель обучения, тонко настроить её и качественно обучить нейронную сеть в нужном семантическом кругу. Неправильно или слабо обученная система будет выдавать неверные ответы.

Мы выбрали для своей системы две модели обучения нейронных сетей. Первая называется ELMO. Чтобы добиться естественного общения с людьми, модель была обучена на основе диалогов в социальной сети Twitter. ELMO прекрасно понимает сленги и речевые обороты. Её можно за считанные минуты научить чему-то новому, используя минимум данных, так как работа ведётся лишь с верхними слоями нейросети. К минусам можно отнести то, что ELMO может путаться в некоторых ситуациях из-за избыточности информации или семантической/смысловой близости разных намерений.

Вторая модель — BERT. Она обучалась на основе статей из энциклопедии Wikipedia. BERT способна эффективно работать с формализованными запросами, прекрасно ориентируется в узких семантических областях и демонстрирует высокую релевантность результатов поиска. К минусам можно отнести то, что BERT обучается на гораздо большем количестве данных, а процесс этот занимает много времени. BERT и ELMO — взаимоисключающие модели, в зависимости от задачи, мы используем либо ту, либо другую.

В результате вместо одного виртуального ассистента для внутреннего использования мы разработали платформу-конструктор, зарегистрировали интеллектуальную собственность и получили несколько патентов. Наше решение позволяет создавать умных виртуальных ассистентов, настраивать и обучать их для работы в разных предметных областях: медицине, образовании, энергетике, юриспруденции и многих других. Благодаря гибкому API наш продукт может быть интегрирован в различные приложения, например, мессенджеры, веб-виджеты и сайты. Разработка платформы заняла 8 месяцев.

Преимущества платформы

Исследование рынка показало, что большая часть существующих конструкторов виртуальных ассистентов работают на основе строгих правил. Они опираются на слова-триггеры или теги, что сильно ограничивает их функциональность. Наша платформа позволяет создавать интеллектуальных ассистентов, которые определяют намерения пользователей по семантическим признакам. Это делает её эффективнее в узких предметных областях.

Ещё одно преимущество нашего решения — простота настройки сценариев. После небольшой практики даже начинающий пользователь может создать собственного виртуального ассистента, написать для него базовый сценарий и начать тестировать вопросно-ответную систему с целью обогащения её примерами.

Модель BERT позволяет нашей системе определять намерения пользователей с точностью 90%, что выше среднего показателя по рынку. Виртуальные ассистенты Sibedge легко дорабатываются под запросы клиентов: мы подбираем оптимальную модель обучения, интегрируем систему с корпоративными мессенджерами и CRM-системами. Зачастую это оказывается решающим фактором при выборе платформы для бизнеса.

Конфиденциальность и информационная безопасность — ещё одна сильная сторона платформы Sibedge. Наши клиенты имеют возможность создавать виртуальных ассистентов, которые будут работать на их собственных серверах. Запросы и личные данные пользователей не передаются третьим сторонам и не аккумулируются в чужих облачных хранилищах.

Практический кейс

Пример практического применения нашей платформы — виртуальный ассистент, интегрированный в веб-портал Министерства труда и социальной защиты РФ. Изначально клиент планировал использовать rule-based ассистента. Но быстро пришёл к выводу, что такой подход не решит поставленной задачи. Разработку виртуального ассистента поручили специалистам Sibedge.

Клиент предоставил нам базу с 15 000 наиболее часто задаваемых вопросов пользователей о трудовом законодательстве. Наши дата-аналитики изучили полученную информацию, разметили её и внесли в семантическое ядро системы. В качестве модели обучения нейронной сети была выбрана BERT. Процесс первого этапа обучения за вычетом разметки данных занял 24 часа.

DevOps-инженеры Sibedge осуществили интеграцию продукта в инфраструктуру клиента по классической методологии CI/CD. Готовое ядро системы мы развернули на серверах заказчика, которые он нам предоставил, согласно выставленным требованиям к железу. Развёртывание, последующая настройка, тестирование и запуск заняли около месяца.

После запуска системы её дальнейшим обучением занимаются администраторы веб-портала. Они мониторят и обрабатывают запросы пользователей, попутно наполняя намерения примерами. Это повышает точность классификации и поддерживает актуальность базы знаний, чтобы виртуальный ассистент был в курсе тенденций и изменений в трудовом законодательстве.

Раньше сотрудники веб-портала тратили треть своего рабочего времени, отвечая на типовые вопросы пользователей. При этом 32% вопросов оставались без ответа. Виртуальный ассистент классифицирует рутинные запросы автоматически, а процент необработанных обращений снизился до 4%. В среднем нейронная сеть обрабатывает 4000+ запросов в день. Только за 2021 год виртуальный ассистент помог найти нужную информацию 1,5 миллионам людей.

Заказчик остался доволен результатом проделанной работы. Виртуальный ассистент позволил практически полностью разгрузить первую линию информационной поддержки. Операторам больше не приходится изучать всё трудовое законодательство, вместо этого они переключаются на решение других важных задач. Система переводит пользователей на вторую линию поддержки лишь в нестандартных ситуациях.

Заключение

Говоря о рынке конструкторов виртуальных ассистентов, основная проблема заключается в том, что многие пока не до конца понимают всех преимуществ технологии машинного обучения. Клиенты как правило выбирают более простые и дешёвые rule-based решения. Но будущее за использованием интеллектуальных систем, так как в общении с живыми людьми они демонстрируют лучшую точность и эффективность. Наша платформа является наглядным примером того, что такие продукты могут быть доступными, простыми в настройке и легко обучаемыми.