劉文潔, 林 磊, 孫承杰
(哈爾濱工業大學 計算機科學與技術學院, 哈爾濱 150001)
語義推理理解作為自然語言處理研究的基礎任務,在很多領域中都有重要的應用,例如:問答領域、信息檢索、指代消解等。語義推理理解任務一般包括2類信息:前提信息和推論信息。任務的目標是判斷前提句和推論句之間的推理關系——蘊含、中立、矛盾。
語義推理理解主要分為2個階段:語義向量表示和推理關系表示。其中,在語義向量表示方面,本文使用深度學習的方法將前提句和推論句表示成文本向量的形式,并且使用了注意力機制提升文本的語義向量表示。在推理關系表示方面,本文重點使用雙線性函數來抽取不同文本之間的推理關系。為了使神經網絡能夠充分表達文本的語義向量信息,本文使用遷移學習將從大規模源語料中學習到的語義向量表示和推理關系表示應用在小規模任務的數據集當中。同時,本文還使用了集成模型,融合機器學習和深度學習的語義推理理解機制,取得了不錯的效果。
在早期階段,研究者大多使用機器學習的方法來進行語義推理理解。使用邏輯公式[1-2]進行語義推理是一種常用的方法。此外還有建立語法分析樹、提取句子中需要對齊的單詞信息等都是提取語義特征常用的方法。隨著深度學習的發展和在自然語言處理方面的應用,研究者開始使用循環神經網絡(RNN)[3-4]來求得語義向量表示。循環神經網絡能夠很好地處理自然語言當中的時序信息,但是容易出現梯度消失和梯度爆炸現象,導致神經網絡無法訓練。長短期神經網絡(LSTM)[5]在循環神經網絡的基礎上增加了控制門—輸入門、遺忘門、輸出門,在一定程度上解決了這個問題。
注意力機制在自然語言處理當中的應用是將更多的權重放在重要的單詞或者短語上,用以提高文本處理的準確率。Rockt?schel等人[6]將注意力機制應用在文本蘊含領域,增加前提句和推論句相關聯單詞的權重。Cui等人[7]將注意力機制應用在閱讀理解領域,通過建立文檔-問題矩陣,提高閱讀理解的準確率。Liu等人[8]提出了自身的注意力機制,用來挖掘文本內單詞之間的關聯信息。
遷移學習(Transfer learning)[9]就是把已訓練好的模型參數遷移到新的模型中來幫助新模型訓練。考慮到大部分數據或任務是存在相關性的,所以通過遷移學習可以將已經學到的模型參數(也可理解為模型學到的知識)通過某種方式來分享給新模型,從而加快并優化模型的學習效率,而無需類似大多數網絡那樣從零學習。微軟[10]提出了2段式的遷移學習網絡并成功應用在閱讀理解領域中,旨在變換至一個新的領域中生成問題答案對。
本文實現了基于注意力機制的語義推理網絡。使用LSTM對前提句和推論句進行語義向量編碼。為了獲得更有效的前提信息,本文在進行前提句編碼時,使用了注意力機制,融合文章的推論切入點信息,使得前提句中包含更多的語義特征。本文使用雙線性來獲取前提句和推論句的語義推理關系。由于本文使用的實驗數據集數據量比較小,使用遷移學習讓語義推理模型在大規模數據集中充分學習語義向量表示和語義推理關系表示。再將語義推理模型遷移到小數據集上展開訓練。系統整體框架結構可如圖1所示。

圖1 基于注意力機制的語義推理網絡
本文使用SemEval 2018 Task 12 The Argument Reasoning Comprehension Task[11]的數據集。數據格式可見表1。數據包含四元組——推論(Warrant0、Warrant1)、前提(Reason)、切入點(Claim)、標簽(CorrectLabel),和2個額外信息——文章標題(DebateLable)、文章內容(DebateInfo)。數據集包含1 210對訓練集、316對驗證集和444對測試集。本文使用Stanford Natural Language Inference(SNLI)[12]數據集作為遷移學習的源任務。重點學習語義推理中的語義向量表示和推理關系表示。
研究中使用LSTM模型完成語義向量編碼。輸入是文本的單詞序列T={t1,t2,…,tm},其中ti表示文本中第i個單詞的詞向量,m表示文本的長度。LSTM模型的輸出信息為H={h1,h2,…,hm}。通常,將會對LSTM模型的輸出信息進行平均池化或者最大池化處理來獲得文本的向量表示。為了捕捉到更加豐富的語義向量,本次研究中使用了融合前提句和切入點信息的語義向量。將切入點句子的LSTM模型的最后一個時刻的輸出作為其語義編碼向量,與前提句LSTM模型每一時刻的輸出做注意力機制的計算。計算結果為融合了前提句與切入點句子的語義向量編碼。同樣,將推論句輸入到LSTM模型中,平均LSTM每一時刻的輸出結果作為推論句子的語義編碼向量。

表1 The Argument Reasoning Comprehension 數據集
雙線性可以計算2個文本向量的語義推理關系。其中,X∈Rm,Y∈Rm表示前提句和推論句的語義向量,雙線性矩陣W∈Rm*m是抽取2個向量關系的參數矩陣。雙線性的數學表述則如式(1)所示:
V=X·W·YT
(1)
本文使用雙線性分別計算前提句與2個推論句之間的蘊含概率關系,選擇蘊含概率較大的作為最終的答案。
為了增強模型的語義向量表示和推理關系表示能力,本文使用了SNLI語料對任務模型進行了預訓練。首先將前提句和推論句輸入到LSTM模型當中,對LSTM模型的輸出做池化處理獲得前提句和推論句的語義向量表示。使用雙線性函數獲得前提句和推論句的推論關系表示。由于SNLI語料庫規模比較大,使LSTM模型和雙線性矩陣能夠得到充分的訓練。將LSTM模型和雙線性矩陣遷移到目標任務當中,使得目標任務在開始訓練時就具備一定的語義表示能力和語義推理能力。
基于模型融合的語義推理網絡則引入了傳統特征和深度學習模型,全方位、多角度地挖掘文本之間的語義推理關系。語義向量表示與之前相同,將文本的詞向量輸入到LSTM中,對輸出結果做池化處理,獲得文本的語義向量表示。傳統特征就是提取了前提句和推論句單詞的上下位關系、編輯距離、Jaccard距離等多種性能模式。集成模型使用拼接的方式融合傳統特征和深度學習的特征,即將融合了前提句和切入點句子的注意力向量和推論句的文本向量進行拼接,再與傳統特征實現拼接。最后將拼接的向量輸入DNN網絡進行分類處理。基于模型融合的語義推理網絡如圖2所示。
實驗的損失函數使用均方誤差MSE,數學運算公式如下:
(2)
評價指標使用準確率,具體如式(3)所示:
(3)
表2顯示了ARC數據集的準確率。表格前三列為其它隊伍模型取得的最好成績,第四列為組織方使用隨機選擇取得的基線結果。研究對比了拼接、雙線性和集成模型使用遷移學習和未使用遷移學習的實驗結果。結果顯示,使用了遷移學習模型的準確率要比未使用遷移學習模型的準確率高。雙線性在語義推理關系上的表現效果比拼接要高出許多。使用了遷移學習的集成模型在測試集上的準確率基本與參賽隊伍齊平,由此證明本文提出的模型是有效的。

圖2 基于模型融合的語義推理網絡

表2 ARC數據集的準確率
圖3展示了語義推理任務的不同模型是否引進了遷移學習的擬合曲線。圖中對比了使用LSTM模型、LSTM+Attention模型、應用了遷移學習的LSTM模型和應用了遷移學習的LSTM+Attention模型。從折線圖中可以推得如下2點結論:
(1)由圖3可以看出,如果模型沒有使用遷移學習,在開始訓練時,目標任務的準確率比使用了遷移學習模型的準確率要低很多。因為沒有使用遷移學習的模型參數是隨機初始化的,而引進了遷移學習模型的目標任務是部分使用了源任務訓練好的目標參數。
(2)對比有無使用遷移學習的模型準確率,還可以看出使用了遷移學習的模型擬合曲線較為平緩,說明模型在最初找到了一個較好的初始化參數,在訓練的過程中則僅僅只是需要微調模型有關參數。而未使用遷移學習的模型擬合曲線相對波動較大,分析原因可知是由于隨機初始化了模型參數,使得模型在訓練過程中需要不斷調整參數降低損失,且調整幅度較大。

圖3 遷移學習擬合過程對比曲線
本文主要實現了基于遷移學習的語義推理網絡。研究中先后提出了2個模型,分別是:基于注意力機制的語義推理網絡和基于模型融合的語義推理網絡。其中,基于注意力機制的語義推理網絡使用注意力機制融合前提句和其它信息,更好表示了前提句的語義向量。使用雙線性函數充分挖掘前提信息和推論信息的語義推理關系。基于模型融合的語義推理網絡集成了傳統特征和深度學習的方法。通過實驗結果可以看出,本文提出的2種模型均在ARC數據集上取得了良好效果。