淺談問題生成(Question Generation)

語言: CN / TW / HK

問題生成(Question Generation)是文字生成中的重要子任務,旨在根據輸入資料(文字、知識庫、影象等型別,本文僅聚焦文字型別)生成與輸入相關且自然流暢的問題。由於機器閱讀理解(Machine Reading Comprehension, MRC)和智慧問答系統的蓬勃發展,問題生成受到了越來越廣泛的關注。

本文將根據時間線對問題生成的相關研究進行梳理,並在文末介紹了一些個人認為有價值的研究方向。

傳統的問題生成 依賴於人工設計的規則和模版將陳述句轉換為疑問句 ,這樣的方法需耗費大量人力且依賴於深層的語法知識,泛化效能和可擴充套件能力較差。

使用深度學習方法進行問題生成最早在2017年被提出。 Learning to Ask: Neural Question Generation for Reading Comprehension (ACL 2017) 將端到端訓練的神經網路應用於問題生成,採用seq2seq+attention模型架構,擺脫了轉換規則與模版的侷限,取得了相比於傳統方法更好的效能。另一篇將神經網路應用於QG的奠基工作 Neural question generation from text: A preliminary study(EMNLP 2017) 在編碼時額外考慮了答案位置與語法資訊,取得了更好的效能。

之後到2019年,相關研究主要 以seq2seq架構為基礎,改變模型結構和或使用一些技巧來提升模型的效能 ,具體包括以下幾個方面。

  • 答案編碼

將答案作為輸入來指導模型生成問題時更關注答案以提升模型效能,常用方法包括將答案位置作為輸入特徵或使用額外的編碼器對答案編碼。

Answer-focused and Position-aware Neural Question Generation.EMNLP, 2018

Improving Neural Question Generation Using Answer Separation.AAAI, 2019.

Answer-driven Deep Question Generation based on Reinforcement Learning.COLING, 2020.

  • 語言特徵

將額外的語言特徵與詞向量拼接作為輸入來提升QG,例如word case、POS和NER標籤等。

Automatic Question Generation using Relative Pronouns and Adverbs.ACL, 2018.

Learning to Generate Questions by Learning What not to Generate.WWW, 2019.

  • 問題型別建模

通過對問題型別或疑問詞的顯式建模來改善生成問題疑問詞預測不準確的問題。

Question Generation for Question Answering.EMNLP,2017.

Answer-focused and Position-aware Neural Question Generation.EMNLP, 2018.

Question-type Driven Question Generation.EMNLP, 2019.

  • 段落級別上下文

利用輸入文本週圍的相關上下文增加輸入資訊來提升問題生成效果。

Harvesting paragraph-level question-answer pairs from wikipedia.ACL, 2018.

Leveraging Context Information for Natural Question Generation.ACL, 2018.

Paragraph-level Neural Question Generation with Maxout Pointer and Gated Self-attention Networks.EMNLP, 2018.

Capturing Greater Context for Question Generation.AAAI, 2020.

  • 內容選擇

當答案資訊不提供給模型時,給定輸入段落,QG系統需自動識別段落中值得提問的部分再生成問題。

Identifying Where to Focus in Reading Comprehension for Neural Question Generation.EMNLP, 2017.

Neural Models for Key Phrase Extraction and Question Generation.ACL Workshop, 2018.

A Multi-Agent Communication Framework for Question-Worthy Phrase Extraction and Question Generation.AAAI, 2019.

答案已知時,識別與答案相關的內容也有利於提升生成問題的效果。

Improving Question Generation With to the Point Context.EMNLP, 2019.

  • 特定的訓練目標

通過優化ground truth的對數似然來訓練模型會對生成問題的多樣性造成影響,一些工作通過結合強化學習使特定的獎勵最大化來改善模型訓練。

Teaching Machines to Ask Questions.IJCAI, 2018.

Natural Question Generation with Reinforcement Learning Based Graph-to-Sequence Model.NeurIPS Workshop, 2019.

Addressing Semantic Drift in Question Generation for Semi-Supervised Question Answering.EMNLP, 2019.

Exploring Question-Specific Rewards for Generating Deep Questions.COLING, 2020.

Answer-driven Deep Question Generation based on Reinforcement Learning.COLING, 2020.

  • 多工學習

通過一些輔助任務來提升QG的能力,如通過語言建模來提升句子表示;通過複述生成增加表達的多樣性;通過語義匹配和答案位置預測來緩解生成的疑問詞不合適和copy不相關詞彙的問題。

Multi-Task Learning with Language Modeling for Question Generation.EMNLP, 2019.

How to Ask Good Questions? Try to Leverage Paraphrases.ACL, 2020.

Improving Question Generation with Sentence-level Semantic Matching and Answer Position Inferring.AAAI, 2020.

  • 多樣性

對潛在空間(如VAE)和生成空間(如隨機取樣)進行控制來提升生成問題的多樣性。

Variational Attention for Sequence-to-Sequence Models. ICML, 2018.

Generating Diverse and Consistent QA pairs from Contexts with Information-Maximizing Hierarchical Conditional VAEs.ACL, 2020.

On the Importance of Diversity in Question Generation for QA.ACL, 2020.

預訓練語言模型提出後,大多方法 通過微調預訓練模型實現問題生成 ,進一步改善了生成效果,常用模型包括UniLM、BART、T5等。

Unified Language Model Pre-training for Natural Language Understanding and Generation.NeurIPS, 2019.

UniLMv2: Pseudo-Masked Language Models for Unified Language Model Pre-Training.arXiv, 2020.

ERNIE-GEN: An Enhanced Multi-Flow Pre-training and Fine-tuning Framework for Natural Language Generation.IJCAI, 2020. (SOTA)

此後,相關研究工作大多聚焦於 問題生成在其他任務上的應用 ,不再通過修改模型提升生成效果,而是把問題生成作為整個系統的一部分直接使用。

  • 資料增強

問題生成最直接的應用就是為問答模型或檢索模型提供更多的訓練資料,降低人工標註成本,提升模型的效能。

Addressing Semantic Drift in Question Generation for Semi-Supervised Question Answering.EMNLP, 2019.

Synthetic QA Corpora Generation with Roundtrip Consistency.ACL, 2019.

Template-Based Question Generation from Retrieved Sentences for Improved Unsupervised Question Answering.ACL, 2020.

Training Question Answering Models From Synthetic Data.EMNLP, 2020.

Embedding-based Zero-shot Retrieval through Query Generation.arXiv, 2020.

Towards Robust Neural Retrieval Models with Synthetic Pre-Training.arXiv, 2021.

  • 領域遷移

在目標領域生成問題/問答對來進一步訓練問答模型可以提升模型的領域適應能力。由於問題生成模型學習到的是對知識點的提問方式,相比於問答模型擴充套件能力更強(不依賴於特定領域),因此將在源領域訓練好的問題生成模型用於目標域生成問題的質量不會下降太多。

End-to-End Synthetic Data Generation for Domain Adaptation of Question Answering Systems.EMNLP, 2020.

Improving Question Answering Model Robustness with Synthetic Adversarial Data Generation.ACL 2021.

Back-Training excels Self-Training at Unsupervised Domain Adaptation of Question Generation and Passage Retrieval.arXiv, 2021.

  • OpenQA

開放域問答系統(OpenQA)通常使用檢索-閱讀架構實現,雖在精度方面已取得較好的效果,但閱讀器的線上推理會非常耗時。利用問題生成模型將文件轉換為常見問答對(FAQ)的形式,線上僅需通過問題間的匹配來實現問答,保證準確率的同時大大提高了效率,提升了開放域問答模型的實用性。

Open-domain question answering with pre-constructed question spaces.NAACL, 2021.

Accelerating real-time question answering via question generation.AAAI, 2021.

PAQ: 65 Million Probably-Asked Questions and What You Can Do With Them.arXiv, 2021.

  • 事實檢查

通過問答對生成來構造一致性衡量指標或宣告來進行事實檢查。

Improving Factual Consistency of Abstractive Summarization via Question Answering.ACL, 2021.

Zero-shot Fact Verification by Claim Generation.ACL, 2021.

  • 其他

近期還有一些其他的相關研究方向受到了廣泛關注,如控制生成問題的難度、在問答式對話中生成問題、生成更深層次的問題(如多跳推理問題)、闡明性問題生成(Clarification Question Generation)等。

目前問題生成仍存在一些 尚未解決卻值得研究的問題

  • 評估

目前大多數模型使用BLEU、ROUGE、METETOR等自動評估指標對生成的問題進行評價,這些指標是對生成文字與參考文字重合程度的度量,最先用於機器翻譯、摘要生成等任務,適用於相對確定的長文字生成的質量評估,對於問題這種多樣且短小的文字並不是太合適。但是人工評估又耗時耗力。

目前也有一些針對評估的研究工作,主要思路是將主觀的人工評估指標數學化,比如可回答性、語義、詞彙多樣性等。

Towards a Better Metric for Evaluating Question Generation Systems.EMNLP, 2018.

On the Importance of Diversity in Question Generation for QA.ACL, 2020.

Evaluating for Diversity in Question Generation over Text .arXiv, 2020.

為問題生成模型設計合適的評估指標可以進一步促進模型的效能提升。

  • 一致性

模型生成的問答對不能保證抽取的答案可以作為生成問題的合適答案,存在事實錯誤、內容不相關等情況。目前做法是通過新增過濾模型(常用的為問答模型)過濾掉不一致的問答對。探索如何保證生成問答對的一致性是值得思考的問題。

  • 多樣性

我們希望模型可以根據輸入文字從多個角度對不同的提問點進行提問。目前工作對多樣性的研究主要針對問題的表達多樣性,即同樣語義的問題使用不同的問法。由於現有資料集標註不充分,針對多個提問點的生成模型的訓練、對生成問題覆蓋度和多樣性的評估均是難以解決的問題。

  • 非事實問題生成

目前研究主要集中於事實性問題生成,問題對應的答案通常為命名實體或簡短的片段。然而在許多領域非事實問題或開放式問題佔比很大,因此非事實問題生成十分值得研究。此類問題對應的答案為多個句子或片段,因此生成問題需更好地把握答案與文章的整體含義,更具有挑戰性。