Teneo uses a hybrid model when understanding language. This means that in Teneo you can mix machine learning algorithms and linguistic conditions for Natural Language Understanding (NLU). This approach gives you both the power of machine learning and the precision and linguistic scalability that linguistic conditions provide.
One of the biggest advantages of using machine learning algorithms is that you can use them without needing linguistic skills. When using a classifier for example, you don't need to exactly understand the characteristics that define what an input is about. You can focus on collecting example inputs for the subjects you want to cover and once you have trained a model using that data, you sort of let the model do its magic. That makes it relatively easy to train a system to understand natural language without needing linguistic skills.
But this advantage can also be a curse. A machine learned model is a black box and it can be difficult to intervene when a model gets something wrong.
This is where the advantages of the linguistic model come in to play. When using a linguistic approach, you create a condition that looks at the words, their order, synonyms, common ways to phrase a particular type of question etc. In other words, you look at the linguistic patterns of inputs and you capture them in what we call a 'language condition'. The advantage of this approach is that you have full control over the language understanding. A human can read and fine-tune the conditions where needed.
As you can see, both approaches have pros and cons but in Teneo you don't have to choose between these approaches, you can use them both. You can use class triggers to recognise intents using machine learning and syntax triggers that use language conditions to recognize inputs where specific linguistic characteristics matter. How you combine both concepts is all up to you and the requirements that you have for your bot.
This section will explain everything about language understanding in Teneo, from using the hybrid model to creating your own language conditions.
Was this page helpful?