Bot Talks: разговоры на основе намерений и потоков

Google искусственный интеллект Microsoft NLP

Bot Talks: Intent-Based vs. Flow-Base Conversations

The evolution of bot technologies has helped to drive a revolution in natural language processing (NLP) and natural language understanding(NLU) technologies . Just a few years ago, NLP-NLU technologies were confided to the academic circles. Today, NLP-NLU stacks have become one of the pillars of artificial intelligence(AI) platforms.

Несмотря на то, что в последние годы появилось много инноваций NLP-NLU, внимание рынка по-прежнему сосредоточено на платформах, выпущенных такими действующими лицами, как Microsoft, Facebook, IBM, Google или Amazon. С этой точки зрения такие платформы, как как Wit.ai от Facebook, Conversation Service Watson, Language Understanding and Intelligence Service от Microsoft или Google NLP API привлекли большое внимание разработчиков и клиентов.Часть этого внимания основана на том факте, что многие из этих стеков интегрированы с платформами ботов, такими как Facebook Messenger, Microsoft Bot Framework или Google Allo.

Despite the excitement about bots and NLP-NLU stacks, it is important to recognize that the majority of those technologies are in very early stages when comes to replicate the sophistication of human conversations. With a couple of exceptions, most NLP-NLU technologies are focused on determining the intent and object of isolated sentences in a conversation. However, analyzing natural language sentences in the context of broader conversations is still a work-in-progress are for most NLP-NLU technologies. Using AI terminology, the current generation of NLP-NLU stacks are enabling intent-based analysis capabilities but they should gravitate towards powering flow-based analysis models.

Intent-Based Analysis

Цель анализа на основе намерений состоит в том, чтобы определить сущности и намерения предложений естественного языка.Например, если мы проанализируем следующее предложение: «Я хотел бы записаться на прием к доктору», алгоритм НЛП, основанный на намерениях, определит намерение предложение как «запись на прием», в то время как основной объект остается «Доктор».

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

State and Context

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

Flow-Based Conversations: A State Machine NLP

Flow-based analysis is the next logical evolution of NLP techniques. Flow-based models while extend intent-based algorithms by combining multiple utterances in a state machine model that imitates a conversation flow factoring in the appropriate state and context. Each state of a flow-based NLP model will leverage intent-based analysis techniques and will determine the next stage based on the outputs. Using flow-based analysis, we can model a conversation using a state machine model which can enrich the nature of conversations between users and bots.

Flow-based analysis is far from being a theoretical excursive. Platforms such as Wit.ai are already doing some very impressive work in this area.