In the previous part of the article, we discussed a futuristic Enterprise chatbot that helps the user in many of his decisions. We also discussed the required backend systems that power the Chatbot.
In case you haven’t read the previous article, here it is: “The Future of Enterprise BOTs”
Before we discuss further the front end language systems, let us discuss the simple classification of human conversations briefly. Here the idea is that we need to understand at a very high level what type of conversations are essential in an Enterprise environment.
Source: Types of Conversations by David W Angel
According to the image above, a typical human conversation is classified into :
- Debate : It is a type of conversation that involves formal discussion on a particular topic. In a debate, opposing arguments are put forward to argue for opposing viewpoints. It is a competitive, two-way conversation. The goal is to win an argument or convince someone, such as the other participant or third-party observers.
- Dialogue : It is a type of conversation among participants in which the goal is to exchange information and build relationships with one another. It is a cooperative, two-way conversation.
- Discourse: It is a type of conversation where the speaker/writer deliver information authoritatively to the listeners/readers. It is a cooperative, one-way conversation.
- Diatribe: It is a type of conversation where the parties involved express emotions, browbeat those that disagree, and/or inspires those that share the same perspective. It is a competitive, one-way conversation.
Here we are not talking about the debate and diatribe sort of conversations because we want the BOT to build a human-type relationship with the user. So our primary focus is about dialogue, even though discourse also plays a part in providing valuable information to the user.
In the present times, most of the bots converse more like a discourse than a dialogue where the user asks a particular question, and the BOT delivers information about that. To move the conversation from discourse to a dialogue type conversation in the Enterprise BOT, we need the following systems. (If you are interested to know how to assess if a BOT is conversing like a human, here is an interesting read “How to make chatbots converse like humans”)
- Powerful Natural Language Models: To understand complex queries and mood of the human nature to converse like a human.
- Generative Business Language Engine: To generate human type conversations on the fly based on the processed data.
So, let us explore them…
Powerful Natural Language Models
Before we even make the BOT converse like a human, first the BOT needs to understand the conversations like a human does. It needs to hold the context like a human to fill the missing information in the conversation. To understand like humans, we use Natural Language Models. These Natural Language Models contribute to processing various aspects of the conversation. Some of the crucial aspects of the conversation are :
*Natural Language Modelling (NLM) is one of the most important parts of modern Natural Language Processing (NLP).
- Parsing : Parsing is a process in which the received information is corrected for the more natural understanding of the user’s intention. Generally, a human can parse the conversation in a flash even though the text is not grammatically correct or the voice isn’t clear.
For Example LOL. I luv this joke a lot (Actual statement)
Laugh out loud. I love this joke a lot (Parsed Statement)
- Understanding : In a conversation, each statement after parsed contains much information regarding the intention of the user. Some of the elements in the statement help identify the intention of the user and the others help either to remove the ambiguity or to clarify the intentions. This process of understanding also happens in a fraction of a second in human.
For Example, I want to eat pizza. Here the intention of the user is “To Eat,” and the information which clarifies the intention about what the user wants to eat is “Pizza.”
- Sentiment/Emotional Analysis : It is the process of computationally identifying and categorizing opinions expressed in a piece of text, primarily to determine whether the writer’s attitude towards a particular topic, product, etc. is positive, negative, or neutral. It is important because just identifying the intention of the user doesn’t help to provide accurate information to the users explicitly.
These natural language models are usually built with the following approaches :
- Rules-based : This approach uses a combination of language and grammar rules to follow a specific structure in the conversation. This method has a limitation that humans may skip the structure when they converse. Even though it is not a highly accurate method in Understanding, it helps in Parsing of the data.
- Statistical : This approach does not know the language. It relies on the statistical information of the training data provided to the system. Huge training data is required to predict accurately and provide the elements in the conversation. This approach is mostly used in parsing and sentiment analysis of the data.
- Machine Learning : It is a new approach that makes machines learn to understand on their own with the help of training data (multiple processing devices modelled on the brain). This approach is similar to the statistical approach, but this one includes the feedback system to re-compute the weights assigned based on the data. This approach is generally used in Understanding. In the present times, this is even being used in parsing and sentiment analysis of data.
Even the models with machine learning approaches have limitations. Some of the limitations are :
- When multiple languages are used such as Spanish+English. Parsing of such combination of languages becomes a challenge.
- When the colloquial terms or abbreviations are used such as SEO(Search Engine Optimization) Score, mecretary (male secretary).
- When complex names are used in the conversation such as chemical names, botanical names, diseases, medical symptoms.
- When the complex language is used such as in general purpose searching, or in complex instructions to undertake a job.
A hybrid approach may be employed to reduce some of the limitations in the present language models. However, this approach may not solve all the problems of the rapidly evolving language. There is ongoing research to improve the Natural Language Models to cover a wide range of user queries or requests in different fields.
Generative Business Language Engine
After the Language Models, we focus on the generative business language engine. Even though the generative business language engine uses similar approaches as the above powerful natural language models, it is used for framing of the response to the user, based on various aspects :
- Intention of the User
- Sentiment of the User
- Conversation’s Context
- Data provided by the Analytical Engine
- Possible impact on the Emotion of the User based on the data.
- Personal characteristics of BOT
- User’s Response Customizations, if any.
Taking account of all these aspects in the engine’s response exudes a human type personality to the user. This human touch will not only help the user in an informative way but also helps to build a healthy relationship with the user.
Now the big question is: What is stopping us from building this type of engine in an Enterprise space? The most significant limitation to build this sort of engine is the data in the form of business conversations. Even the best approach in the present times, Machine Learning, requires a massive amount of data to create a good model for language construction. To have that data in place, we need business conversations. In the Enterprise space, most of the daily conversations happening can’t be captured. Very few interactions are captured in emails, even those captured are not in the form of one-one conversation but mostly in brief points.
For Example: For Example Daily morning conversation of COO with his/her Secretary can be contained in an email very briefly but not in an actual conversation way.
This scenario leaves us with no option other than to look for alternatives where we might find the closest data for the Enterprise Related conversations. Some of the training data can be obtained from external sources such as
- Yammer (if the Organisation opts for this social network)
*Data obtained for training from the above sources should take into account about data privacy laws.
Assuming the data problem is solved, the next challenge is how to incorporate all the aspects of the conversation mentioned above in the Generative business language engine. This challenge can be solved by taking a Hybrid approach as that of Powerful Natural Language Models. As said above, I will leave this challenge to the great professors and Ph.D. students of the premier institutions.
After going through all the challenges in each arena for the Futuristic Enterprise Chatbot, we may have questions such as is this even possible in the next decade? I am very much optimistic about the possibility of this Chatbot in the next decade. This BOT may not see the light in huge organizations (Fortune-500 companies) in the next decade but will be adopted rapidly in the medium to small organizations due to their small infrastructure and lesser risk involved. The benefits reaped from this BOT will pave the way for bigger organizations to introduce them to their organizations.
In recent times, there is general news in the media about the growing uses of enterprise chatbots in an organization. Moreover, the good news is that even the C-Suite Executives are understanding the importance of enterprise chatbots and it’s underlying systems and allocating funds to transform their business into an AI-powered one.
Author: Girish Kumar Dandamudi, Solutions Architect at SmartBots.ai