NLP vs NLU vs NLG – What is the difference?

By Neha M

Hello guys! I am an NLP practitioner and if you guys have read several other blogs with the same title and have still come here, I know you are greatly confused. I too was. So I’m going to explain this in very simple words and share some of my learnings on NLP technique to follow. You can also read my other blog on What is natural language processing if you wish to know more about NLP models, NLP algorithms and NLP use cases.

Honestly, the terms Processing, Understanding and Generation are kinda self-explanatory and are less confusing. What’s confusing is that there are varied views about which one is the subset of what.

Natural Language Processing (NLP meaning)

NLP in AI plays around with the language we speak, to get something well-defined out of it. It could be as simple as to identify nouns from a sentence or as complex as to find out the emotions of people towards a movie, by processing the movie reviews. Simply put, a machine uses NLP models to read and understand the language a human speaks (this often gets referred to as NLP machine learning).

Natural Language Understanding (NLU)

I deliberately bolded the word ‘understand’ in the previous section because that part is the one which is specifically called NLU. So NLU is a subset of NLP where semantics of the input text are identified and made use of, to draw out conclusions ; which means that NLP without NLU would not involve meaning of text.


NLP and NLU in a nutshell

Ok, I hope we are clear about what NLP and NLU mean technically and how they are distinguished. Let’s move on to our third topic – NLG (natural language generation)

Natural Language Generation (NLG)

NLG basically refers to the generation of natural language out of structured data. The data fed to NLG systems could be in the form of :

  • Textual data – Eg : Question-Answer Pair Generation from a given paragraph 
  • Numerical data – Eg : Create earning summary of companies in USA using an Earning Calender
  • Images – Eg : Image Captioning, which uses Image Processing, NLP along with NLU
  • Graphs – Eg : Answer Generation using a relevant Ontology

Now, if you think about where NLG fits in when NLP and NLU are in the frame, it comes out as a different topic itself, but works closely with these in several applications. For example, consider an AI chatbot – It either performs some action in return for an input text (which involves NLP and NLU) or generates an answer for a given question (which involves NLP, NLU and NLG). 


Summing up, NLU involves the meaning of natural language texts, whereas NLP natural language processing is a broad umbrella which includes NLU and other non semantic techniques in the processing of natural language texts. NLG, on the other hand, involves techniques to generate natural language using data in any form as input.

What is NLP?

By Neha M

Hello! Today I will be talking about one of the most hyped topics of artificial intelligence and my personal favourite Natural...Continue

What is the difference between Artificial Intelligence, Machine Learning and Deep Learning?

By Tejas Venugopal

How are they related to each other? How do we teach machines to perform tasks? The world of AI (Artificial...Continue

Is AI and Machine Learning the same?

By Tejas Venugopal

We have all heard or read about how AI is the next big thing. It seems like every 3rd article or blog is about AI and how...Continue