Step-by-Step: Separating Planning from Realization in Neural Data-to-Text Generation
About
Data-to-text generation can be conceptually divided into two parts: ordering and structuring the information (planning), and generating fluent language describing the information (realization). Modern neural generation systems conflate these two steps into a single end-to-end differentiable system. We propose to split the generation process into a symbolic text-planning stage that is faithful to the input, followed by a neural generation stage that focuses only on realization. For training a plan-to-text generator, we present a method for matching reference texts to their corresponding text plans. For inference time, we describe a method for selecting high-quality text plans for new inputs. We implement and evaluate our approach on the WebNLG benchmark. Our results demonstrate that decoupling text planning from neural realization indeed improves the system's reliability and adequacy while maintaining fluent output. We observe improvements both in BLEU scores and in manual evaluations. Another benefit of our approach is the ability to output diverse realizations of the same input, paving the way to explicit control over the generated text structure.
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| Data-to-text generation | WebNLG (test) | BLEU47.4 | 39 | |
| Natural language generation | WebNLG all categories (test) | BLEU47.4 | 13 | |
| Graph-to-text generation | WebNLG seen v1.0 (test) | BLEU53.3 | 12 | |
| Graph-to-text generation | WebNLG all v1.0 (test) | BLEU47.24 | 11 | |
| Graph-to-text generation | WebNLG unseen v1.0 (test) | BLEU34.41 | 10 | |
| Data-to-text generation | WebNLG v1 (All) | BLEU47.4 | 9 | |
| Table-to-text generation | WebNLG Unseen (test) | BLEU34.4 | 9 | |
| Table-to-text generation | WebNLG Seen (test) | BLEU Score53.3 | 9 | |
| Graph-to-text generation | WebNLG All 2017 (test) | BLEU47.24 | 7 | |
| Graph-to-text generation | WebNLG Seen 2017 (test) | BLEU53.3 | 7 |