Book

These pages give information and supporting material for my new book Natural Language Generation. I hope they become useful resources in their own right; for example, someone who is interested in evaluation can find useful information about it in Book chapter: Evaluation, even if they dont read my book.

The book give a broad high-level conceptual overview of NLG, including requirements, evaluation, and applications as well as technology. It is about NLG in the broad sense, and draws on what has been learned in decades of NLG research; I try to illustrate points with personal experiences where possible. I have tried to write a book which will be useful in 2030 as well as 2024, which means focusing on concepts rather than the latest technologies. Ie, this book is *NOT* intended to describe the latest LLM systems and technologies. See the preface for more information on the book’s goals.

Chapters and associated resources

  1. Introduction to NLG – examples, basic concepts, history
  2. Rule-Based NLG – NLG using algorithms which explicitly make decisions about content and language
  3. Machine Learning and Neural NLG – NLG using ML and neural techniques, including LLMs
  4. Requirements – what do user want? Quality criteria, workflows, text and graphics
  5. Evaluation – human, metric, impact, and commercial evaluation; experimental design and issues
  6. Safety, Testing, and Maintenance – real-world NLG systems cannot harm users, and must be tested and maintained
  7. Applications – attributes of good NLG applications. Focus on journalism, health, business intel

Practicalities

The book was published by Springer in October 2024 (Springer link) (Amazon link). If Amazon is quoting long delivery times, it may be faster to order it from Springer.

A preprint is available on Arxiv (https://arxiv.org/abs/2502.14437); use the PDF, the HTML version is incomplete. Note that the preprint does not nclude copyediting and other improvements made by the publisher). Please cite the published version, not the Arxiv preprint.

If you use Latex, use the following bibtex entry

@book{reiter2024,
author = {Ehud Reiter},
title = {Natural Language Generation},
year = 2024,
publisher = {Springer}
}