國防科大登上SQuAD 2.0榜首,機器閱讀能力再進化|論文
來自專欄量子位26 人贊了文章
圓栗子 發自 凹非寺
量子位 出品 | 公眾號 QbitAI
最近,國防科大 (NUDT) 登頂SQuAD 2.0排行榜。
擊敗了微軟強敵FusionNet++,機器的閱讀理解能力又進化了。
SQuAD 2.0是個閱讀理解數據集,機器需要根據文本中的信息,回答問題。
強調一下,所有的答案都要來自文本。
SQuAD 2.0的特殊之處在於,有些問題,文本里並沒有答案。
那麼,機器回答這些問題的時候,要明確表示「No Answer」。
國防科大和微軟亞洲研究院,提出的閱讀-驗證演算法,便是為檢測無法回答的問題而生的。
備選答案,需要驗證
要找出「不該亂填答案」的問題,常用的方法,就是預測No Answer的概率。
可這樣的做法,可能就不會去檢測,系統給出的其他備選答案,有多可信了。
於是,國防科大和微軟組成的Minghao Hu團隊,給演算法加入了驗證候選答案的步驟,在SQuAD 2.0中獲得了74.2 F1的最高分。
這裡,閱讀器與驗證器,都不可缺少。
比如,閱讀理解的文章提到,諾曼底是法國的一個地區。
但問題問的是,法國是 ( ) 的一個地區,文中沒有提到。
這對人類來說,難度不大,諾曼底可能連干擾項也算不上。但演算法會怎麼看?
首先,閱讀器從文中找出備選答案 ,同時也算出無答案概率 (NA Prob) 。
然後,把備選答案扔給驗證器 (Answer Verifier) ,看文中相關句子的表達,能不能回答問題。最後,把驗證器的無答案概率,和第一步的無答案概率,結合到一起,才能決定要不要輸出No Answer。
驗證答案,並不簡單
不過,驗證諾曼底是不是問題的答案,需要經過一番推理。
還是剛才的栗子,「諾曼底是法國的一個地區」用A表示,「法國是諾曼底的一個地區」用B表示。
如果,A能推出B,答案就是諾曼底。A不能推出B,諾曼底就被淘汰。
把這個驗證過程,交給神經網路,團隊試了三種不同的模型:
Model-I,是最簡單的順序結構。
Model-II,是互動式結構。由於要識別答案和問題之間的邏輯蘊含,團隊使用了基於交互的一種方法,包含這幾層:
· 編碼 (Encoding)
· 推理建模 (Inference Modelling):建立兩個句子之間的交互。· 句內建模 (Intra-Sentence Modelling) :找出句子內部的邏輯。· 預測 (Prediction) :給出階段性的無答案概率。
Model-III,則是把前兩個模型整合起來,看預測結果會不會更理想。
其中,Model I用了無監督的預訓練,和有監督的微調。也就是說,閱讀無標籤的文本,來優化模型,初始化參數;然後按照有監督的目標,來調整參數。
Model II是直接用有監督的損失來訓練的。
由於兩個模型架構不同,需要的訓練過程也不同。因此,Model III是用二者的預訓練參數來初始化的,然後整體微調。
療效出眾
訓練完成,就把AI扔進SQuAD 2.0的隱藏驗證集 (下圖Test欄) ,試一試:
離人類最近
測試用的閱讀器,叫做Reinforced Mnemonic Reader (RMR) ,同樣來自Minghao Hu團隊,且在SQuAD 1.1榜上有名。
加上新的驗證器,RMR (+ELMo嵌入) 的閱讀理解成績,高過了所有的前輩 (對手都是SQuAD 2.0論文中列出的強者) 。
它的兩項分數,都與人類的表現最為接近:
71.7 EM,是精確匹配結果,表示模型給出的答案與標答完全一致。
74.2 F1,是模糊匹配,可理解為部分回答正確,根據模型的答案與標答之間的重合度計算。
登頂SQuAD 2.0排行榜的,就是這組成績。
三個驗證器比一比
擊退外敵,再來看一下三個驗證器模型,誰的無答案正確率最高。
Model-III,以微弱的優勢勝出。由此觀之,把Model I、II整合起來,還是有效的。
不過,加上ELMo嵌入,倒是沒有帶來明顯的加成。
欣賞論文吧
「閱讀+驗證」模型,離人類的閱讀理解分數,還有一段距離。
不過,更準確地判斷哪些題目不能亂答,也是很大的一步了。
傳送門:
https://arxiv.org/pdf/1808.05759.pdf
— 完 —
歡迎大家關注我們的專欄:量子位 - 知乎專欄
誠摯招聘
量子位正在招募編輯/記者,工作地點在北京中關村。期待有才氣、有熱情的同學加入我們!相關細節,請在量子位公眾號(QbitAI)對話界面,回復「招聘」兩個字。
量子位 QbitAI· 頭條號簽約作者
?? ? 追蹤AI技術和產品新動態
推薦閱讀: