ИИ и машинное обучение для улучшения взаимодействия с клиентами

Вспомните, когда вы в последний раз обращались в колл-центр (будь то ваш банк, компания, выпускающая кредитные карты, авиакомпания или любая другая компания). Пришлось ли вам долго ждать после нажатия всех цифр на экране телефона, чтобы перейти по подсказкам, чтобы, наконец, иметь возможность поговорить с живым человеком? И вам приходилось перезванивать им более одного раза, чтобы снова объяснить ту же ситуацию следующему агенту?

Организации осознают, что их центры обработки вызовов (и другие каналы взаимодействия с клиентами) предлагают уникальную возможность повысить удовлетворенность и вовлеченность своих клиентов, предлагая единообразный опыт работы по всем каналам и быстрое реагирование на вопросы и решение проблем. У компаний есть и другие дополнительные преимущества, поскольку они стремятся снизить эксплуатационные расходы центров обработки вызовов, например, за счет переключения взаимодействия на более дешевые каналы, такие как интеллектуальные чат-боты, сокращение времени обработки вызовов и т. Д. В конечном итоге это дает дополнительное преимущество в виде роста доходов за счет увеличения удержания клиентов (и представителей службы поддержки), а также превращения некоторых взаимодействий с клиентами в потенциальные новые продажи.

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

Например, клиент звонит по поводу опоздания с арендной платой за текущий месяц из-за смены работы и сообщает, что зарплата не поступит до следующего месяца. Вместо того, чтобы представитель службы задавал обычную дюжину вопросов, представьте, сможет ли система быстро определить намерение звонящего как «запланировать платеж» и квалифицировать его для более позднего платежа. Эта информация может быть передана представителю службы поддержки в режиме реального времени, который предложит индивидуальный вариант оплаты. Конечным результатом является сокращение времени обработки вызовов и положительный опыт клиентов.

Хотя это не новая проблема - и могут быть разные решения для ее решения - использование искусственного интеллекта и машинного обучения было в авангарде недавних внедрений. Элитная команда IBM Data Science Elite Team работала с несколькими компаниями в таких отраслях, как банковское дело, финансы и здравоохранение, и это лишь некоторые из них, где они использовали инструменты и методы искусственного интеллекта и машинного обучения в качестве решения. к этой проблеме.

Типичный рабочий процесс для анализа стенограммы вызовов показан на рисунке 1. Несколько инструментов IBM и библиотек с открытым исходным кодом были использованы для реализации шагов этого рабочего процесса, как объяснено ниже.

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

Транскрипция речи в текст

Технология преобразования речи в текст продолжает развиваться в области предоставления высококачественной транскрипции. Одним из основных соображений является обеспечение того, чтобы качество звука было адекватным для транскрипции: более высокое качество звука может помочь значительно улучшить результаты. Например, при разработке решения лучше использовать звук с дискретизацией 16 кГц, а не 8 кГц в качестве источника для услуги транскрипции.

Транскрипция выполняется с помощью IBM Watson Speech to Text, который представляет собой надежную технологию, которая обеспечивает высококачественную транскрипцию в реальном времени для распознавания нескольких говорящих, захвата возможных альтернативных слов и фильтрации содержимого. Он поддерживает несколько языков вместе с разными диалектами. Вывод предоставляется в формате JSON, который обеспечивает простую интеграцию с приложениями, обрабатывающими вывод транскрипции в режиме реального времени.

Вот пример приложения, использующего IBM Watson Speech to Text: https://speech-to-text-demo.ng.bluemix.net/

Получение и подготовка данных

Этот шаг выполняется программно с использованием такого языка, как Python, в записной книжке Jupyter внутри IBM Watson Studio.

Часто возникает проблема с удалением конфиденциальной информации, такой как номера счетов, имена людей и т. Д. Из транскрипции. Для этой задачи используется IBM Watson Natural Language Understanding (NLU). Распознавание сущностей NLU имеет готовое решение для идентификации людей, мест, компаний и т. Д. IBM Watson Knowledge Studio можно использовать для построения дополнительных моделей для идентификации новых типов сущностей и их отношения. После того, как Watson NLU пометил конфиденциальную информацию в тексте типами сущностей, ее можно программно заменить с помощью заполнителей.

Одна из задач состоит в том, чтобы разбить всю стенограмму разговора на фрагменты или отрывки, что полезно для анализа намерений по мере продолжения разговора (например, кто-то может позвонить и спросить о своих льготах или франшизе, и в конечном итоге придется заплатить за услуги или установить автоматические платежи). Для определения оптимального размера фрагмента (т. Е. Количества предложений во фрагменте) и перекрытия фрагментов (т. Е. Фиксированных окон или скользящих окон в транскриптах вызовов) применяются различные методы.

После того, как вызовы были разбиты на фрагменты, стандартные библиотеки Python используются для дальнейшей обработки данных, такой как удаление стоп-слов, применение, идентификация биграмм и триграмм и токенизация данных (т. Е. Извлечение терминов из фрагментов вызовов, чтобы что анализ сосредоточен на основных терминах, составляющих каждый фрагмент, как показано на рисунке 2).

Разработайте модель кластеризации

После подготовки данных применяется метод неконтролируемого машинного обучения, такой как кластеризация, для первоначальной идентификации тем или потенциальных намерений для каждого из фрагментов. Мы используем библиотеки Python, такие как Gensim и pyLDAviz, и на выходе получаем интерактивную диаграмму, показанную на рисунке 3, с темами (или кластерами), представленными в виде кружков с левой стороны, а основные термины для каждой темы перечислены на Правильно. (Если вас интересуют подробности об этой технике, вы можете найти объяснение в этом Среднем блоге).

Вышеупомянутый шаг не имеет ввода домена, так как это метод неконтролируемого машинного обучения, применяемый к данным, и поэтому темы имеют номера, но не имеют значимых имен, относящихся к данному домену. Мы применяем некоторые суждения, основанные на основных терминах и облаках слов, сгенерированных для каждой темы, и даем «предварительное» название, которое позже может быть подтверждено экспертами в предметной области.

Просматривайте и помечайте стенограммы разговоров с участием малых и средних предприятий

Подготовленные данные, помеченные списком тем, теперь могут быть просмотрены экспертами в предметной области, которые помогут проверить назначенные темы и пометить данные, которые станут основной истиной для последующего обучения прогнозных моделей.

Этот шаг может стать огромной задачей, если выполнить его вручную (то есть просмотреть стенограмму каждого звонка или, что более важно, просмотреть каждый фрагмент стенограммы каждого звонка, чтобы пометить их соответствующим образом). Чтобы облегчить этот процесс, используется инструмент интеллектуального анализа контента. Это позволяет экспертам в предметной области разрезать контент и быстрее находить закономерности в данных, используя возможности обработки естественного языка (NLP), такие как части речи (глаголы, существительные), фразы, анализ тональности и т. Д. а также запросы и различные варианты визуализации, доступные в инструменте добычи контента. IBM Watson Natural Language Understanding и Watson Knowledge Studio также могут использоваться для первоначального аннотирования содержимого. Затем эксперты домена могут аннотировать - или маркировать - сразу несколько фрагментов, удовлетворяющих заданным критериям. Конечным результатом этого шага является набор помеченных данных, основанный на проверенном (и уточненном) наборе намерений. На рисунке 4 показан типичный пользовательский интерфейс для интеллектуального анализа контента, который в настоящее время доступен в IBM Watson Discovery.

Разработка контролируемых моделей машинного обучения для классификации

На этом шаге помеченные данные (то есть фрагменты и намерения) из предыдущего шага загружаются в IBM Watson Studio, чтобы обучить модель машинного обучения классификации фрагментов вызовов. В этом примере, поскольку существует несколько намерений, которые могут возникнуть в ходе вызова, разработана модель классификации с несколькими классами для прогнозирования намерения каждого фрагмента вызова.

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

Кроме того, для каждого намерения будет доступно разное количество образцов, что также создает проблему. Балансировка классов и взвешивание классов - это некоторые подходы, доступные для решения этой проблемы. Кроме того, в зависимости от бизнес-цели выбирается показатель производительности, например точность. Если есть дисбаланс классов, точность не будет хорошим показателем. В этом случае можно использовать расширенные показатели, такие как точность и отзыв на микро- и макроэлементах.

Такие методы, как TFIDF, встраивание и анализ тональности, можно применять с использованием стандартных библиотек и пакетов, доступных в Python. Типичный подход разделения набора данных на обучение и проверку, если он применяется, и использование 5-кратной перекрестной проверки на обучающем наборе, что помогает минимизировать переоснащение, помогая модели хорошо обобщать невидимые данные. В этих случаях обычно используется отдельный набор данных удержания, который можно использовать для выполнения скоринга. Некоторые примеры фрагментов вызовов и прогнозируемого намерения, сгенерированные моделью машинного обучения, показаны на рисунке 5.

Развертывание моделей и управление ими

После того, как одна или несколько моделей машинного обучения были созданы и протестированы в среде разработки в IBM Watson Studio, модели и другие активы проекта, такие как записные книжки, скрипты, наборы данных и т. Д., Могут быть помечены тегами, и их версии можно будет контролировать с помощью встроенной интеграции Git или в один из поддерживаемых внешних репозиториев.

Следующим шагом является создание выпуска проекта в IBM Watson Machine Learning, который содержит активы с версией. В IBM Watson Machine Learning пользователи могут развертывать активы в производственной среде, отслеживать их производительность и переобучать модели по мере изменения производительности модели со временем.

Интегрируйте модели машинного обучения в приложения

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

Продвинутый пример интеграции - это когнитивное приложение, которое помогает агенту:

· Расшифровка аудио в реальном времени и обогащение транскрипции с использованием разработанных моделей путем аннотирования контента с учетом намерений клиента

· Получение контекстно-зависимой справки по обсуждаемым темам

· Привлечение дополнительной поддержки со стороны команды, если во время разговора обнаруживается бедствие

Заключение

В сообщении блога было представлено несколько инструментов и методов, которые можно использовать для улучшения взаимодействия с клиентами путем прогнозирования намерений клиентов в колл-центре или чат-бота, помогая организациям улучшить качество обслуживания клиентов и минимизировать эксплуатационные расходы.

В этой статье представлены компоненты и технологии, необходимые для разработки когнитивных приложений на неструктурированных данных. Такие темы, как внедрение машинного обучения, разработка модели машинного обучения, мониторинг справедливости модели и объяснение решений по модели, будут рассмотрены в будущих сообщениях блога.

Если у вас есть аналогичный вариант использования - или любой другой вариант использования ИИ - и вам нужна помощь, обратитесь в IBM Data Science Elite Team.

Соавторы этого блога: Рикардо Балдуино, Александр Петров и Винай Рао Данден. Представленное здесь решение было совместно разработано авторами блога в сотрудничестве с: Джоном Томасом, Авиджитом Чартерджи и Максимом Аллардом, все из IBM.