Human Language
Humans communicate through language which we process all the time. Our brain keeps on processing the sounds that it hears around itself and tries to make sense out of them all the time.
The sound reaches the brain through a long channel. As a person speaks, the sound travels from his mouth and goes to the listener’s eardrum. The sound striking the eardrum is converted into neuron impulse, gets transported to the brain and then gets processed. After processing the signal, the brain gains understanding around the meaning of it. If it is clear, the signal gets stored. Otherwise, the listener asks for clarity to the speaker. This is how human languages are processed by humans.
Computer Language
The computer understands the language of numbers i.e. binary digits - '0' and '1'. Everything that is sent to the machine has to be converted to numbers. And while typing, if a single mistake is made, the computer throws an error and does not process that part. The communications made by the machines are very basic and simple.
Now, if we want the machine to understand our language, how should this happen? What are the possible difficulties a machine would face in processing natural language?
Let us take a look at some of them here:
1. Arrangement of the words and meaning
There are some rules in human language to provide structure to a language. This is the issue related to the syntax of the language.
Syntax: It refers to the grammatical structure of a sentence.
Semantics: It refers to the meaning of the sentence.
When the grammatical structure is present, we can interpreting the message clearly. Now we also want to have the computer do this. Besides the matter of arrangement, there’s also meaning behind the language we use. Human communication is complex as there are multiple characteristics of the human language that might be easy for a human to understand but extremely difficult for a computer to understand.
2. Analogy with the Programming Language
->> Different syntax, same semantics
Different syntax can have same semantics.
For example- "2+3 = 3+2"
Here the way these statements are written is different, but their meanings are the same that is 5.
->> Same syntax, Different semantics
Same syntax can have Different semantics.
For example- "2/3 (Python 2.7) ≠ 2/3 (Python 3)"
Here the statements written have the same syntax but their meanings are different. In Python 2.7, this statement would result in 1 while in Python 3, it would give an output of 1.5.
->> Perfect Syntax, no Meaning
Sometimes, a statement can have a perfectly correct syntax but it does not mean anything.
For example- "Chickens feed extravagantly while the moon drinks tea."
This statement is correct grammatically but does this make any sense? In Human language, a perfect balance of syntax and semantics is important for better understanding.
Other Example- "Cars paint cautiously, and the doctors turn west."
3. Multiple Meanings of a word
Some sentences have multiple meanings which is extremely difficult for a computer to understand.
Example 1- "His future is very bright."
"Today the Sun is very bright."
Meaning - In the above sentences, the word bright is playing a different role. This kind of situation can be easily handled by humans using their intellectual power and through their language skills.
Example 2- "His face turns red after consuming the medicine."
Meaning - Is he having an allergic reaction? Or is he not able to bear the taste of that medicine?
Example 3- "His face turned red after he found out that he took the wrong bag."
Meaning - Is he feeling ashamed because he took another person’s bag instead of his? Is he feeling angry because he did not manage to steal the bag that he has been targeting?