facts on KBs, and it can benefit some real applications. Firstly, KBQG can automatically annotate question answering (QA) datasets. Secondly, the generated questions and answers will be able to augment the training data for QA systems. More importantly, KBQG can improve the ability of machines to actively ask questions on human-machine conversations [@D17-1090; @D18-1427]. Therefore, this task has attracted more attention in recent years [@P16-1056; @N18-1020].

Specifically, KBQG is the task of generating natural language questions according to the input facts from a knowledge base with triplet form, like $<$subject, predicate, object$>$. For example, as illustrated in Figure \[fig:example\], KBQG aims at generating a question “Which city is Statue of Liberty located in?" (Q3) for the input factual triplet “$<$Statue of Liberty, location/containedby[^1], New York City$>$". Here, the generated question is associated to the subject “*Statue of Liberty*" and the predicate `fb:location/containedby`) of the input fact, and the answer corresponds to the object “*New York City*".

![Examples of KBQG. We aims at generating questions like Q3 which expresses (matches) the given predicate and refers to a definitive answer.[]{data-label="fig:example"}](example.pdf){width="218pt"}

As depicted by , KBQG is required to transduce the triplet fact into a question about the subject and predicate, where the 