Semantic similarity methods for semantic parsing
Natural language allows us to express the same concept in different ways and with different words. Every language has synonyms and semantically related words.
As an NLP developer, while developing a semantic parser for a chatbot application, text classification, or any other semantic application, you should keep in my mind that users use a fairly wide set of phrases and expressions for each intent. In fact, if you're building a chatbot by using a platform such as RASA (https://rasa.com/) or on a platform such as Dialogflow (https://dialogflow.cloud.google.com/), you're asked to provide as many utterance examples as you can provide for each intent. Then, these utterances are used to train the intent classifier behind the scenes.
There are usually two ways to recognize semantic similarity, either with a synonyms dictionary or with word vector-based semantic similarity methods. In this section, we will discuss both approaches...