Автор: Навин Наллаперумал
Профиль в LinkedIn: https://www.linkedin.com/in/nallaperumal-k-5b6490129/

Цель и объем

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

Алгоритм

Классификация

  • Классификация - наивный байесовский метод, древовидные модели, логистическая регрессия, случайный лес, нейронные сети.

Скажите, например, Политика по борьбе с мошенничеством Да (мошенничество) или Нет (не мошенничество). Доступны различные алгоритмы, и мы рекомендуем Наивный Байес, поскольку он основан на априорной вероятности.

Чат-бот отвечает с использованием НЛП

Искусственные нейронные сети (слова используются в качестве входных данных для нейронных сетей)

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

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

Выбор алгоритмов интеллектуального анализа текста

  • Тип мошенничества (из обучающей базы), используемый в качестве категориальной переменной Y для моделей классификации
  • Модель мешка слов для классификации вопроса по категории мошенничества
  • Алгоритмы классификации - Наивный Байес, CNN
  • Seq2seq NLP с использованием рекуррентных нейронных сетей для ответов на вопросы
  • Обучите нейронную сеть набором вопросов и ответов
  • Декодирование поиска луча для выбора цепочки ответов, которая имеет наивысшую совместную вероятность

Диалог:

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

Извлечь данные из базы данных или CSV:

  • Подготовьте набор файлов JSON, представляющих файлы CSV, которые вы хотите загрузить. Из файла CSV для каждого намерения следует автоматически создать файл JSON с соответствующим текстом для вопросов пользователя и текстовых ответов.
  • Убедитесь, что файлы JSON созданы с использованием определенной структуры файлов и каталогов.
  • Импортируйте или восстановите из созданного вами ZIP-файла.
  • В последнем обновлении - Dialog Flow принимает намерения быть импортированными из других ботов Dialog Flow.

Разверните чат-бота:

  • Установите виджет чата с Dialog Flow.
  • Получите свои жетоны Dialog Flow.
  • Интегрируйте бота Dialog Flow (api.ai) в Kommunicate.
  • Интегрируйте бота Dialog Flow (api.ai) на сайт.

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

Сопоставление с образцом для классификации запроса:

Многие платформы чат-ботов используют алгоритмы для классификации намерений по совпадающим шаблонам. Но по умолчанию Dialog flow имеет настройку ML 30% (для классификации порога или шаблона соответствия), то есть он используется как показатель достоверности. Если возвращаемое значение меньше порогового значения, будет запущено резервное намерение. Если не определены резервные намерения, никаких намерений не будет.

Шаблон доступен в БД:

Проверьте, доступно ли конкретное намерение в нашем csv / db, если да, дайте соответствующий ответ. (Firebase или внешняя база данных через Webhook)

Перенаправление на агента-человека с использованием «Fallback»:

Откат - когда боты терпят неудачу при разговоре (т. Е.), Боты не могут распознать разговор.

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

  • Перенаправьте результат на человеческое взаимодействие
  • Изящно переориентировать пользователей
  • Будьте наготове
  • Совместная оптимизация (мы можем показать некоторые вики-ленты с последними новостями)

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

Ответ в чате:

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

API диалогового потока (чат-бота) для получения ответа:

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

NLP / NLU, чтобы дать ответ:

Для цели сопоставления алгоритм НЛП найдет совпадение в csv / database (db) и отправит результат на следующий уровень. Этот уровень обрабатывает стемминг, лемматизацию и различные другие алгоритмы (внутренне).

Получить фрейм данных из БД:

Если совпадение найдено, мы должны соответствующим образом изменить ответ (для изменения времен) и опубликовать результат в окне бота. Время сна 0,5–1 секунды (задержка) может быть сохранено, чтобы сделать его интерактивным.

Аналитика намерений и сессий BOT

Аналитика намерений и сеансов также может выполняться с помощью диалогового потока, Намерения - ›Какое намерение выполняется чаще всего. Сколько срабатывает резервных намерений, время ответа агента и т. Д., А также количество выходов. Это можно сделать с последних 7 дней до последних 30 дней. Также есть конкретный вариант на прошедший день.

Показывать в интерфейсе как результат чат-бота:

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

Dialog Flow также обеспечивает удобную платформу интеграции. Он также поддерживает несколько языков.

Подробная блок-схема: