Natural-language understanding is hard for a computer. Our beloved language looks like just a bunch of symbols to a computer, ultimately a long series of 0s and 1s. The meaning we associate with words, phrases, sentences, or entire compositions is grounded in human experience. We use language to capture and communicate human knowledge that makes sense only because of how the symbols in our language are grounded in a common experience.
For example, what does the word bat mean to you? I imagine lots of ideas are flying through your head, and you are wondering about the context in which these words are used and linking them to your personal experiences. As I give you more context, you may start to zero in on its intended meaning.
How about this: "The bat flew through the window."
Now at least you know that I am using bat as a noun and did not intend it to be a verb, as in "to bat around some ideas." But am I referring to a flying animal of the suborder Microchiroptera, or to a heavy stick used to hit a ball? More context is needed. If I added "and then Johnny came running home," then what would you think?
Our example with a bat is an easy one. Consider the word interesting. What does that conjure up for you? For me it may be very different, and yet we can both agree on the emotional or psychological response interestingness creates for people regardless of what they find interesting. This is uniquely human.
Human language is very rich. It can express the same idea in almost an infinite number of ways. Consider that these statements for purposes of diagnosis may be equivalent:
The patient could not get anything down without pain.
The patient demonstrated persistent difficulty swallowing.
And that those statements contradict these other two:
The patient eats without discomfort.
The patient shows no signs of dysphagia.
Computers are not humans. They cannot map words and phrases to human experience and quickly look for the right contextual clues to understand precisely what is intended. All they have are the symbols, not their human meaning.
The challenge for Watson, and more generally for natural-language-processing technologies, is to program computers to do a better job at understanding our language. Computers can process huge volumes of content quickly without getting tired. We are not that fast or enduring. The problem for computers is that so much of human knowledge is in natural-language content—from textbooks to blogs. It is not enough to deliver lists of thousands of documents that contain a few keywords. To help us, computers need to give us precise answers with meaningful justifications. They need to communicate in our terms rather than demand that we communicate in theirs. If we could program computers to more precisely interpret natural language the way we do, then we could leverage their speed to give us more precise and better justified responses based on enormous resources of knowledge that are simply out of our reach. This capability can dramatically advance business, society, and science in so many different areas.
The Watson you saw on Jeopardy! was built on decades of research and used a novel architecture and methodology for combining and advancing NLP and other AI techniques to deliver remarkable performance at a natural-language question-answering task. But it just scratched the surface. More work is needed to get computers to where they can deliver precise responses tailored to our information demands from the whole of human knowledge, whether it be in health care, science, education, or finance.
Return to Ferrucci's profile.
Read a Q&A with David Ferrucci.