孫一博, 秦 兵
(哈爾濱工業大學 計算機科學與技術學院社會計算與信息檢索研究中心, 哈爾濱150001)
近年來,機器閱讀理解任務引起了學界越來越多的關注,其旨在驗證機器以類似于人的方式理解文檔的能力。 基于神經網絡的模型在機器閱讀理解任務上大獲成功,但大多數都是針對大量數據的數據集而設計的,例如:CNN,Squad,NewsQA 等。 本文要研究的中文高考閱讀理解任務,由于其數據量較小,主流的神經網絡模型在其上容易收斂失敗。
為了解決數據稀缺的問題,本文采用基于遷移學習的方法,即使用來自數據豐富的源領域的知識來幫助模型在數據稀少且不宜獲得的目標領域進行高效的訓練[1]。 遷移學習在神經網絡模型中的一個比較直觀的應用是微調(fine-tuning),即用源領域的數據對模型進行預訓練,應用訓練得到權重來初始化模型,隨后在目標領域的數據上通過反向傳播對模型的權重進行微調。
本文基于漸進神經網絡(Progressive neural network)進行中文機器閱讀理解的研究。 漸進神經網絡是近期提出的一種遷移學習框架,它使用橫向的鏈接機制來保留從歷史任務中學習得到的權重,從而在一定程度上解決了遷移學習中的災難性遺忘問題[2]。 本文針對機器閱讀理解任務對漸進神經網絡進行了擴展,使用注意力機制對不同任務間的表示進行計算,并且使用長短記憶網絡對得到的表示建模。 利用中國高考歷屆試卷構建中文閱讀理解數據集CTARC 作為目標數據集,并使用已有的英文閱讀理解數據集RACE 作為源數據集。 實驗結果表明,本文提出的方法優于所有的基線模型。
如圖1 所示,一個漸進神經網絡由若干個互相鏈接的列組成,其中每列代表一個由參數構成的L 層的神經網絡,每層都包含隱層輸出∈,其中ni是第j 列第i 層的輸出維度。 在第一列中,代表建模第一個任務的神經模型的訓練過程結束后,可以得到其參數。 隨后,在兩個任務的情況下,當第二個任務來臨時,保持在第一個任務中學習到的參數不變,并使用隨機初始化的新參數初始化代表第二個任務的神經網絡模型,其中該模型第i 層的輸入包含兩個部分:一部分來自第二個任務自身的輸入,另一部分來第一個任務上一層輸出的橫向連接。 具體的,當推廣到K個任務,這種用于融入歷史任務信息的橫向鏈接可以形式化為(1)式:


圖1 漸進神經網絡Fig. 1 Progressive Neural Network

在漸進神經網絡架構中,單列的所有層都可以看作是一個單變量函數y =f(x),這種架構適用于強化學習,其中神經模型的設計是為了解決特定的馬爾可夫決策過程。 當嘗試將漸進神經網絡框架應用于閱讀理解模型時,為了找到文檔中與問題相關的部分,注意力機制幾乎在所有的為了閱讀理解設計的神經模型中都經常被使用。 注意力機制層通常以文檔表示和句子表示作為輸入,根據問題輸出文檔表示的加權求和,使得該層成為一個二元函數,不符合原來的漸進神經網絡框架。
為了克服這個限制,一個直接的方法是使用公式(2)分別處理兩個輸入,而不考慮它們之間的交互作用,這使得當前任務中的注意力層的輸入和前一個任務中的輸入屬于不同的語義空間。 使用兩個不同的語義空間的組合可能會破壞原有的意義,這種方式很難從前面的注意層中學習到注意力權重。
如圖2 所示,為了能更好地學習注意力知識,本文提出了一種方法,旨在通過讓兩個語義空間的兩部分跨越不同的任務來進行注意力機制,縮短兩個語義空間之間的距離。 形式化的,用二元組 () 表示第j 列第i - 1 層的兩個輸出,用g 表示注意力機制的二元函數,每個函數g 都有不同的參數。 在當前列k,通過將對前序相應位置做注意力機制,可以得到如下的兩個列表(3)和(4):

圖2 交叉注意力適配器Fig. 2 Cross Attention Adapter

實際上,列表C 代表不使用外部鏈接的條件下計算第i 層的注意力機制。 在跳過代表注意力機制的第i 層后,可以用漸進神經網絡的方式計算第i +1 層的輸入。為了更好的獲得組合語義性的表達,相對于使用帶有非線性的前饋神經網絡,本文使用循環神經網絡來構建適配器模塊:首先,用列表A,B,C 和當前的內部注意力結果構建了序列T =,g ()] 。 用 長 短 記 憶 神 經 網 絡(LSTM)按(6)、(7)式得到其組合語義表示:

Stanford Attentive Reader cite 是一個強大的模型,在CNN 數據集上取得了最先進的結果。 作者聲稱,該模型在這個數據集上的性能幾乎達到了上限。
用(p,q,o) 來代表由文章,問題,選項,構成三元組。 p =p1,…,pm和q =q1,…,ql是長度為m 和l的文章詞序列和問題詞序列,o =o1,…,oC是包含C個候選答案的答案集合,每個答案也是一個句子。任務的目標就是在集合o 中找到正確的答案。

類似的,使用雙向GRU 將選項oi編碼為oi,使用雙線性注意力機制計算選項與文章t 的相關性得分,并將該得分送入softmax 函數來得到最終的概率分布。 具體的,第i 個選項是正確答案的概率計算公式(10)為:

RACE 數據集是從中國三家大型免費的公共網站上收集到的原始數據,其中閱讀理解題都是從中國老師設計的英語考試中提取出來的。 清洗前的數據共計137 918 篇文章、519 878 道題,其中初中組有38 159 篇文章、156 782 道題,高中組有99 759 篇文章、363 096 道題。 清洗后的數據量如表1 所示。

表1 數據集劃分Tab. 1 The separation of Dataset
本文收集了2004 ~2016 年中國高考的原始資料,其中閱讀理解題提取了中國高考專家設計的科普文章閱讀理解部分的閱讀理解題。 該部分中的文章主要是以科普類文章為主。 為了對原始數據進行清洗,進行了以下篩選步驟。 首先,刪除所有與問題設置格式不一致的問題和試題,例如:如果某道題的選項數不是4 個,就會被刪除。 同時,還刪除了所有含有“下劃線”或“段落”等關鍵詞的問題,因為下劃線和段落段信息的效果難以重現。 經過過濾步驟后,一共得到176 個段落和486 個問題。 為了進行數據增強,用谷歌翻譯將得到的數據進行英文翻譯,得到了CTARC-E 數據集。 CTARC 數據集的詳細統計見表2。

表2 數據集統計Tab. 2 Dataset statistis
實驗結果如表3 所示,其中RACE single 代表在RACE 數據集上訓練Stanford AR 模型,CTARC single in Chinese 代表在CTARC 數據集上訓練Stanford AR 模 型,CTARC single in English 代 表 在CTARC-E 數據集上訓練Stanford AR 模型,Twocolumn finetuning 代表使用微調做遷移學習, Twocolumn PNN 代表使用原始的漸進神經網絡做遷移學習,Two-colum PNN+CRA 代表使用融合交叉注意力適配器的漸進神經網絡做遷移學習。 在應用漸進神經網絡的設置時,使用RACE 作為第一個任務,使用CTARC-E 作為第二個任務。

表3 實驗結果Tab. 3 Main results
Stanford AR 模型在RACE 數據集上的性能為43.3%,遠低于人類上限性能94.5%,這意味著RACE 是一個具有挑戰性的數據集,現有的模型可能會從數據集中學習到有限的知識。 然而,所有的遷移學習方法,都有助于模型在單一中文數據上集提高性能。 在這些方法中,本文提出的框架獲得了10%的顯著提高。 在遷移學習的三種設置中,Two-column finetuning 優于Two-column PNN 3.7%,這表明使用原始的漸進神經網絡對于處理閱讀理解問題并不是一種有效的方法。 本文所提出的方法的取得了最好的效果,顯示出了交叉注意力適配器的有效性。
基于遷移學習的方法利用從一個大型的英語數據集中轉移的知識來幫助模型更有效地解決中文高考中的閱讀理解任務。 本文提出了一種具有交叉注意力適配器的漸進神經網絡模型,用于解決閱讀理解任務。 該方法在漸進神經網絡模型的基礎上進行了改進,提供了一種跨越不同任務的注意力機制,并使用長短記憶神經網絡來表示所有注意力層的組合輸出。 實驗結果表明,與所有的基線模型相比,該模型在解決目標中文閱讀理解任務上的表現更好。