NLP Fundamentals: Where Humans Team Up With Machines To Help It Speak
I have already covered few fundamentals of NLP in my previous article
“ A Guide To NLP : A Confluence Of AI And Linguistics ”
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.
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 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.
- 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.
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.
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 syntactic 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 banana”
- Discourse Integration − As we know that each sentence is interconnected to its previous sentence and any sentence becomes meaningful based on the meaning of the penultimate sentence.Similarly it also makes the succeeding sentence meaningful
- 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.
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
1. All You Wanted To Know About BitCoin?
2. How To Handle Multipart Form Data in Nodejs? File Uploading in Nodejs
3. All About Node.js You Wanted To know
4. Node.js Vs PHP : Battle of Supremacy & survival
5. Getting Started With Node.js — A Beginners Guide
If you are my contribution do clap, Click Here and subscribe to reach out to me for more and I would feel blessed to hear you and respond back.
For more, do check out: www.techprenuer.com where i very often share my learning for all you awesome readers.
For Mobile App Development Consulting You Can Reach Me Out At: firstname.lastname@example.org directly, and I will be happy to help you in getting your project delivered.
Thanks for being there & inspiring me to write more…