Steven Harris at Odigo and Stuart Dorman at Sabio explain some of the algorithms chatbots use.
What Algorithms Do Chatbots Use?
Stuart Dorman (Sabio)
There are several algorithms used in the process of building and developing and running a chatbot.
The first thing you need to do is if your chatbot is voice enabled, you need to understand natural language speech and convert that to text. So speech recognition is the first step in that process.
The second stage in the process is then taking that and applying natural language processing, which is a separate set of algorithms that is designed firstly to interpret the intent, i.e. the reason why the customer’s contacting, and then secondly, to extract useful pieces of information from the conversation, often called entities.
So these could be things like names, postcode, addresses, anything that’s useful to driving the conversation forward into achieving the outcome.
And also within that, you might have specific taxonomies that relate to your industry. So there might be certain language that’s used if you’re an insurer or a travel company or something like that. So the third step in the process is dialogue management. And this is where you create the conversation and guide the customer towards the outcome.
So this is where you design the questions that you’re going to ask and the responses you give back to a certain question. Often machine learning is used here, where you can use a set of training data so you can give some sample questions, for example.
The machine learning algorithms can then use that as a basis to understand the hundreds of thousands of different ways that somebody could ask a question, without you having to preprogram every single one of those steps.
And then the last step in the process is to take that information. If you’ve got a voice-based chatbot, feed the information back to the caller through synthetic speech or through text to speech.
And again, increasingly, we see machine learning used here to create much more natural sounding voices to play back to a customer. To pick up on different ways of intonation, different ways of expressing voice, etc. different ways of finishing the sentence off, to make it sound as natural as possible.
So that’s just an example of some of the algorithms used in a typical voice or chatbot.
Steven Harris (Odigo)
So when you give a chatbot a query, it needs to understand and have confidence that it understands that query. And chatbots use algorithms to do that. There are different types of algorithm with different strengths.
So, for example, chatbots that need to deal with a wide range of queries have to be good at classifying text and words into specific categories, so they can narrow down the possible range of responses.
A popular algorithm would be something like Naive Bayes, and that’s also good at determining how confident the chatbot is in its prediction.
There are other algorithms that are good at identifying the subject of a query, or neural networks, for example, that are good at processing text.
Natural language processing is absolutely key for chatbots, because it determines how the bot understands and interprets words. But it also aims to learn the intricacies of human language, including grammar, sentiment, intent and so on.
When you implement a chatbot, you need to be very clear on its purpose and that way you can choose one that uses the most suitable type of algorithm.
If you are looking for more great video insights from the experts, check these out these videos next: