Introduction
Task-oriented dialog systems are becoming increasingly popular, as they can assist users in various daily activities such as ticket booking and restaurant reservations. In a typical task-oriented dialog system, the Natural Language Generation (NLG) module plays a crucial role: it converts a system action (often specified in a semantic form selected by a dialog policy) into a final response in natural language. Hence, the response should be adequate to represent semantic dialog actions, and fluent to engage users' attention. As the ultimate interface to interacts with users, NLG plays a significant impact on the users' experience.
Existing methods for NLG can be broadly summarized into two major categories. $({1})$ Template-based methods require domain experts to handcraft templates for each domain, and the system fills in slot-values afterward BIBREF0, BIBREF1. Thus, the produced responses are often adequate to contain the required semantic information, but not always fluent and nature, hurting users' experiences. $({2})$ Statistical language models such as neural networks BIBREF2 learn to generate fluent responses via training from labelled corpus. One canonical model is semantically conditioned LSTM (SC-LSTM) BIBREF3, which encodes dialog acts with one-hot representations and uses it as an extra feature to inform the sentence generation process. Despite its good performance on simple domains, it requires large amounts of domain-specific annotated data which is not available for many domains in real-world applications. Even worse, this renders severe scalability issues when the number of possible combinations of dialog acts grows exponentially with the number of slots in more complex domains.
We revisit the current research benchmarks for NLG, and notice that each dialog domain is extensively labelled to favor model training. However, this is in contrast to the real-world application scenarios, where only very limited amounts of labelled data are available for new domains. To simulate such a few-shot learning setting, we have developed a new benchmark dataset, called FewShotWOZ, based on the MultiWOZ BIBREF4 and Cambridge NLG datasets BIBREF5. FewShotWOZ consists of dialog utterances from 7 domains. For each domain, we provide less than 50 labeled utterances for fine-tuning. We believe that FewShotWOZ can better inspire research to address the challenge of learning data-hungry statistical models with very limited amounts of labelled data in real-world scenarios.
To deal with the challenge of few-shot learning, we develop the SC-GPT model. SC-GPT is a multi-layer Transformer neural language model, trained in three steps: $({1})$ Pre-trained on plain text, similar to GPT-2 BIBREF6; $({2})$ Continuously pre-trained on large amounts of dialog-act labeled utterances corpora to acquire the ability of controllable generation; $({3})$ Fine-tuned for a target domain using very limited amounts of domain labels. Unlike GPT-2, SC-GPT generates semantically controlled responses that are conditioned on the given semantic form, similar to SC-LSTM but requiring much less domain labels to generalize to new domains.
In summary, our key contributions are three-fold:
A new benchmark FewShotWOZ is introduced to simulate the few-shot adaptation setting where only a handful of training data from each domain is available.
We propose a new model SC-GPT. To our best knowledge, this work is the first study of exploiting state-of-the-art pre-trained language models for NLG in task-oriented dialog systems.
On the MultiWOZ dataset, SC-GPT creates a new SOTA, outperforming previous models by 4 points in BLEU. On FewShotWOZ, SC-GPT outperforms several strong baselines such as SC-LSTM and HDSA BIBREF7, showing that SC-GPT adapts to new domain much more effectively, requiring much smaller amounts of in-domain labels. We release our code and dataset for reproducible research.
Background
A typical task-oriented spoken dialog system uses a pipeline architecture, as shown in Figure FIGREF2 (a), where each dialog turn is processed using a four-step procedure. $({1})$ Transcriptions of user’s input are first passed to the natural language understanding (NLU) module, where the user’s intention and other key information are extracted. $({2})$ This information is then formatted as the input to dialog state tracking (DST), which maintains the current state of the dialog. $({3})$ Outputs of DST are passed to the dialog policy module, which produces a dialog act based on the facts or entities retrieved from external resources (such as a database or a knowledge base). $({4})$ The dialog act emitted by the dialog policy module serves as the input to the NLG, through which a system response in natural language is generated. In this paper, we focus on the NLG component of task-oriented dialog systems, how to produce natural language responses conditioned on dialog acts.
Specifically, dialog act $$ is defined as the combination of intent $$ and slot-value pairs $\lbrace (s_i, v_i)\rbrace ^P_{i=1}$:
where $P$ is the number of pairs, which varies in different dialog acts.
Intents are usually used to distinguish different types of system actions. Typical examples include inform, request, confirm, select
Slot-value pairs indicate the category and content of the information to express in the utterance, respectively.
The goal of NLG is to translate $$ into a natural language response $= [x_1, \cdots , x_T]$, where $T$ is the sequence length. In Figure FIGREF2 (b), we show an example of the dialog act: $\textit {\texttt {confirm}~(name=Hilton, area=center)}$, and the corresponding natural language response is “Let me confirm that you are searching for Hilton in the center area”.
Semantically Conditioned GPT
We tackle this generation problem using conditional neural language models. Given training data of $N$ samples $=\lbrace (_n, _n)\rbrace _{n=1}^{N}$, our goal is to build a statistical model parameterized by $$ to characterize $p_{}(| )$. To leverage the sequential structure of response, one may further decompose the joint probability of $$ using the chain rule, casting an auto-regressive generation process as follows:
where $x_{<t}$ indicates all tokens before $t$.
Learning $$ is performed via maximizing the log-likelihood (MLE) of the conditional probabilities in (DISPLAY_FORM13) over the entire training dataset:
In this paper, we employ the Transformers BIBREF8 to parameterize the conditionals in (DISPLAY_FORM13). To enable strong generalization and controllable ability for the learned model, we propose the following three-stage procedure as the training recipe.
Semantically Conditioned GPT ::: Massive Plain Language Pre-training.
Large models trained on massive training corpus usually generalize better to new domains. Inspired by this, we inherit the GPT-2 architecture BIBREF6 as the backbone language model. GPT-2 is an auto-regressive language model that leverages 12-24 layers of masked, multi-head self-attention Transformers. GPT-2 is pre-trained on extremely massive text data OpenWebText BIBREF6. It has demonstrated superior performance on characterizing human language data distribution and knowledge transfer. Given text prompts, GPT-2 can often generate realistic sentences.
Semantically Conditioned GPT ::: Dialog-Act Controlled Pre-training.
To enable the guidance of dialog act in response generation, we propose to continuously pre-train the GPT-2 model on large amounts of annotated (dialog act, response) pairs. The pre-training dataset includes annotated training pairs from Schema-Guided Dialog corpus, MultiWOZ corpus, Frame corpus, and Facebook Multilingual Dialog Corpus. The total size of the pre-training corpus is around 400k examples.
We firstly pre-process dialog act $$ into a sequence of control codes using the following format:
Meanwhile, the output sequence $^{\prime }$ is pre-processed via appending $$ with a special start token [BOS] and an end token [EOS]. Finally, the sequentialized dialog act $^{\prime }$ is concatenated with its augmented response $^{\prime }$, and then fed into GPT-2. During training, the prediction loss is only computed for $^{\prime }$, and $^{\prime }$ provides the attended conditions. Since the dialog act represents the semantics of the generated sentences, we follow the naming convention of SC-LSTM, and term our model as Semantically Conditioned Generative Pre-training (SC-GPT). The overall architecture of SC-GPT is illustrated in Figure FIGREF12.
Semantically Conditioned GPT ::: Fine-tuning.
For a new domain, a dialog act usually contains novel intents or slot-value pairs, and annotated training samples are often limited. We fine-tune SC-GPT on limited amounts of domain-specific labels for adaptation. The fine-tuning follows the same procedure of dialog-act controlled pre-training, as described above, but uses only a few dozens of domain labels.
It is worth noticing that the above recipe has several favorable properties:
Flexibility. SC-GPT operates on a sequence of tokens without delexicalization, which means that SC-GPT does not assume a fixed one-hot or tree-structured dialog act representation vectors. Hence, it has great flexibility in extending to novel dialog acts.
Controllability. In contrast to GPT-2 that generates natural sentences without high-level semantic guidance, SC-GPT can generate sentences with adequate intent and slot-value information and maintain its fluency.
Generalizability. SC-GPT is able to generalize significantly better than SC-LSTM, due to the pre-training on massive plain text corpora and annotated dialog datasets.
Dataset: FewShotWOZ ::: Revisiting NLG Benchmarks.
The three commonly used NLG datasets in developing and evaluating task-oriented dialog systems are E2E NLG BIBREF9 BAGEL BIBREF10 and RNNLG BIBREF5, as summarized in Table TABREF23. We observe two issues from their shared statistics: $({1})$ All the datasets contain a large number of labelled training samples for each domain, ranging from hundreds to tens of thousands. However, the cost of labeling is high in practice, labeling 50 utterances is 5 hours per domain. Creating such an extensively annotated dataset for each new domain is prohibitively expensive. $({2})$ The percentage of distinct delexicalised dialog acts between training and testing data is quite small. For example, the delexicalised dialog acts in testing is 100% covered by the training set for the E2E NLG dataset. It renders difficulties in evaluating the model's generalization ability for new domains.
Dataset: FewShotWOZ ::: FewShotWOZ.
To build a setting for more pragmatic NLG scenarios, we introduce a new dataset FewShotWOZ to better reflect real application complexity, and encourage the community to develop algorithms that are capable of generalizing with only a few domain-specific labels for each (new) domain. The dataset statistics are shown in the last column of Table TABREF23. We see that FewShotWOZ is different from the other datasets in three aspects: $({1})$ More domains. FewShotWOZ contains seven domains in total, which is larger than any existing NLG datasets. $({2})$ Less training instances. Importantly, FewShotWOZ has a much smaller number of training instances per domain, aiming to evaluate the few-shot learning ability. $({3})$ Lower training/testing overlap. FewShotWOZ has only 8.82% overlap, significantly smaller than the other datasets, which amount to more than 90% overlap. The average number of intents per instance in $\mathtt {Attraction}$/ $\mathtt {Taxi}$/ $\mathtt {Train}$ domain is 2, 1.33, and 2.05, respectively. In contrast, there is only one intent for each example in the other datasets. The NLG task defined on FewShotWOZ requires the models to learn to generalize over new compositions of intents. The details of FewShotWOZ is shown in Table TABREF26.
Dataset: FewShotWOZ ::: Collection Protocols.
We construct FewShotWOZ via re-organizing data samples from RNNLG and MultiWOZ datasets BIBREF4. For each domain in RNNLG, we first group utterances according to their delexicalised dialog acts, and keep only one utterance as the target sentence. To ensure diversity, we consider three domains from MultiWOZ: $\mathtt {Attraction}$, $\mathtt {Taxi}$, and $\mathtt {Train}$. Since MultiWOZ is a cross-domain dataset, the dialog act of an utterance may exist in multiple domains. We choose to keep utterances whose dialog act appears only in one domain. Similar delexicalising processing is applied to ensure that each dialog act has only one target utterance. Finally, to simulate the few-shot learning in practice, we randomly sample 50 training examples for each domain, except the $\mathtt {Taxi}$ domain, which has 40 examples.
Related Work ::: Pre-trained Models.
Pre-trained language models (PLMs) have substantially advanced the state-of-the-art across a variety of natural language processing (NLP) tasks BIBREF11, BIBREF12, BIBREF13, BIBREF14, BIBREF15, BIBREF16. PLMs are often trained to predict words based on their context on massive text data, and the learned models can be fine-tuned to adapt to various downstream tasks. The closest line of research to ours are GPT-2 BIBREF6, CTRL BIBREF15 and Grover BIBREF17. GPT-2 first investigated missive Transformer-based auto-regressive language models with large-scale text data for pre-training. After fine-tuning, GPT-2 achieves drastic improvements on several generation tasks. One drawback of GPT-2 is the lack of high-level semantic controlling ability in language generation. To alleviate this issue, CTRL BIBREF15 was introduced to train the model based on pre-defined codes such as text style, content description, and task-specific behavior, meanwhile Grover BIBREF17 was proposed to generate news articles conditioned on authors, dates Although conceptually similar to our SC-GPT, CTRL and Grover cannot be readily applied to NLG in task-oriented dialog systems, as the conditioning codes are quite different. Another controllable generation work for GPT-2 is PPLM BIBREF18, which provides a decoding scheme to guide the generation process using key-words or classifiers, without re-training the model. In this paper, we focus on pre-training an NLG model conditioned on finer-grained semantic dialog acts, which are more desirable for dialog systems.
Related Work ::: Dialog.
Various dialog systems have been developed BIBREF2, including task-oriented dialog systems such as Rasa, Microsoft Bot Framework, and Conversational Learner, and chit-chat systems such as XiaoIce BIBREF19, DialoGPT BIBREF20, Meena BIBREF21. In this paper, we focus on task-oriented systems, particularly the NLG module. With the blooming of deep learning, neural sequential models have shown powerful capability and flexibility in NLG. Extensive efforts have been made, including new architecture choices such as RNNs BIBREF22, attention RNNs BIBREF23, SC-LSTM BIBREF3 and its variants BIBREF24, BIBREF25, as well as learning objectives BIBREF26. However, they all require large amounts of annotated data to reach satisfactory performance. A more realistic scenario is to require much less labeling and improve the sample efficiency of models, This is especially important when deploying the models to new domains, where dialog acts need to be labelled from scratch. Our paper aims to formally set up such a research scenario by proposing a new dataset FewShotWOZ, and a new model SC-GPT.
Experiments
In this section, we evaluate the proposed SC-GPT on the FewShotWOZ and MultiWOZ datasets to answer two research questions: $({1})$ Is SC-GPT an effective model for strong generalization and controllability in dialog response generation? $({2})$ Does FewShotWOZ meet the goal of effectively evaluating the generalization of NLG models in the few-shot learning setting?
Experiments ::: Experimental Setup ::: Implementation details.
The model was built upon Huggingface Pytorch Transformer BIBREF27. We use GPT2-Medium with 345M parameters as the initial checkpoint, and byte pair encodings BIBREF28 for the tokenization. Linear rate scheduler with start rate as 5e-5 was used for both pre-training and fine-tuning. Adam BIBREF29 with weight decay was used to optimize the parameters. For pre-training, the model was trained with a mini-batch of 8 on an 8 Nvidia V100 machine until observing no significant progress on validation loss or up to 20 epochs, whichever is earlier. For fine-tuning on FewShotWOZ, models were trained on each domain separately with five epochs.
Experiments ::: Experimental Setup ::: Automatic metrics.
Following BIBREF3, BLEU scores and the slot error rate (ERR) are reported. BLEU score evaluates how natural the generated utterance is compared with human readers. ERR measures the exact matching of the slot tokens in the candidate utterances. $\text{ERR}=(p+q)/M$, where $M$ is the total number of slots in the dialog act, and $p$, $q$ is the number of missing and redundant slots in the given realisation. For each dialog act, we generate five utterances and select the top one with the lowest ERR as the final output.
Experiments ::: Experimental Setup ::: Human evaluation.
We conducted the human evaluation using Amazon Mechanical Turk to assess subjective quality. We recruit master level workers (who have good prior approval rates) to perform a human comparison between generated responses from two systems (which are randomly sampled from comparison systems). The workers are required to judge each utterance from 1 (bad) to 3 (good) in terms of informativeness and naturalness. Informativeness indicates the extent to which generated utterance contains all the information specified in the dialog act. Naturalness denotes whether the utterance is as natural as a human does. To reduce judgement bias, we distribute each question to three different workers. Finally, we collected in total of 5800 judges.
Experiments ::: Experimental Setup ::: Baselines.
We compare with three baseline methods. $({1})$ SC-LSTM BIBREF3 is a canonical model and a strong baseline that uses an additional dialog act vector and a reading gate to guide the utterance generation. $({2})$ GPT-2 BIBREF6 is used to directly fine-tune on the domain-specific labels, without pre-training on the large-scale corpus of (dialog act, response) pairs. $({3})$ HDSA BIBREF7 is a state-of-the-art model on MultiWOZ. It leverages dialog act structures to enable transfer in the multi-domain setting, showing superior performance than SC-LSTM.
Experiments ::: FewShotWOZ
Table TABREF33 reports the automatic evaluation performance of different methods on FewShotWOZ. SC-LSTM fails to learn the generation effectively in this few-shot learning setting. The generated utterances are poor in quality and suffer from inaccurate slot rendering. In addition, GPT-2 performs consistently better than SC-LSTM in all the domains. It reveals the feasibility of using a pre-trained language model for NLG, though only limited annotations are available for fine-tuning. Importantly, SC-GPT performs significantly better than GPT and SC-LSTM in terms of both BLEU and ERR. In all the domains, SC-GPT reduces the ERR to a significantly lower level, revealing its strong controllability power. This verifies the importance of pre-training on large annotated dialog data, as SC-GPT learns how to generate utterances specified by the dialog acts accurately.
Table TABREF34 shows the human assessment on FewShotWOZ. The results exhibit the same trend with automatic evaluation. SC-GPT outperforms GPT-2 and SC-LSTM significantly in both metrics, SC-GPT can better control the generation to convey information in the dialog act while maintaining good fluency. Note that the gap between SC-GPT and human annotation is still large, indicating that the proposed FewShotWOZ exhibits an under-explored research area, and provides a large space to encourage future research for improvement.
Experiments ::: MultiWOZ
The results on MultiWOZ are shown in Table TABREF42. Following BIBREF7, Entity F1 BIBREF30 is used to evaluate the entity coverage accuracy (including all slot values, days, numbers, and reference, ). Again, SC-GPT achieves the best performance on BLEU score. Note that GPT-2 performs similarly with SC-GPT on the full MultiWOZ dataset, this is because MultiWOZ contains 57k utterances, which is large enough for GPT-2 to achieve good performance. The results also confirm that with enough annotated data, conditional language model formulation performs significantly better than HDSA, a strong competitor that leverages graph/tree-structure information to encode dialog acts.
To study how SC-GPT performs with different training data sizes. We further conduct experiments with varying percentages of training data on MultiWOZ, ranging from 0.1% (50 examples) to 50%. As shown in Table TABREF43, the observations are consistent with FewShotWOZ. SC-GPT performs consistently better than GPT-2, HDSA, and SC-LSTM for a wide range of dataset sizes, and the improvement is more substantial when the fewer numbers of in-domain labels are used for fine-tuning.
Table TABREF44 shows the human assessment results on MultiWOZ. The results are consistent with the automatic evaluation. It is interesting to see that $({1})$ the gap between the new state-of-the-art method (SC-GPT ) and human performance on FewShotWOZ (as shown in Table TABREF34) is much larger than that on MultiWOZ; $({2})$ the human rating on the naturalness of SC-GPT is even higher than humans on MultiWOZ, while there is a visible gap on FewShotWOZ. These results demonstrate that FewShotWOZ presents a challenging few-shot learning setting, SG-GPT serves as a simple and strong baseline in this setting, and the combined provides a platform for researchers to develop NLG models that are able to generalize to new domains and generate semantically conditioned and fluent responses.
Experiments ::: Analysis
We perform detailed analysis to investigate SG-GPT's flexibility, controllability and generalizability. The test set is split into two subsets - seen and unseen. If a dialog act of an example appears in the training set, the example is marked as seen; otherwise, it is marked as unseen. Table TABREF48 compares different models on the seen and unseen subsets in the $\mathtt {restaurant}$ domain. SC-GPT yields higher BLEU and lower ERR, and the improvement is more significant on the unseen set. For example, SC-GPT reduces ERR to 4.96, an order of magnitude lower than SC-LSTM and only 1/3 of GPT-2. This demonstrates that SC-GPT generalizes well to novel dialog acts, and is able to precisely ground in them to compose fluent responses. This is further confirmed by the quantitative comparison in Table TABREF45, where we compare the generated utterance examples of different models. While the baseline methods prone to over-generate or miss important slots, SC-GPT can successfully generate fluent natural language utterances that share precise semantic conditions with the ground-truth references.
We further simulate the process when deploying SC-GPT for a new domain, using the examples provided in the RASA dialog toolkit . We first fine-tune SC-GPT using a few training examples (only 16 instances in this new domain), and then generate utterances based on novel dialog acts that are unseen in training data, shown in Table TABREF49. In practice, it is desirable for an NLG system to deal with an extending domain whose dialog acts change dynamically. We simulate the setting by editing the original input dialog acts, such as inserting or deleting a slot, or substituting a slot value.
Since SC-LSTM is infeasible in the setting of an extending domain, we compare SC-GPT with GPT-2. Results show that SC-GPT produces better utterances than GPT-2. SC-GPT can generate reasonably good natural language responses with different combinations of editing operations, showing its high flexibility to generalize to new dialog acts with very limited training data, and produce controllable responses.
Conclusion and Future Work
In this paper, we have made two major contributions towards developing a more pragmatic NLG module for task-oriented dialog systems: $({1})$ A new benchmark FewShotWOZ is introduced to simulate the few-shot learning scenarios with scarce labelled data in real-world applications. $({2})$ A new model SC-GPT is proposed to endow the NLG module with strong semantically controlling and generalization ability. Empirical results on both FewShotWOZ and MultiWOZ show that SC-GPT achieves the best overall performance in both automatic and human evaluations.
There are two interesting directions for future work. The first is to design mechanisms to generate more interpersonal responses which are proven to help improve user experiences BIBREF31, BIBREF19. The other is to generalize the generative pre-training idea to all four modules in the dialog system pipeline for end-to-end training. Since these four modules process information in order, one may organize their input/output as segments, and pre-train a segment-level auto-regressive model.

Question: What was the criteria for human evaluation?
Answer: to judge each utterance from 1 (bad) to 3 (good) in terms of informativeness and naturalness

Question: What automatic metrics are used to measure performance of the system?
Answer: BLEU scores and the slot error rate (ERR)

Question: What existing methods is SC-GPT compared to?
Answer: $({1})$ SC-LSTM BIBREF3, $({2})$ GPT-2 BIBREF6 , $({3})$ HDSA BIBREF7