Bot essentials 9: Intent classification and the NLU deepdive-FOS
The introduction of pattern matching, stemming and lemmatisation techniques to Generation 1 bots led to bots being more “intelligent”. While they still remained as more of lookup bots or pattern matching bots, the advances and introduction of algorithms that help improve the interaction experience helped bots mature more on its evolutionary roadmap. Let's look into FOS & intent classification.
FOS and Intent classification
If we could decompose the FOS or figures of speech from the question that are carried in the question that the user asks the bot, we could optimise the pattern matching algorithms for better and faster results. The decomposition of the nouns and verbs, specifically active verbs from NLP or Natural language Processing libraries provides for a more optimised level of decomposition of the questions being asked to the bot.
Adding intent classification by Naïve Bayes algorithms added to the optimisation of the “intelligence” journey of the chatbot. The algorithm helps with classification of the terms carried in the input and assigns an intent based on the weights of each term and its classification.
We can then search and respond based on the intent of the question, and intent classification added more value to the interactive conversation.
Neural nets and bots
An exciting field of machine learning is the application of neural networks to decision or determination science. Think of the circles above as decision points that help the flow move left or right. When data is input into the neural network, the neural paths get established by training the network. Let’s imagine you have a picture of a bird, and you want to train the network to recognise a bird every time it sees a picture of the bird. You could go and program the network for a classification tree based on etymology of the species or based on physical characteristics.
This can be done by asking different levels of questions. As if you were playing a game of 20 questions like we did when we were kids! So go on... Guess the object I'm thinking of by asking upto 20 questions.
Does it have...
- 2 legs?
- 2 eyes?
Each of these questions become a classifier
Or reinforce a question in the propagation of the neural network. We answer the questions by decomposing the picture, identifying key elements and building an element map. Once the network propagates through its network nodes or questions, the right set of determinants lead to the highest probable answer to the question that is being asked to the neural network
Is the picture a bird?
The neural network based on the training of various bird pictures will be able to identify a picture of a bird once it comes across, based on the training it has received.
Neural Networks for Natural Language Processing
As described above, we can decompose a sentence in its basic components. We use each word and its intent to train the network. And when it encounters a new sentence-
- The decomposition of the sentence into words, and
- The stringing of the words together
Both can answer for the intent of the sentence when fed to a neural network.
We will talk about NLU and its various aspects and applications in the blogs to follow. Stay tuned. Also do check out Engati for all your basic and advanced bot needs. It is a platform that lets you build bots out of the box. That too without the need to master the complexity above or learn programming. All you need to know is your need and nature of business and anyone can build a bot on Engati.
In fact, our in-house experts will help you through the entire process. From building the bot to collecting customer data. Everything. All of this will be automated so that you focus on your business.
Register with Engati to start building your free chatbot!
Engage and retain your customers using Engati. Try it for free!Set it up in 7 mins!
Engati powers 45,000+ chatbot & live chat solutions in 50+ languages across the world.
We aim to empower you to create the best customer experiences you could imagine.
So, are you ready to create unbelievably smooth experiences?