Natural language understanding (NLU) is a branch of
artificial intelligence (AI) that uses computer software to understand
sentences in text or speech format. NLU understanding of natural human
languages enables computers to understand commands without using formalized
syntax of computer languages and for computers to communicate back to humans in
their own languages. NLU is a challenging subfield of NLP.
The main drive behind NLU is to create chat and speech
enabled bots that can interact effectively with the public without supervision.
NLU is a pursuit of many start up and major IT companies. Companies working on
NLU include Medium's Lola, Amazon's with Alexa and Lex, Apple's Siri, Google's
Assistant and Microsoft's Cortana. There’s a
fast-growing collection of useful applications derived from this field of
study. Below are few of them:
- Spell Checking, Keyword Search, Finding Synonyms
- Extracting information from websites such as: product price, dates, location, people, or company names.
- Classifying: reading level of school texts, positive/negative sentiment of longer documents.
- Machine Translation.
- Spoken Dialog Systems.
- Complex Question Answering.
Problems in NLU
- Ambiguity Many of the things we say can be interpreted in more than one way. This ambiguity sometimes results in miscommunication between people and is one of the primary problems in programming computers to understand natural language.
- Imprecision Concepts often are not described with precision. Your ability to understand what is being said may rely on your familiarity with a situation. Consider the following sentences:
- Incompleteness We do not always say all of what we mean. Because we share common experience, we usually can omit many details without fear of being misunderstood; we assume that our listeners can “read between the lines.”
- Inaccuracy People usually can understand what they are told, even if is not structured according to certain rules they know. Errors like
- Spelling errors.
- Ungrammatical constructions
- Incomplete sentences
- Improper punctuations
- I have been waiting in the doctor’s office for a long time.
- The crops died because it hadn’t rained in a long time.
- The dinosaurs ruled the earth a long-time age.
If you read a story that includes these sentences and then someone asked you about the length of the wait in the doctor’s office. You might respond that it was no longer than a few hours because you are familiar with the concepts discussed in these sentences. Without the conceptual familiarity, a computer would not be able to differentiate between the three different lengths of time represented by the same phrase “a long time”.
"John went out to a restaurant last night. He ordered steak. When he paid for it, he noticed that he was running out o money.”"
Did John eat the steak? Although it is not stated explicitly in the story, we probably assume that he did; after all, why else would he have paid for it? Your expectations of likely events in that particular situation allowed you to understand information that was not included in the text. To be able to comprehend incomplete information, a computer must possess the same kind of situational expectations.
Types of Ambiguities in NLU
Following are the main types of ambiguites that usually occur in NLU- Lexical Ambiguity Words have multiple meanings. For example,
- Syntatical Ambiguity The ambiguity caused by the structure/syntax of the sentence is called syntactic ambiguity. Consider the following sentence.
- Unclear Antecedents We frequently use pronouns in place of previously used nouns.For example,
"I saw a bat.
Now the word batmeans a flying-mammal or a wooden-club or saw in past tense of "see"(to cut with a saw).Without knowing something about the characteristics of both kinds of bat and saw, a computer could not determine which kind of bat or saw is meant in each sentence.
I hit the man with the hammer.
How do you interpret this sentence? Did I pick the hammer and hit a man, or did I hit a man who was holding a hammer? Unless it is able to understand the context in which the sentence appears, a computer may be unable to determine the intended meaning.
Aslam hit Akram because he sympathized with Nadeem.
Is Aslam or Akram the antecedent of “he”? In other words, who sympathized with Nadeem? As in the case of syntactic ambiguity, you cannot determine the antecedent of “he” without establishing a context for the sentence.
Solutions to NLU Problems
- Context One way that we resolve linguistic ambiguity is by understanding an idea in context. For example, consider the following narrative.
- Familiarity We tend to identify with situations that are familiar to us, making it easier to understand language that deals with those situations. For example,
- Expectations Through our experiences, we have come to expect certain things in certain situations. As an illustration, select the ending that is most likely to complete the following narrative.
There were two men blocking my escape. One held a hammer; one had nothing in his hands. I knew that I could not hit both of them. I hit the man with the hammer.
This narrative ends with the ambiguous sentence “I hit the man with the hammer”. Because the sentence is presented here in context, you probably had no trouble determining its meaning.
- I have been waiting in the doctor’s office for a long time.
- The crops died because it hadn’t rained in a long time.
- The dinosaurs ruled the earth a long-time age.
The phrase a long time ago in above sentences is giving different meaning in each sentence. Staying in a doctor's office for a long time is different from the phrase in the second or third sentence. We can only differentiate phrases when we will be familiar with all the situations.
John went to a restaurant and ordered a steak. When the waiter brought his order to the table, John:
a. Recited the Gettysburg Address.
b. Ate the steak.