當前位置:
首頁 > 最新 > 首爾國立大學:問答問題中基於大規模細粒度監督數據的遷移學習研究

首爾國立大學:問答問題中基於大規模細粒度監督數據的遷移學習研究

你和「懂AI」之間,只差了一篇論文

很多讀者給芯君後台留言,說看多了相對簡單的AI科普和AI方法論,想看點有深度、有厚度、有眼界……以及重口味的專業論文。

為此,在多位AI領域的專家學者的幫助下,我們解讀翻譯了一組頂會論文。每一篇論文翻譯校對完成,芯君和編輯部的老師們都會一起笑到崩潰,當然有的論文我們看得抱頭痛哭。

同學們現在看不看得懂沒關係,但芯君敢保證,你終有一天會因此愛上一個AI的新世界。

這是讀芯術解讀的第17篇論文

ACL 2017 Short Papers

問答問題中基於大規模細粒度監督數據的遷移學習研究

Question Answering through Transfer Learning from Large Fine-grained Supervision Data

首爾國立大學

Seoul National University

【摘要】通過在不同大型、細粒度的QA數據集上訓練遷移學習模型,可以顯著提升問答(QA)任務效果。本文使用SQuAD的基本遷移學習技術,在兩個經過深入研究的QA數據集WikiQA和SemEval-2016(任務3A)中實現了當前最優結果。對於WikiQA,我們的模型比以前最佳模型的效果提升了8%。我們同時發現,通過定量結果和可視化分析,更精細的監督方式比粗粒度的監督方式能更好地指導辭彙和句法信息學習。本文還展示了一個類似的遷移學習程序在文本蘊含任務上的最新成果。

1 引言

問答(QA)問題是自然語言處理(NLP)領域中的一個長期挑戰,研究人員在過去幾年中為此項任務引入了幾個範例和數據集。這些範例在問題、答案的類型以及訓練數據的大小上各有不同,如從幾百到幾百萬。

上下文感知QA範式可以通過參考其附帶的上下文(段落或句子列表)獲得每個問題的答案。在這種情況下,兩種最顯著的監督類型是粗粒度的句子級別(sentence-level)和細粒度的分詞級別(span-level)。在句子級QA中,任務是在候選列表中挑選與問題最相關的句子(Yang etal., 2015)。在分詞級QA中,任務是找到回答問題的給定段落中的最小分詞間隔(Rajpurkar等,2016)。

在本文中,我們通過一個在大型、分詞級QA數據集上訓練的標準遷移學習模型來處理更粗糙的句子級QA問題。我們證明,目標任務不僅受益於源數據集的規模,而且還受益於細粒度分詞監督方法更好學習句法和辭彙信息的能力。

對於源數據集,我們預先訓練了SQuAD(Rajpurkar等,2016),一個最近發布的分詞監督QA數據集。對於源和目標模型,我們採用BiDAF(Seo等,2017),數據集排行榜中表現最好的模型之一。對於目標數據集,我們評估了兩個最近的QA數據集,WikiQA(Yang etal., 2015)和SemEval 2016(Task 3A)(Nakov et al., 2016),其與SQuAD具有完全不同的特徵。我們的結果顯示,WikiQA有8%的提升,SemEval有1%的改善。此外,我們報告了一個在採用類似的遷移學習過程SICK(Marelliet al., 2014)中文本蘊含識別(RTE)的最新技術成果。

2 背景和數據

現代機器學習模型,特別是深層神經網路,往往顯著受益於遷移學習。在計算機視覺中,對像ImageNet(Deng等,2009)等大型圖像分類數據集進行訓練的深層卷積神經網路已被證明可用於初始化其他視覺任務模型,如對象檢測(Zeiler和Fergus,2014)。在自然語言處理中,領域適應性一般是句法解析(McClosky等,2010)和命名實體識別(Chiticariuet al., 2010)領域的重要課題。隨著分散式表示的普及,諸如word2vec(Mikolov等人, 2013b, a)和glove(Pennington等,2014)的預訓練詞向量模型也被廣泛地用於自然語言任務中(Karpathy和Fei-Fei ,2015;Kumar等,2016)。除此之外,我們利用QA數據集初始化模型,並展示標準遷移學習如何在目標QA數據集中實現最優結果。

NLP中有幾個QA範例,可以根據用於回答問題的背景和監督方式進行分類。這種背景可以從結構化和有限的知識庫(Berant等人,2013),到非結構化和無界自然語言形式(例如,網路上的文檔(Voorhees和Tice,2000))和非結構化但受限制的(例如,一段或多句話(Hermannet al., 2015))。神經網路回答的最新進展推進了這些範例中的眾多數據集和成功模型(Rajpurkar等,2016;Yang等,2015;Nguyen等,2016; Trischler等,2016)的產生。這些數據集中的答案類型主要分為三類:句子級,聯繫上下文分詞間隔的和重新生成的。在本文中,我們特別關注前兩個,並且顯示分詞監督模型可以更好地學習句法和辭彙特徵。在這些數據集中,我們簡要描述了本文中用於實驗的三個QA數據集。同時還給出了一個RTE數據集的描述,用於非QA任務的示例。請參閱表1查看數據集的示例。

SQuAD(Rajpurkar等,2016)是一個最近的基於分詞間隔的QA數據集,其中包含100k /10k訓練/開發實例。每個例子都是維基百科的一個上下文段落和一個由人類創建的問題,答案是上下文中的一個分詞間隔。

SQUAD-T是我們對SQuAD數據集的修改,以允許句子選擇的QA。("T"為senTence)。我們將上下文段落分解成句子,並將任務制定為對每個句子是否包含答案進行分類。這使我們能夠在分詞監督和句子監督的QA數據集之間進行預訓練的公平比較。

WikiQA(Yang etal., 2015)是一個句子級的QA數據集,其中包含1.9k / 0.3k訓練/開發的答案例子。每個例子都包含真實用戶的Bing查詢和Bing檢索的維基百科文章的代碼段,平均包含18.6個句子。任務是對每個句子是否提供了查詢答案進行分類。

SemEval 2016(任務3A)(Nakov等人,2016)是一個句子級QA數據集,其中包含1.8k /0.2k / 0.3k訓練/開發/測試示例。每個例子由用戶問題和10條評論組成。任務是對每個評論是否與問題相關進行分類。

SICK(Marelliet al., 2014)是一個用於識別文本蘊含(RTE)的數據集,其中包含4.5K / 0.5K / 5.0K訓練/開發/測試示例。每個例子都包含一個假設和一個前提,目標是確定是否前提是否包含矛盾的或對假設是中性的(因此是一個分類問題)。我們還展示了SICK的結果,以顯示分詞監督的QA數據集也可用於非QA數據集。

3 模型

在分詞級QA任務提出的眾多模型中,我們採用了一種開源模型,BiDAF(Seo等,2017)。

BiDAF。 模型的輸入是問題q和上下文段落x。然後,模型選擇最佳答案範圍,即,其中i

在這裡,我們簡要介紹一下對遷移學習到句子級QA的很重要的應答模塊。應答模塊的輸入是一系列向量,每個向量編碼了關於第i個上下文單詞的足夠信息及其與其周圍單詞和問題中單詞的關係。那麼應答模塊的作用是將每個向量hi映射到其起始和終止位置概率和。

BiDAF-T是指BiDAF的修正版本,使其與句子級QA兼容。("T"為senTence)。在這個任務中,輸入是問題q和句子的列表,,其中T是句子的數量。請注意,與每個示例輸出單個答案的BiDAF不同,我們需要為每第k個句子輸出一個C分類。

由於BiDAF是分詞選擇模型,因此不能直接用於句子級分類。因此,我們用不同的應答模塊替代BiDAF的原始應答模塊,並保持其他模塊與BiDAF的模塊相同。給定新的應答模塊的輸入,其中上標是句子索引(1≤k≤T),我們通過max-pooling最大池化方法獲得第k個句子的C分類得分,:

其中分別是可訓練的權重矩陣和偏差,並且對於每個元素應用max()函數。

對於WikiQA和SemEval 2016,類別(C)的數量為2,即每個句子(或評論)是相關的或不相關的。由於用於這些數據集的一些指標需要完整排名,所以我們使用「相關」標籤的預測概率對句子進行排序。

注意,BiDAF-T也可以用於RTE數據集,我們可以將假設作為一個問題,將前提作為上下文句子(T = 1)進行分類,並將每個例子分為「蘊含」,「中性」,或「矛盾」(C = 3)。

遷移學習。 相同模型架構之間的遷移學習[3]是直接的:我們首先使用源數據集預先訓練的源模型的權重初始化目標模型的權重,然後使用目標數據集進一步訓練(微調)目標模型。要從BiDAF(在SQuAD上)轉移到BiDAF-T,我們遷移相同模塊的所有權重,並用隨機值初始化BiDAF-T中的新的應答模塊。有關更多訓練細節,請參閱附錄A.

表1 來自QA數據集的問題上下文對和來自RTE數據集的前提假設對的示例。Q表示問題,C表示上下文,A表示答案,P表示前提,H表示假設。

4 實驗

表2 WikiQA和SemEval-2016的結果(任務3A)。第一行是非預訓模型的結果,*表示集合方法。使用的度量是平均精度(MAP),平均相對秩(MRR),Rank 1(P @ 1)和平均召回率(AvgR)。Rank 1,2,3表示由MAP排序的前人工作的結果。對於WikiQA,他們來自Wang andJiang (2017a); Tymoshenko et al. (2016); Miller et al. (2016),。對於SemEval2016,它們來自Filice etal. (2016); Joty et al. (2016); Mihaylov and Nakov (2016).。SQuAD *&是在兩個數據集上實驗最新技術的結果。

問題回答結果。 表2展示了我們在WikiQA和SemEval-2016上遷移學習的最先進的結果,以前的模型的表現以及不使用預訓練或沒有精確調整的幾種精簡方法。表2中有多個有趣的觀察結果如下:

(a)如果我們僅在沒有預先訓練的目標數據集上訓練BiDAF-T模型(表2的第一行),結果很差。這顯示了預訓練和精準訓練的重要性。

(b)對SQuAD和SQuAD-T進行預訓練(第二和第三行)可以在WikiQA數據集中獲得接近最新技術的結果,但不能在SemEval-2016中實現。有趣的是,我們在SemEval-2016上的實驗效果並不比不適用遷移學習的訓練更好。我們推測這是由於分別來自社區和維基百科的SemEval-2016和SQuAD的領域之間的顯著差異。

(c)使用精簡方法(第四和第五行)對SQuAD和SQuAD-T在WikiQA上進行預訓練,其效果顯著優於最高排名系統(超過5%)。它也優於2016年SemEval的第二名排名系統,僅次於第一名系統的1%。

(d)遷移學習模式在分詞級別監督(SQuAD)進行預訓練,能比粗略的句子級監督(SQuAD-T),獲得更好的結果,

最後,我們還在相同的BiDAF架構上使用了12種不同的集成訓練方法,它在兩個數據集中都取得了當前最優結果。該系統比WikiQA中排名最高的系統超過8%,並且比SemEval-2016的最佳系統在每個度量標準中均優於1%。重要的是要注意,雖然我們在大規模SQUAD轉移到較小的WikiQA中確實受益匪淺,但鑒於SQuAD-T和SQuAD(>3%)之間的差距,我們發現分詞監督起著一個非常重要的作用。

改變預訓練數據集的大小。 我們改變在預訓練期間使用的SQuAD數據集的大小,並通過微調對WikiQA進行測試。結果如表3所示。如預期的那樣,WikiQA上的MAP隨著SQuAD的大小而下降。值得注意的是,在SQuAD-T(表2)上的預訓練比在50%的SQuAD上的預訓練產生的MAP低0.5分。換句話說,預訓練中分詞級監督數據的價值是句子級監督數據的兩倍及以上。此外,即使是小規模的細粒度監督數據也是有幫助的;使用12.5%的SQuAD進行預訓練比無預訓練具有超過7分的優勢。

分析。 圖1顯示了表1 WikiQA示例中問題與上下文句子之一的潛在學習圖。頂部映射在SQuAD-T(對應於表2中的SQuAD-T&Yes)中進行了預先訓練,底部映射是在SQuAD(SQuAD&Yes)上預先訓練。顏色越紅,字之間的相關性就越高。這裡觀察到兩個有趣的現象。

首先,在SQuAD預訓模型(底部)中,我們看到問題airbus和上下文aircraft和aerospace之間的對應關係很高,但是SQuAD-T預訓練模型沒有學習這種對應關係。

表3 在預訓練中使用的具有不同大小的SQuAD數據集的結果。所有這些都在WikiQA上進行了微調和測試。

圖1 顯示了(頂部)SQuAD-T預訓練模型和(底部)SQuAD預訓練模型的WikiQA中問題(垂直)和其上下文(水平)的子集之間的對應關係。越紅,相關性越高。

其次,我們看到SQuAD預訓練模型的圖更加稀疏,表明能更精確地定位問題和語境單詞之間的對應關係。事實上,我們比較了SQuAD&Y和SQuAD-T&Y中WikiQA測試示例的稀疏性。根據Hurley和Rickard(2009),圖的稀疏性定義為

其中是圖中0和1之間的一組值,是我們定義為0.01的一個較小的值。稀疏度的直方圖如圖2所示。SQuAD&Yes和SQuAD-T&Yes之間的WikiQA測試示例的平均稀疏度分別為0.84和0.56。

更多分析,包括誤差分析和可視化分析,見附錄B。

蘊含結果。 除了QA實驗之外,我們還顯示在分詞監督QA訓練的模型可以用於文本蘊含任務(RTE)。表4顯示了BiDAF-T在SICK數據集(Marelliet al., 2014)上的遷移學習結果,具有各種預訓練程序。請注意,SNLI(Bowman等,2015)是與SICK相似的任務,並且顯著較大(150K /10K / 10K 訓練/開發/測試示例)。在這裡我們觀察到以下三個現象:

(a)在SQuAD上預先訓練的BiDAF-T優於沒有任何預訓練的6%,並且優於在SQuAD-T上預先訓練的2%,這表明遷移學習為大型分詞監督QA提供了明顯的改進。

(b)在SQUAD + SNLI進行預訓練優於僅在SNLI上進行預訓練。鑒於SNLI大於SQuAD,其性能差異是一個強有力的指標,即我們不僅受益於SQuAD的規模,還受益於其提供的細粒度監督方法。

(c)使用SQUAD + SNLI整體預訓練程序,優於以前的最高水平的2%。

值得注意的是,Mou et al. (2016) 也通過對SNLI進行預先訓練,顯示出SICK的有效性。

圖2 SQuAD-T預訓練模型(SQuAD-T&Yes,blue)和SQuAD預訓練模型(SQuAD&Yes,red)圖的稀疏度(等式2)的直方圖。SQuAD預訓練模型(0.84)的平均稀疏度明顯高於SQuAD-T預訓練模型(0.56)。

表4:精確計算後的SICK結果。第一排指只使用SICK的訓練。*表示整合方法。

5 結論

在本文中,我們展示了WikiQA和SemEval-2016(任務3A)的最先進結果,以及一項蘊含任務SICK,分別比以前方法獲得了8%,1%和2%的提升。我們發現,通過對大型分詞級監督下訓練的問答模型向句子級監督問答進行標準遷移學習,可以大大提升句子級監督問答的效果。同時,這種遷移學習可以適用於其他NLP任務,如文本蘊含。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 讀芯術 的精彩文章:

想年薪百萬?你的命運可能在AI手中
今日芯聲 HoloLens掃臉就能讀出心跳,你敢嘗試嗎?

TAG:讀芯術 |