Natural Language Processing is divided into some processes such as it has to follow the speech recognition first then the natural language understanding or NLU occurs on that particular speech recognized with the help of Natural Language generation or NLG for the responses for understanding speech and this generated response becomes the output for the user.
For example, if you use Google assistant and ask that ‘what is the day today’, First the Google Assistant will receive your speech all the voice format and convert it into the text this is also called automated speech recognition. This is the first step in natural language processing and when it has the specific keywords from the speech that it has recognized from your voice which it will club it in a batch and try to match it with the previous data set. This is possible by storing the huge data in its server which has been taken with the help of an artificial neural network and when the perfect match for your current text from the speech has been found then the response towards the recognized text has to be generated for this process. Example it may have understood that you are asking which day of the week it is now it can use Google search engine and with the help of your location and search history it can find out the answer which is most relevant to you depending upon where you are living right now, this is also called natural language generation or the generation of the response for the natural language understanding and the output will be in a format of speech these all three processes are what makes natural language processing work.
The part of natural language understanding or NLU is one of the difficult problems of natural language processing. It may be easier to understand the process that it can do but it is one of the toughest problems artificial intelligence has to deal with.
In natural language, understanding has to deal with various type of ambiguity such as lexical, syntactic, semantic, and pragmatic all this ambiguity has to be understood by a natural language understanding for the processing and understanding of the text that is provided with the help of the speech this ambiguity are similar to the function that a compiler does in processing a program.
Let’s see what’s in the lexical ambiguity with the help of an example for example if you say to Google Speech Recognition that “the glass of water is full” then the words in the sentence are tokenized or separated and are evaluated on basis of their meaning such as the glass, it can be the glass that we use in a mirror or it can be the glass which is used to drink water so the understanding of this part is a complicated task. This task of understanding has to be made with the help of a complete sentence. This evaluation process requires a deep learning model that is trained with the help of neural networks.
Syntactic ambiguity comes with the challenge of the structure of the sentence. For example, sometimes we used to make mistakes in our sentence structures or make the structure in such a way that it is intuitively clear to us but may not be clear to a machine for example “Old man and woman in the house”, there may be a mistake in the sentence, for example, the ‘old’ word should have been placed before women as it is placed before man it may be clear to us as a human that old is referring to both men and women, but the machine will require information that whether it is old man and old woman or it is old man only. It can be with a perfectly trained deep learning model with enough examples that it has been trained with the help of neural networks.
Semantic ambiguity deals with the different kinds of the meaning of the same sentence. Like the ‘child ate the food while he was watching TV.’, so in this sentence, it is clear to a that each child has been watching TV while he is eating the food simultaneously but when the same sentence is given to the machine for processing it is not able to identify whether the food is watching the TV or the child is watching the TV and this causes semantic ambiguity where there are many types of relationships between various batches of the word. We can understand because we can perfectly relate the child with TV and food but for a computer to do the same it is quite a task.
After semantic ambiguity comes to the pragmatic ambiguity which deals with the intention of the sentence for example ‘he is going’, this sentence can be understood by us with the other nonverbal communication or from the past experiences or our involvement but for a machine to identify what is the actual meaning of that particular sentence and how it can relate the meaning and find the best possible completion for the incomplete sentence and understand by understanding it is again a tough challenge.
The four types of ambiguity that we have discussed in the natural language understanding make it a very difficult task in natural language processing and there are various tools that it uses in processing natural speech.
natural language understanding is completed then natural language generation comes into the process and in natural language generation, it will deal with replying to the user the answer which is most relevant to his query. The generated response should be conversation and intelligence. For example, if you ask Google Assistant if Shopping nearby places and it provides you with the list of malls around your location then this will be considered as a natural language generated part.
Natural language generation also deals with structured data for example when it has opted for the right words to be replied to in the conversation and the particular sentence is prepared for the response to the user then the response can also be in the format of a structured box. For example, if you ask ‘how will the weather be for the next seven days’ then it can provide you with a structure format data along with the speech response that it has been done with the help of natural language understanding this response of the structure data can be taken from various websites that provide the data.