Создание рекомендаций по намерениям для вашего чат-бота

И как определить пробелы в данных обучения и исправить это

Введение

… а также, как это сделать с помощью ИИ для улучшения ИИ в разговоре

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

Из этого примера Образец навыков работы с клиентами видно, что различные намерения заботы связаны друг с другом.

Первым выражением намерения обычно является приветствие, затем прощание, а затем светская беседа.

Главное - точно сегментировать намерения и не допускать конфликтов. И не иметь слишком много или слишком мало намерений.

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

Это задача - иметь детализированные намерения, но не слишком детализированные. Верно и обратное.

Намерение Рекомендация

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

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

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

Ниже приведена выдержка из таблицы путешественников, спрашивающих о времени полета.

Этот список фраз был добавлен в качестве источника данных для навыка IBM Watson Assistant. В дополнение к этому, рекомендуемые намерения и примеры намерений могут быть получены из подключенных живых помощников и файлов CSV.

Уотсон выделил девять различных намерений из исходных данных, которые сосредоточены вокруг различных способов формулирования вопроса пользователями. Из автоматически сгенерированных рекомендаций видно, как результаты должны быть представлены пользователю.

Например:

  • Расписание,
  • или список,
  • или время для конкретного полета.
  • Также авиакомпания и день связаны.

Источник данных

В этом примере источником данных является Информационная система для авиаперевозок ATIS. Существуют различные группы данных, но мы рассмотрим только группу atis_flight_time. Это пятьдесят пять записей.

Тестовая среда

Среда тестирования - IBM Watson Assistant Plus. После того, как мы загрузили данные, Watson оценивает высказывания пользователя и определяет общие проблемные области, о которых часто упоминают клиенты.

Затем Watson Assistant отображает набор дискретных групп связанных примеров пользователей-кандидатов, которые отражают тренды потребностей клиентов. Группы настолько детализированы по охвату, что вы можете добавить отдельные сгруппированные примеры пользователей-кандидатов с тем же намерением.

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

Загрузка исходных данных

В основной консоли Watson Assistant выберите вкладку Источники рекомендаций. Вы попадете в область, где вы управляете своими исходными данными.

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

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

Список высказываний можно извлечь из стенограмм чата центра поддержки или других связанных записанных разговоров с клиентами внутри организации.

Вам нужно будет выбрать тип источника рекомендаций; у вас не может быть и того, и другого.

Добавленные вами исходные данные рекомендаций используются для получения намерений и примеров рекомендаций по намерениям.

Это важная функция, поскольку данные сгруппированы по намерениям. И в рамках каждого из этих определенных намерений Watson Assistant составляет список, который представляет собой пользовательские примеры.

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

Если просто взглянуть на то, как Watson Assistant организует данные, это уже породит множество идей и идей по организации данных.

Примеры намерений

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

При изучении намерения, даже такого простого, как #Cancel, когда пользователь может отменить любое текущее действие ... И поиск рекомендаций по примерам пользователей не дал результатов.

Это точный результат, поскольку ни одна из загруженных справочных данных не связана с намерением #cancel.

Опять же, цель состоит в том, чтобы точно увеличить охват намерения и, следовательно, обогатить модель.

Когда мы выбираем намерение, связанное с доступными данными обучения, получаются результаты.

На изображении ниже вы можете увидеть рекомендуемые фразы, которые можно выбрать и добавить в намерение.

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

Из примеров также видно расположение и возможные значения сущностей. Сущности могут быть выбраны и определены в примере намерения.

В приведенном здесь примере два слова «san» и «francisco» можно определить как одну сущность и присвоить типу сущности city. Возможно, может быть назначена даже конкретная сущность, связанная с контекстом города отправления или города прибытия.

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

Вывод

Процесс создания диалогового пользовательского интерфейса необходимо тщательно планировать и выполнять.

Неправильный запуск расстроит пользователей и приведет к длительному процессу улучшения чат-бота.

Данные важны, также важна используемая структура, и возможность масштабирования по запросу имеет решающее значение.

Подробнее здесь…