The first application of AI that we will explore is natural language processing. You have already seen one example of natural language processing when you chatted with the ELIZA system. Of course this system was not very sophisticated since it was only able to echo questions back as responses.
We can see some of the difficulties of natural language processing when we compare natural languages with computer programming languages. The latter are designed to be unambiguous so that the meaning of a statement can be derived primarily from the syntax of the statement. For example, the statement below has only one meaning to a computer:
< 100) Then
However, natural languages are not nearly so straightforward. Many statements in natural languages have meanings that are greater than the sum of their words. Even the same statement can have different meanings in different contexts. For example, the simple question "Where have you been?" can be meant as a query regarding your previous location or as a scolding for being late. The difference depends on the context of the question. These ambiguities in natural language make it difficult for computers to understand our speech.
In order for a computer to understand a natural language statement, the computer must understand the syntax, semantics, and context of the statement. Syntax analysis corresponds to recognizing the words of the statement and their grammatical roles (i.e. subject, verb, object, etc.). Semantic analysis corresponds roughly to understanding the relationships between the words. Questions such as "Does the subject or the object receive the action?" and "Who or what is responsible for the action?" reveal the semantics of a statement. Contextual analysis involves comparing a statement with its context to determine its meaning. For example, the sentence "The bat slipped from his hand" has two different meanings for a cave explorer and a baseball player [Brookshear 1997].
Considering these levels of analysis, we can see that the ELIZA program only performs syntactic and semantic analysis. That's why the program can not actually answer your questions. It only rearranges the words of your statement into a new question. ALICE [Wallace 2000] is a more sophisticated chat program which performs some limited contextual analysis. Try chatting with ALICE by clicking the button below. The program will open in a new browser window.
Some more practical applications of natural language processing are language translation, natural language database queries, and speech recognition. For an example of language translation, visit the Systran Software web site. Their site provides a translation utility that translates English, German, French, Spanish, Italian, and Portuguese. Try translating a few English sentences to another language, and then translate them back to English to see how intelligent the computer translation is.
For an example of natural language database queries, visit the Ask.com web site. This site allows you to ask questions in typical English form such as "What is the weather like today?" or "How is the stock market doing?" The computer parses the question to determine your subject of interest and then suggests relevant web sites to visit. Try asking a few questions and see if the computer can give you a relevant answer.
Voice recognition software is relatively new to the AI domain because personal computer hardware has only recently become powerful enough to support such processing. The goal of voice recognition is to interact with a computer using spoken commands. While it would be great if we could all dictate letters and papers to our computer rather than typing, this goal is still a way off. While the current technology may be able to recognize the sounds that are spoken, these sounds may map to several different words. For example, the words "to", "too", and "two" all map to the same sound. Sophisticated grammatical analysis is needed to determine from the context which is the correct word to display.
If you are interested in trying some voice recognition software, Philips provides a free dictation utility for the Microsoft Windows operating system. You will need a computer equipped with a sound card and microphone to use the software.
- Brookshear, J. G. (1997), Computer Science: An Overview, Fifth Edition, Addison-Wesley, Reading, MA, pp. 384.
- Wallace, R. (2000), "ALICE chat robot," http://www.alicebot.org.