I have already covered few fundamentals of NLP in my previous article :
Where we understood what is NLP, Its types and some of it’s modern age implementation. Today we will get into some technical nitty-gritty of NLP. Before that lets refresh our memories and cover the basics again so that right context is set for the technical discussion of NLP Programming
When natural meets artificial, machine comes to life as if it is a real human in action.
NLP Basics Revisited :
What Is NLP ?
It’s a stream of Artificial intelligence where machine meets human language giving them words to communicate with humans. It involves intelligent analysis of written language using NLP techniques to get insights from set of textual data like
- Sentiment Analysis
- Information Extraction & Retrieval
- Smart Search etc…
NLP Components Types :
NLP is classified basically into two major components
Natural Language Understanding (NLU)
- Mapping the given input in natural language into useful representations.
- Analyzing different aspects of the language.
Natural Language Generation (NLG)
It is the process of producing meaningful phrases and sentences in the form of natural language from some internal representation.
NLP Technical Glossary :
- Phonology − It is study of organizing sound systematically.
- Morphology − It is a study of construction of words from primitive meaningful units.
- Morpheme − It is primitive unit of meaning in a language.
- Syntax − It refers to arranging words to make a sentence. It also involves determining the structural role of words in the sentence and in phrases.
- Semantics − It is concerned with the meaning of words and how to combine words into meaningful phrases and sentences.
- Pragmatics − It deals with using and understanding sentences in different situations and how the interpretation of the sentence is affected.
- Discourse − It deals with how the immediately preceding sentence can affect the interpretation of the next sentence.
- World Knowledge − It includes the general knowledge about the world.
Natural Language Processing Libraries : For Developers :
NLP Libraries :
There are many popular third party open source libraries which developers can use to build their NLP based Projects Viz..
- Natural language toolkit (NLTK)
- Apache OpenNLP
- Stanford NLP suite
- Gate NLP library
Natural language toolkit (NLTK) is the most popular library for natural language processing (NLP). It was written in Python and has a big community behind it.
Steps Involved In NLP Implementation :
It covers 5 major steps like −
- Lexical Analysis − It identifies and analyzes the structure of the given word, here the whole chunk of text data is broken down to paragraphs, sentences and words in lexical analysis.
- Parsing( syntactic analyzing ) − It involves analysis of words in the sentence for grammar and arranging words in a manner that shows the relationship among the words. Any sentences which is not grammatically correct gets rejected at this stage for example, “ building lives in sita “ will not be accepted by the syntactical analyzer
- Semantic Analysis − It analyses the given text to extract the meaning from it. It is done by mapping syntactic structures and objects in the task domain. The semantic analyzer rejects the irrelevant sentence like “hot bananna”
- Discourse Integration − As we know that each sentence is interconnected to it’s previous sentence and any sentence becomes meaningful based on the meaning of the penultimate sentence.Similarly it also makes the succeeding sentence meaningfu
- Pragmatic Analysis − During this, what was said is re-interpreted on what it actually meant. It involves deriving those aspects of language which require real world knowledge.
NLP Explained By Visual Example :
NLP Applications :
1. Optical Character Recognition
2. Speech Recognition
3. Machine Translation
4. Natural Language Generation
5. Sentiment Analysis
6. Semantic Search
7. Natural Language Programming :
8. Affective Computing
9. Developing Chatbots
Some References For NLP Which You Must Read :
NLP Implementation Using Python :
To be covered next in the NLP Series…..
If you are loving my articles do clap and share it, also If you want to hear more from me and want to consult Click Here and subscribe and i would feel blessed to hear and respond