Unsupervised KB -to-Text Generation with Auxiliary Triple Extraction using Dual Learning (2020)

Abstract: KB-to-text task aims at generating texts based on the given KB triples. Traditional methods usually map KB triples to sentences via a supervised seq-to-seq model. However, existing annotated datasets are very limited and human labeling is very expensive. In this paper, we propose a method which trains the generation model in a completely unsupervised way with unaligned raw text data and KB triples. Our method exploits a novel dual training framework which leverages the inverse relationship between the KB-to-text generation task and an auxiliary triple extraction task. In our architecture, we reconstruct KB triples or texts via a closed-loop framework via linking a generator and an extractor. Therefore the loss function that accounts for the reconstruction error of KB triples and texts can be used to train the generator and extractor. To resolve the cold start problem in training, we propose a method using a pseudo data generator which generates pseudo texts and KB triples for learning an initial model. To resolve the multiple-triple problem, we design an allocated reinforcement learning component to optimize the reconstruction loss. The experimental results demonstrate that our model can outperform other unsupervised generation methods and close to the bound of supervised methods.

## introduction knowledge base (kb)-to-text task focuses on generating plain text descriptions from given knowledge bases (kb) triples which makes them accessible to users. for instance, given a kb @xmath0, discoverer, james craig watson>, it is expected to generate a description sentence such as "101 helena is discovered by james craig watson.". recently, many research works have been proposed for this task. for example, @xcite create the webnlg dataset to generate description for triples sampled from dbpedia @xcite . @xcite method generates people's biographies from extracted wikipedia infobox. @xcite propose to generate restaurant reviews by some given attributes and @xcite create the wikievent dataset to generate text based on an event chain. however, the works mentioned above usually map structured triples to text via a supervised seq-to-seq @xcite model, in which large amounts of annotated data is necessary and the annotation is very expensive and time-consuming. we aim to tackle the problem of completely unsupervised kb-to-text generation which only requires a text corpus and a kb corpus and does not assume any alignment between them. we propose a dual learning framework based on the inverse relationship between the kb-to-text generation task and the triple extraction task. specifically, the kbto-text task generates sentences from structured triples while the task of triple extraction extracts multiple triples from plain texts. such a relationship enables the design of a closed-loop learning framework in which we link kb-to-text generation and its dual task of triple extraction so as to reconstruct the unaligned kb triples and texts. the non-differentiability issue of picking words from our neural model before reconstruction makes it hard to train the extractor or generator effectively using backpropagation. to solve this issue, we apply reinforcement learning (rl) based on policy gradients into our dual learning framework to optimize our extractor or generator according to the rewards. some semi-supervised works @xcite have been proposed to generate plain texts from data of certain forms in other domains (e.g., translation, semantic parsing) with limited annotated resources. these models contain two major steps. firstly, they pre-train a weak model based on the labeled data. secondly, they use an iterative model whose aim is to improve the weak model using the unlabeled data. in each iteration, the input sequence of the original data form is transformed into another form by the original model. then, it is transformed back to the original data form by an inverse model. however, there are still some challenges applying the existing methods into kb-to-text directly: (1) cold start problem. existing approaches pre-train the model with labeled data and then fine-tune their models via unlabelled data. such a mechanism still needs annotated data which is more difficult and expensive to obtain in kb-to-text task. (2) multiple-triple problem. as shown in fig. 1 , multiple triples might be extracted from a text example, and inevitably, the neural extractor could extract some wrong triples. the traditional dual learning approaches @xcite , if directly applied, will regard all these triples as one unit and calculate a single reward for all the triples regardless of whether they are correct or not. it not only results in the slow convergence of rl, but also leads to unsatisfactory model performance. we propose a novel extractor-generator dual (egd) framework which exploits the inverse relationship between kb-to-text generation and auxiliary triple extraction. our model can resolve the kb-to-text task in a totally unsupervised way. to cope with the cold start problem, we propose a pseudo data generator (pdg) which can generate pseudo text and pseudo kb triples based on the given unaligned kb triples and text respectively with prior knowledge. the extractor and the generator are then pre-trained with the generated pseudo data. to resolve the multiple-triple problem, we propose a novel allocated reinforcement learning (arl) component. different from traditional rl methods in which one reward is calculated for the whole sequence, arl allocates different rewards to different sub-parts of the sequence (fig. 1 right). therefore, our model can distinguish the quality of each triple and optimize the extractor and the generator more accurately. we compare our framework with existing dual learning methods and the experimental results demonstrate that our model can outperform other unsupervised generation methods and close to the bound of supervised methods. ## related works recently many tasks and methods have been proposed to transform existing data into humanreadable text. webnlg @xcite ) is proposed to describe a list of triples sampled from dbpedia @xcite . except for the kb triples, many other types of data have also been investigated for how to generate text from them. for example, e2e @xcite aims at generating text from some restaurants' attributes. wikibio @xcite proposes to generate biographies for the wikipedia infobox while wikievent @xcite proposes to generate text based on an event chain. besides, chen and mooney (2008); @xcite propose to generate a summarization of a match based on the scores and @xcite propose to generate weather reports based on the records. all these tasks require an elaborately annotated dataset which is very expensive to prepare. many methods have been proposed to tackle the dataset insufficiency problem in other tasks. @xcite propose to directly train the model on partially-aligned data in which the data and the text are not necessarily exactly math, and it can be built automatically. @xcite ; @xcite ; @xcite propose dual learning frameworks. they pre-train a weak model with parallel data and refine the model with monolingual data. this strategy has been applied in many related tasks including semantic parsing @xcite , summarization @xcite and kb1 kb2 kbn … text text kb g eθ pdg gφ e eθ e gφ pdg eθ g gφ pre-train kb2kb arlg txt2txt arle text text1 text2 textn … kb kb1 kb2 kbn … kb split kb kb1 kb2 kbn … text text1 text2 textn … kb split l @xmath1 ## conclusions we propose a new challenging task, namely, unsupervised kb-to-text generation. to solve this task, we propose an extractor-generator dual framework which exploits the inverse relationship between the kb-to-text generation task and the auxiliary triple extraction task. to handle the cold start problem and the multiple-triple problem respectively, we propose a novel pseudo data generator and an allocated reinforcement learning component. experimental results show that our proposed method successfully resolves the observed problems and outperforms all the baseline models.