What is Natural Language Processing (NLP)? And what are the different components and application areas of Natural Language Processing?
Natural language processing (NLP) is the branch of computer science in general and artificial intelligence (AI) in particular concerned with enabling computers to understand text and spoken words in the same way humans can. And it combines computational linguistics with statistical, machine learning, deep learning and data analytics models. Furthermore, these array of technologies enable computers to process human languages in the form of text or voice data under the auspices of understanding its complete and full meaning as per the writer’s or speaker’s intent. NLP is consisted of Natural Language Understanding (NLU) and Natural Language Generation (NLG) concepts.
Some of the common NLP tools and techniques include the following;
- Apache OpenNLP
- MonkeyLearn
- Intel NLP Architect
- Aylien
- Unbable
- IBM Watson
- Google Cloud NLP API
- Amazon Comprehend
- Natural Language Toolkit (NLTK)
- Stanford Core NLP
- TextBlob
- SpaCy
- GenSim
Some application areas of NLP include the following:
- Text summarization
- Questions answering
- Sentiment analysis
- Intelligent document processing
- Speech recognition
- Machine translation
- Spam detection
- Language detection
- Text classification
- Customer feedback analysis
- Information extraction/retrieval
The main components of NLP include:
- Natural Language Understanding (NLU)
- Natural Language Generation (NLG)
- Morphological and Lexical Analysis
- Sentence Segmentation
- Syntactic Analysis
- Word Tokenization
- Semantic Analysis
- Stemming
- Discourse Analysis
- Lemmatization
- Pragmatic Analysis
- Stop World Analysis
- Dependency Parsing