Natural Language Processing (NLP) is the process of computer analysis of input provided in a human language (natural language), and conversion of this input into a useful form of representation.
The field of NLP is primarily concerned with getting computers to perform useful and interesting tasks with human languages. The field of NLP is secondarily concerned with helping us come to a better understanding of human language. The input/output of a NLP system can be 1) written text 2) speech. We will mostly concern with written text (not speech), to process written text, we need: lexical, syntactic, semantic knowledge about the language, discourse information, real world knowledge. To process spoken language, we need everything required to process written text, plus the challenges of speech recognition and speech synthesis. There are two components of NLP.