Natural Language Generation (NLG)

Screenshot of a slide from the Association of Computational Linguistics (ACL) 2019 convention tutorial held in Florence, Italy in 2019.

Natural language generation, or NLG, is the subfield of NLP concerned with the process used by software to translate data into language humans can understand, or human language. English, Spanish, Mandarin, and Modern Standard Arabic are all human languages but require natural language understanding (NLU) for a computer to understand them. Likewise, NLG is required to transform data into human language.

In NLG, the software takes structured data, often in formats like JSON, CSV, and as you’ll see in the slideshow below, knowledge graphs.

If you’d like to take a deeper dive into NLG, here is a tutorial from the Association of Computational Linguistics (ACL) 2019:


Natural language generation is typically used to take data from something like a spreadsheet and convert it into a report. It’s also used in modern marketing tools like chatbots.

If you’d like to work through a more accessible guide, here’s a nice guide to NLG.