Natural Language Processing (NLP) is something you do every second of every waking minute; you just don't consciously think about it. You process natural language whenever you hear someone speak, or when you read a piece of text. Your brain is processing the string of words and making sense out of it. It might not sound like rocket science; however it is an extremely complex process of computation, and one that the human brain does much more effectively than any computer.
We can see many examples where computational linguistics would help create a more productive interface between man and the machine. People often only think of this in terms of speech recognition, however if you consider that so much of today's communication is now via text (e-mail, instant messaging, discussion forums, e-meetings, chat rooms,etc.), this opens up a much broader set of applications that could benefit from linguistics.
Take the Internet, which has seen a meteoric rise over the last decade, as just one example of where technology can have a significant impact on our lives. It has the potential to change the way we think, how we communicate with each other, how we make decisions, and in general how we live. However, in the case of the Internet it has one stumbling block… it is not particularly smart when it comes to understanding us, the user. It doesn't understand our language and this lack of comprehension can be frustrating at times.
How many times have you asked your favorite search engine a very simple question, and instead of getting a simple answer, it returns you thousands of search results, each with only a fleeting relevance to the actual question you asked? You then fumble around with the search query in the hope that eventually you will hit on the combination that gets you that magic result. How nice would it be if you could actually enter real natural language, not just a string of arbitrary keywords? What if the search engine really understood the meaning of your question?
But if we limit our imagination to search, then we have missed the point. The real challenge is to make all applications "language aware" and to allow them to analyze information "on the fly" to help them better serve us. If NLP was easily integratable into any software application, if it were fast enough so that it could process information real-time, and if it could be easily customized and personalized to each application user, then, and only then, would it really be able to change the face of software.
So, in summary, while computers may never have the level of comprehension of natural language that we humans do, they can do a much better job than they currently do today. Computers have a distinct advantage in their ability to process large volumes of information at high speed and therefore, if we can teach them to be more linguistically intelligent, then we have a game changer whose impact may surpass that of the internet itself. In fact, Tim Berners Lee's vision for the internet has not yet been realized and this injection of linguistic intelligence is a key factor in achieving a truly autonomic semantic web, but clearly the potential extends beyond the internet into the enterprise, the home, our cars and ultimately into every aspect of our daily lives. |