問題生成 (Question generation):AI與認知科學

「問題生成」,說成白話叫做「主動提問」。

0 我為什麼對「問題生成」感興趣?

對人來說:

-人需要學習如何提出好問題。當機器學會了如何提問後、尤其是如何提出好問題後,即可教人如何提問,直接應用於教育產品。

-反過來,為什麼有人提不出好問題?通過剖析機器提問的計算過程,可以一窺有哪些因素制約了人來提出好問題(比如知識網路稀疏、知識缺乏結構,等等)。

對機器來說

-從人的經驗看,好的學習者一定是擅長提問的。機器知識庫作為「學習者」,也許可以利用主動提問來高效構建知識庫。

-提問對人的另一個作用是幫助不同人之間的信息流通。類比到機器知識庫,也許可以通過QA幫助不同知識庫互通有無,相互接納。

從人機合作來說:

-機器有潛力利用其巨大的知識庫產生人從未提出過的問題,生產新知識。

以上是我認為這項研究的終極前景。

仰望星空之後看看腳下。這篇總結文章雜糅AI、認知科學、教育學等領域,試圖提供一個跨學科的框架來梳理「問題生成」的現有方法。框架首先考慮兩個維度:一是從任務設定看提問素材的結構化程度,二是從方法看問題生成的「無監督」程度

1 無結構素材,無需規則的神經網路模型

任務設定

輸入一段文本,輸出一些完全基於這段文本的自然語言問題。不需要規定任何中間過程(「end-to-end」),不需要任何已有知識(當然也就不會與已有知識發生關聯)。

達成效果如下:

(「ours」即本文模型的輸出結果)

方法

由於不試圖使用任何知識規則,作者將輸入文本拆分成token sequence,試圖產生由此文本最大概率(max likelihood)產生的sequence。細節來說,作者原話:

We model the conditional probability using RNN encoder-decoder architecture (Bahdanau et al., 2015; Cho et al., 2014), and adopt the global attention mechanism (Luong et al., 2015a) to make the model focus on certain elements of the input when generating each word during decoding.

訓練模型使用的數據是SQuAD,包含了從536篇文章中人工產生的超過10萬個問題。

表現評估

4個流利英語使用者對問題分別從「自然度」(naturalness, which indicates the grammaticality and fluency)和「難度」 (difficulty, which measures the sentence-question syntactic divergence and the reasoning needed to answer the question)進行評分,兩個維度都是越高越好。

作者另外選取了一個問題生產模型H&S來比較。H&S同樣使用無結構文本,基於手工羅列的規則來產生大量問題,然後通過自動訓練的線性回歸模型來從諸問題中評出最好的。

在自然度和難度方面本文模型都更勝一籌(很遺憾作者沒有給他們的模型賜名,只是稱為「ours」),同時也有更多問題被綜合評為「好問題」。

另外作者也採用了一些計算模型來自動評估問題質量(BLEU, METEOR, ROUGE三個模型),不過我暫時不清楚這些模型在評估的到底是什麼。

2 知識庫素材,手工規則的教育問題生成

任務設定

作者在之前的工作中已經從文本(生物教科書)中抽取了知識庫,知識庫的結構仍是經典的三元組(A - relation - B);比較特別的是,作者還進一步將三元組中的relation手工分類合併,把252種關係縮減為20種,構成了相對簡潔統一的知識庫。目的是生成類似真實教學督導場景中的問題(已經在教育學界被系統研究過,參見Graesser and Person 1994)。

方法:

基於單個三元組或多個三元組,套用手工構造的規則來生成問題。

從知識庫出發構造問題的一大好處是,可以把多個三元組聯繫起來,這可能是提出新問題的重要途徑。得到的問題諸如「貓有尾巴,狗有嗎?」(把同一子集的概念進行對比),「皮膚里存在黑色素或者光敏色素嗎?」(把相似概念的不同性質進行對比),「細菌如何產生能量?」(作者稱之為「因果鏈」,比如這裡是把細菌-食物和食物-能量兩個三元組連起來形成因果鏈)。

表現評估:

人工從問題的(與原文本)相關性、流暢性、模糊性、教學性(Relevance, Fluency, Ambiguity, Pedagogy)打分。教學性似乎是最難的:大部分問題類型都得到了略低於平均分(1-5分,3為平均)的成績。不過考慮到這是一個非常模糊且綜合的標準,能略低於平均分而非毫無教學性,也不錯了。

另一個類似工作也構造了生物書的知識庫,並且直接做成了互動式的教材產品。提問的角度則從教師換成了學生。

任務設定:

在明確的學習互動場景下,作者希望為學習者生成「建議問題」(suggested question,SQ):當學生提出一個問題,或閱讀教科書中的一段話時,生成少量相關問題,幫助加深理解、拓寬思路。

方法:

首先是基於更細緻的一些手工規則,從知識庫中產生了大量問題,形成「問題庫」。當學生提出問題或高亮一段話時,系統識別其中關鍵概念並找到所有相關問題,隨後對問題根據已經手工評分的質量、重要性、相關性排序;不光給出排序最高的幾個「好問題」,還兼顧了問題種類的多樣性。

表現評估:

由於本文工作基於豪華的生物專家團隊,對問題的評價也細緻微妙。比如,對一段話中衍生問題的人工評價,「染色體和DNA的關係為何?」被評為好問題(有用、重要、可能被學生問出來),「脫氧核糖和DNA(脫氧核糖核酸)的關係為何?」則是一般的問題(沒那麼有用,因為兩個概念明顯很接近)。

在我看來,首先,要提出真正有啟發性的好問題,知識庫是必備的基礎,如「複述原文」一般的提問大多與教育場景中的問題相差甚遠。另外,教育場景給自動提問提供了一定的方向性,對問題的評估標準很高、很細緻,不過目前研究仍然強烈依賴於手工評分。有沒有什麼辦法能自動評估問題的好壞呢?

3 猜謎遊戲作為素材,手工規則的問題生成

這裡介紹一個與大部分KBQA無關的特殊場景:通過提問來猜謎。經典的猜謎遊戲比如「20 questions」,通過提出20個只能回答是或否的問題,猜出一個概念。

這裡介紹的工作玩的是「戰艦遊戲」(battleship game):在給定的棋盤上有三艘形狀、位置皆不確定的戰艦,如何通過儘可能少的提問來猜出戰艦的具體構型。

相關問題如,「紅色的戰艦有多長?」,「紅綠戰艦相互平行嗎?」

認知科學常用的研究思路是從不同的演算法提出有效的提問,然後與人們實際提出的問題對比,看哪些演算法更符合人的提問思路。

以戰艦遊戲為例,Rothe et al.使用一套基於lambda calculus和LISP人工改編的語言系統,把所有問題都用基本元素及其之間的運算表示。比如,(size Blue)即是問「藍色戰艦有多長」,(> (size Red) (size Blue))則是問「紅色戰艦比藍色戰艦更長嗎?」。由於問題結構非常固定,可以很容易地從程序語言匹配到自然語言。

由於遊戲場景中,提問的目的是確定的(逼近唯一確定的答案——類似於「消歧義」),當前掌握信息量是可以量化的,那麼問題的評估也就可以量化了。

比如我們前面提到過的問題「重要性」/有用程度,就可以通過資訊理論中常用的方法來衡量,如EIG (expected information gain):評估可能獲得的所有答案及其概率。更多衡量方法總結見 Nelson - Psychological Review, 2005。

對於問題的複雜性,可以直接通過程序語言的長度來衡量。當然,也由於遊戲場景的局限,並不能定義問題的「深度」、「教育性」等。

這些研究給我的啟發是,如果希望客觀地衡量問題的好壞,至少需要明確提問的目的、預估問題的後果(即能獲得怎樣的回答)。如何在知識庫語境下刻畫這些特徵,會是很有趣的下一步。一個思路是參照認知科學中對於「什麼組成了一個概念」的相關研究:畢竟知識庫的複雜結構大多數都是試圖從內涵、外延來刻畫概念。

---

關於作者:

我在紐約大學神經科學系PhD剛讀完一年級,目前正在Todd Gureckis實驗室輪轉(也就是上述battleship那個研究的實驗室)。最近一個月對知識庫和自動問答產生了乾柴烈火的興趣,歡迎交流合作(0lizhiwei0@gmail.com)。
推薦閱讀:

什麼是一流的科學研究?--千禧年的諾貝爾獎,神經科學大師坎德爾
食色性也之1:食 --- 味覺
精英思維,到底是怎樣的思維?
為什麼物體被另一光源照射後,背後的陰影比沒有照射時更暗?
過多的選擇為什麼會影響人們做出決策?

TAG:认知科学 | 人工智能 | 知识图谱 |