微軟創CoQA挑戰新紀錄,最接近人類水平的NLP系統誕生

磐創AI發表於2018-12-18

來源:Arxiv/CoQA

轉載自:新智元,未經允許不得二次轉載

近日,微軟語音與對話研究團隊在史丹佛機器對話式問答資料挑戰賽CoQA Challenge中奪冠,並且單模型和整合模型分別位列第二和第一,讓機器閱讀理解向著人類水平又靠近了一步。

這也是繼語音識別、機器翻譯等成果之後,微軟取得的又一項好成績。

微軟創CoQA挑戰新紀錄,最接近人類水平的NLP系統誕生

微軟研究人員將自注意力模型和外部注意力相結合,並且用新的方法整合了谷歌BERT語境模型,構建了一個基於注意力的會話式問答深度神經網路SDNet,更有效地理解文字和對話歷史。

一直以來,微軟研究人員都有在機器閱讀理解中使用自注意力模型加外部注意力的想法,終於在這項工作中首次得以實現。

CoQA競賽:更接近人類對話的機器問答挑戰賽

CoQA是面向建立對話式問答系統的大型資料集,CoQA挑戰的目標是衡量機器對文字的理解能力,以及機器面向對話中出現的彼此相關的問題的回答能力的高低(CoQA的發音是“扣卡”)

CoQA包含12.7萬個問題和答案,這些內容是從8000多個對話中收集而來的。每組對話都是透過眾籌方式,以真人問答的形式在聊天中獲取的。

CoQA的獨特之處在於:

  1. 資料集中的問題是對話式的

  2. 答案可以是自由格式的文字 

  3. 每個答案還附有對話段落中相應答案的理由

  4. 這些問題收集自七個不同的領域

CoQA 資料集旨在體現人類對話中的特質,追求答案的自然性和問答系統的魯棒性。在CoQA 中,答案沒有固定的格式,在問題中頻繁出現指代詞,而且有專門用於跨領域測試的資料集。

CoQA具備了許多現有閱讀理解資料集中不存在的挑戰,比如共用參照和實用推理等。因此,CoQA Challenge 也更能反映人類真實對話的場景。

微軟創CoQA挑戰新紀錄,最接近人類水平的NLP系統誕生

CoQA 與 SQuAD 兩個資料集對比:SQuAD 中約一半都是what型,CoAQ種類更多;SQuAD中沒有共識推斷,CoQA幾乎每組對話都需要進行上下文理解推斷;SQuAD中所有答案均可從原文字中提取,CoQA中這一比例僅為66.8%。

此前,史丹佛大學的自然語言處理小組已經先後發表了 SQuAD 和 SQuAD2.0 資料集。該資料集包含一系列文字和基於文字的問題、答案。針對該資料集提出的任務要求系統閱讀文字後判斷該問題是否可以從文字中得出答案,如果可以回答則從文字中擷取某一片段做出回答。

目前,微軟語音與對話研究已經把他們在 CoQA Challenge上奪冠成果的預印本論文發在了Arxiv上。下面結合論文內容,對該團隊的實驗方法和研究成果做簡單介紹。

微軟創CoQA挑戰新紀錄,最接近人類水平的NLP系統誕生

結合自注意力模型和外部注意力,更有效理解文字和對話歷史

在本文中,我們提出了SDNet,一種基於語境注意力的會話問答的深度神經網路。我們的網路源於機器閱讀理解模型,但具備幾個獨特的特徵,來解決面向對話的情境理解問題。

首先,我們在對話和問題中同時應用注意力和自我注意機制,更有效地理解文章和對話的歷史。其次,SDNet利用了NLP領域的最新突破性成果:比如BERT上下文嵌入Devlin等。

我們採用了BERT層輸出的加權和,以及鎖定的BERT引數。我們在前幾輪問題和答案之前加上了當前問題,以納入背景資訊。結果表明,每個部分都實現了顯著提高了預測準確性的作用。

我們在CoQA資料集上對SDNet進行了評估,結果在全域性F1得分方面,比之前最先進模型結果表現提升了1.6%(從75.0%至76.6%)。整體模型進一步將F1得分提升至79.3%。此外,SDNet是有史以來第一個在CoQA的領域內資料集上表現超過80%的模型。 


實驗方法與衡量指標

我們在CoQA 上評估了我們的模型。在CoQA中,許多問題的答案需要理解之前的問題和答案,這對傳統的機器閱讀模型提出了挑戰。表1總結了CoQA中的領域分佈。如圖所示,CoQA包含來自多個領域的段落,並且每個段落的平均問答超過15個。許多問題需要上下文的理解才能生成正確答案。

 微軟創CoQA挑戰新紀錄,最接近人類水平的NLP系統誕生

對於每個域內資料集,開發集中有100個段落,測試集中有100個段落。其餘的域內資料集位於訓練集中。測試集還包括所有域外段落。

基線模型和指標

我們將SDNet與以下基線模型進行了比較:PGNet(具有複製機制的Seq2Seq)、DrQA、DrQA +PGNet、BiDAF ++ Yatskar(2018)和FlowQA Huang等。 (2018)。與官方排行榜一致,我們使用F1作為評估指標,F1是在預測答案和基本事實之間的單詞級別的精度上的調和平均。

微軟創CoQA挑戰新紀錄,最接近人類水平的NLP系統誕生

結果

上表所示為SDNet和基線模型的效能對比。如圖所示,使用SDNet的實現結果明顯好於基線模型。具體而言,與先前的CoQA FlowQA模型相比,單個SDNet模型將整體F1得分提高了1.6%。 Ensemble SDNet模型進一步將整體F1得分提升了2.7%,SDNet是有史以來第一個在CoQA的領域內資料集上表現超過80%的模型(80.7%)。

微軟創CoQA挑戰新紀錄,最接近人類水平的NLP系統誕生

上圖所示為開發集隨epoch變化的F1得分情況。SDNet在第二個epoch之後的表現超越了兩個基線模型,並且僅在8個epoch後就實現了最優秀的表現。

微軟創CoQA挑戰新紀錄,最接近人類水平的NLP系統誕生

消融研究 (Ablation)

我們對SDNet模型進行了消融研究,結果在上表中顯示。結果表明,正確使用上下文嵌入BERT是至關重要的。雖然移除BERT會使開發集的F1得分降低6.4%,但在未鎖定內部權重的情況下加入BERT會使得F1得分降低13%。

微軟創CoQA挑戰新紀錄,最接近人類水平的NLP系統誕生

上下文歷史

在SDNet中,我們將當前問題與前N輪問題和真實答案前置一致,來利用對話歷史記錄。我們試驗了不同的N值的效果,並在表4中列出了結果。試驗顯示,我們的模型的效能對N的設定不是非常敏感。最後,我們的最終模型設定N = 2。

未來:讓模型更接近於真人對話場景

我們提出了一種新的基於情境注意的深度神經網路SDNet,以解決對話問題的回答任務。透過在透過和對話歷史上利用注意力和自我關注,該模型能夠理解對話流並將其與消化段落內容融合在一起。

此外,我們融入了自然語言處理領域 BERT的最新突破,並以創新的方式利用它。與以前的方法相比,SDNet取得了卓越的成果。在公共資料集CoQA上,SDNet在整體F1指標得分上的表現比之前最先進的模型高1.6%。

縱觀CoQA Challenge排行榜,從今年8月21日到11月29日,短短3個月時間裡,機器問答對話的總體成績就從52.6提升到79.3,距離人類水平88.8似乎指日可待。

“最後一公里往往是最難的,很難預測機器能否達到人類水平。”論文作者之一、微軟全球技術Fellow、負責微軟語音、自然語言和機器翻譯工作的黃學東博士告訴新智元。

未來,他們打算將SDNet模型應用於具有大型語料庫或知識庫的開放域中,解決多迴圈問答問題,這類問題中,目標段落可能是無法直接獲得的。這和人類世界中的問答的實際情況可能更為接近。

SDNet相關論文地址:

關於CoQA Challenge的更多資訊詳見:

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31555081/viewspace-2285633/,如需轉載,請註明出處,否則將追究法律責任。

相關文章