李世寶,李 賀,趙慶帥,殷樂樂,劉建航,黃庭培
(中國石油大學(xué)(華東)海洋與空間信息學(xué)院,山東青島 266580)
文本蘊(yùn)含識別也稱為自然語言推理,是一項基礎(chǔ)而又重要的自然語言處理任務(wù)。該任務(wù)給定前提文本(P)與假設(shè)文本(H),然后從語義層面識別出P 和H 之間的單向推理關(guān)系,包括蘊(yùn)含、矛盾、中立3 種關(guān)系[1],并且在文本蘊(yùn)含識別任務(wù)上所取得的進(jìn)展可進(jìn)一步提高文本摘要、語義搜索、閱讀理解和問答等任務(wù)的性能[2]。
早期研究多數(shù)采用統(tǒng)計及機(jī)器學(xué)習(xí)方法進(jìn)行文本蘊(yùn)含識別[3]。近年來,端到端訓(xùn)練的神經(jīng)網(wǎng)絡(luò)模型在閱讀理解、情感分析和機(jī)器翻譯等自然語言處理任務(wù)中表現(xiàn)出色,由此研究人員提出了一些組合多種神經(jīng)網(wǎng)絡(luò)和注意力機(jī)制的文本蘊(yùn)含識別模型,并且經(jīng)過大量數(shù)據(jù)訓(xùn)練,取得了相當(dāng)高的訓(xùn)練精度。這些文本蘊(yùn)含識別模型大致可以分為兩類。一類側(cè)重編碼器設(shè)計,能夠較好地對句子特征進(jìn)行編碼,并且整體網(wǎng)絡(luò)結(jié)構(gòu)簡單,是早期的主流方向。文獻(xiàn)[4]使用長短期記憶(Long Short-Term Memory,LSTM)網(wǎng)絡(luò)分別學(xué)習(xí)前提和假設(shè)的句子表示并對其進(jìn)行串聯(lián)及分類。文獻(xiàn)[5]進(jìn)一步使用雙向LSTM(Bi-directional LSTM,BiLSTM)網(wǎng)絡(luò)對句子進(jìn)行編碼,并運(yùn)用句子內(nèi)自注意力機(jī)制更好地增強(qiáng)句子編碼能力。文獻(xiàn)[6]設(shè)計HBMP 模型進(jìn)行句子編碼,相比使用單一的BiLSTM 層效果更佳。另一類注重句間交互,引入句間注意力機(jī)制提取句子之間的語義信息,能夠更好地識別句子之間的語義關(guān)系。文獻(xiàn)[7]提出一個逐詞注意力模型,對文本中隱含的前提和假設(shè)之間的關(guān)系進(jìn)行編碼。文獻(xiàn)[8]對文獻(xiàn)[7]做了進(jìn)一步擴(kuò)展,解決了學(xué)習(xí)注意力權(quán)重前提下單個向量表示的局限性問題。文獻(xiàn)[9]提出雙向多視角匹配機(jī)制,分析并對比了多種注意力機(jī)制的匹配策略。文獻(xiàn)[10]提出一種增強(qiáng)序列推理模型(Enhanced Sequential Inference Model,ESIM),利用兩層不同的BiLSTM 網(wǎng)絡(luò)和注意力機(jī)制對文本進(jìn)行編碼。
但是由于上述模型僅從訓(xùn)練數(shù)據(jù)中學(xué)習(xí)推理知識,受限于訓(xùn)練數(shù)據(jù)集規(guī)模,導(dǎo)致模型泛化能力較弱[11],因此文獻(xiàn)[12]利用WordNet 作為外部知識,增強(qiáng)了模型在不同測試集上的泛化能力,為結(jié)合外部知識的相關(guān)研究提供了參考。文獻(xiàn)[13]在模型中使用多個英文知識庫,并引入知識圖概念,提高了模型識別性能。然而,基于神經(jīng)網(wǎng)絡(luò)的文本蘊(yùn)含識別在中文領(lǐng)域的研究較少[14],且知網(wǎng)(HowNet)等中文外部語義知識庫與WordNet知識庫有較大區(qū)別,使得無法直接遷移并應(yīng)用基于英文數(shù)據(jù)集的文本蘊(yùn)含識別模型。因此,本文提出中文知識增強(qiáng)推理模型(Chinese Knowledge Enhanced Inference Model,CKEIM),通過分析中文語義知識庫的特點,精確提取詞級的語義知識特征以構(gòu)建注意力權(quán)重矩陣,同時將其融入神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程。
HowNet 知識庫[15]的層次結(jié)構(gòu)為詞語-義項-義原,其包含2 000 多個基礎(chǔ)義原,將詞語從語義上進(jìn)行拆分,同一個詞語的不同含義分為多個義項,每個義項又由多個義原組合而來。如圖1 所示,詞語“蘋果”有多種含義,分別代表“電腦”“手機(jī)”“水果”以及“樹木”。每一種含義表示一個義項,用多個義原加以注解。在HowNet 中,使用“樣式值”“攜帶”“特定品牌”和“電腦”等義原描述“蘋果”表示電腦品牌時的義項,并以樹狀結(jié)構(gòu)進(jìn)行組織。本文忽略了義原之間的結(jié)構(gòu)關(guān)系,并且對于每個詞語,將其所有的義原歸類為無序集。
圖1 HowNet 結(jié)構(gòu)示意圖Fig.1 Schematic diagram of HowNet structure
同義詞詞林[16]將中文同義詞以及同類詞進(jìn)行劃分和歸類,分為5 層層次結(jié)構(gòu),其中1 層~4 層僅包含分類編碼信息,沒有具體詞匯。本文使用改進(jìn)版同義詞詞林[17]將原子詞群中較抽象的概念提取到1 層~4 層的分類節(jié)點中,使1 層~4 層的分類節(jié)點包含代表整個類別的具體概念,如提取“生物”“人”“植物”“動物”等抽象概念并將其放置于大、中、小3 類高層節(jié)點中。
為方便表述,本文使用的符號定義如下:HowNet中所有的義原、義項和詞語集合分別表示為ε、S和W;語料庫包含K=|ε|個義原、M=|S|個義項以及N=|W|個詞語;Sw表示詞語w∈W所包含的義項集合表示詞語w所包含義原的無序集合;εs表示義項s∈Sw所包含義原的無序集合。
通過HowNet 知識庫結(jié)構(gòu)可知,在使用HowNet知識庫計算兩個詞語的相似度時,如“蘋果”和“梨”的相似度,由于“梨”只有“水果”1 種義項,而“蘋果”有“電腦”“水果”“手機(jī)”“樹木”4 種義項,這樣就會出現(xiàn)4 個差距相當(dāng)大的相似度,如果取相似度的最大值或者平均值,則會造成誤差,而在相互為多義詞的詞語之間計算相似度會產(chǎn)生更大的誤差。本文設(shè)計一個義項選擇器結(jié)構(gòu),如圖2 所示,在模型訓(xùn)練時根據(jù)詞語p5的上下文信息p1、p6等,計算出其與各個義原匹配的概率,進(jìn)而選出當(dāng)前詞語p5所代表的真正義項,然后進(jìn)行詞語間的相似度計算。
圖2 義項選擇器結(jié)構(gòu)Fig.2 Structure of sense selector
對于義原概率預(yù)測器,假設(shè)給定上下文w1,w2,…,wt,…,wn,經(jīng)過BiLSTM 網(wǎng)絡(luò)編碼后,得到詞語wt的上下文向量,H0為向量gt的維度。將gt輸入到預(yù)測器中,可生成詞語wt包含的每個義原ek與gt的關(guān)聯(lián)度。由于義原是最小的語義單位,任何兩個不同的義原之間不存在語義重疊,因此詞語wt包含的義原ek事件為獨立,當(dāng)前詞語wt在上下文語境中編碼后得到的上下文向量gt與義原ek的關(guān)聯(lián)度可表示為,如式(1)所示:
對于義項概率預(yù)測器,由于一個義項會包含一個或多個義原,因此根據(jù)在義原概率預(yù)測器中得到的ek與gt的關(guān)聯(lián)概率可進(jìn)一步得到詞語wt中各義項s與gt匹配的概率P(s|gt),如式(2)所示:
由以上設(shè)計的義項選擇器可計算出詞語wt在當(dāng)前語境下概率最大的義項smax。在確定義項后,根據(jù)混合層次結(jié)構(gòu)的HowNet 詞語相似度計算方法[19],精確計算出詞語wi和wj在具體語境中的相似度Zij。
由于提取的同義詞詞林特征包含詞語相似度特征以及詞語上下位特征,因此將基于信息內(nèi)容的詞林詞語相似度計算方法[17]作為相似度特征的提取方法,使提取到的詞語wi和wj之間的相似度表示為Cij。同義詞詞林共5 層結(jié)構(gòu),設(shè)層次結(jié)構(gòu)中兩個詞語之間的距離為n,可提取的詞語間上下位信息具體包括:
1)上位詞特征Sij:如果一個詞語wj是另一個詞語wi的上位詞,該特征取值為1-n/4,如[蘋果,水果]=0.75,[蘋果,植物]=0.5。
2)下位詞特征Xij:與上位詞特征正好相反,如[水果,蘋果]=0.75。
最終將外部語義知識庫中提取到的4 個特征組合成特征向量Rij=[Zij,Cij,Sij,Xij],并將其作為外部語義知識融入神經(jīng)網(wǎng)絡(luò)中。
在CKEIM 模型中,設(shè)前提語句p=[p1,p2,…,],假設(shè)語句h=[h1,h2,…,hlh],首先對語句進(jìn)行編碼,使用預(yù)訓(xùn)練的詞向量對詞語進(jìn)行初始化,然后輸入BiLSTM 網(wǎng)絡(luò)進(jìn)行編碼,獲得上下文相關(guān)的隱層向量,如式(3)、式(4)所示:
其中,(E(p),i)表示前提語句p的第i個詞語初始化后的詞向量,(E(h),j)表示假設(shè)語句h的第j個詞語始化后的詞向量。
根據(jù)HowNet 知識庫中提取的詞語相似度特征Zij,結(jié)合BiLSTM 網(wǎng)絡(luò)輸出的隱層向量的內(nèi)積可計算出知識增強(qiáng)的協(xié)同注意力權(quán)重Mij,如式(5)所示:
其中,λ為超參數(shù)。將得到的注意力權(quán)重歸一化后可得到注意力權(quán)重矩陣μij和ηij,進(jìn)而得到前提語句中的每個詞語在假設(shè)語句中相關(guān)語義信息的向量表示,以及假設(shè)語句中每個詞語在前提語句中相關(guān)語義信息的向量表示,如式(6)、式(7)所示:
其中,F(xiàn)是前饋神經(jīng)網(wǎng)絡(luò),其以ReLU 為激活函數(shù)。
經(jīng)過拼接并降維后得到的關(guān)系向量包含了大量詞語間的推理信息,需要進(jìn)行組合并提取出語句級的推理信息,因此再用一層BiLSTM 網(wǎng)絡(luò)進(jìn)一步收集并組合這些信息,提取前提和假設(shè)文本之間語句級的推理關(guān)系,得到包含語句級推理關(guān)系的向量和,如式(10)、式(11)所示:
圖3 CKEIM 模型結(jié)構(gòu)Fig.3 Structure of CKEIM model
本文在RITE 和CNLI 兩個中文文本蘊(yùn)含數(shù)據(jù)集上進(jìn)行相關(guān)實驗。
1)RITE:該數(shù)據(jù)集收集了2012 年和2014 年日本國立情報學(xué)研究所組織的NTCIR 項目發(fā)布的2 600 個文本對,其中,訓(xùn)練集中有2 000 個文本對,測試集中有600 個文本對。數(shù)據(jù)集涵蓋多音字、同音字等多種語言現(xiàn)象,包括人文、歷史、政治等多種題材,并且以識別準(zhǔn)確率作為評價標(biāo)準(zhǔn)。
2)CNLI:該數(shù)據(jù)集由SNLI 數(shù)據(jù)集通過機(jī)器翻譯和人工篩選得到,包括145 000 個文本對,其中,訓(xùn)練集有125 000 個文本對,驗證集和測試集各有10 000 個文本對,分類結(jié)果包括蘊(yùn)含、矛盾和中立3 種關(guān)系,每個文本對具有唯一的標(biāo)簽,并且以識別準(zhǔn)確率作為評價標(biāo)準(zhǔn)。
CKEIM 模型的實驗參數(shù)設(shè)置如下:單詞嵌入與BiLSTM 網(wǎng)絡(luò)隱藏層的維度均為200 維,使用騰訊AI實驗室[20]發(fā)布的200 維中文詞向量初始化詞嵌入,詞表中不存在的詞語會隨機(jī)初始化;將Adam[21]作為隨機(jī)梯度優(yōu)化策略,初始化學(xué)習(xí)率為0.000 4,批處理(Mirri-batch)大小為32;利用哈爾濱工業(yè)大學(xué)的LTP語言云[22]作為中文分詞工具。
為便于對比,ESIM 等基線模型的實驗參數(shù)、實驗環(huán)境、實驗設(shè)置與CKEIM 模型相同。首先從集合{0.2,0.5,1,1.5,2,5,10,15,20}中依次選取計算注意力權(quán)重的超參數(shù)λ并在訓(xùn)練集上進(jìn)行訓(xùn)練。然后根據(jù)測試集的實驗結(jié)果選擇效果最優(yōu)的λ值,再以此λ值為基礎(chǔ),通過調(diào)整±(0.1~0.5)的步長改變λ值,直到找到實驗效果最優(yōu)的λ值。最后得到CNLI 數(shù)據(jù)集的最佳λ值為1,RITE 數(shù)據(jù)集的最佳λ值為20。
表1 為本文CKEIM 模型與BiLSTM+廣義池化層模型、BiLSTM+句內(nèi)注意力模型[5]、BiLSTM+最大池化層模型[6]、HBMP 模型[6]和ESIM 模型[10]在大規(guī)模CNLI 數(shù)據(jù)集上的識別準(zhǔn)確率對比。由于在神經(jīng)網(wǎng)絡(luò)中結(jié)合外部知識的文本蘊(yùn)含識別模型都是基于英文知識庫,無法在中文數(shù)據(jù)集上進(jìn)行比較,因此本文選擇其基礎(chǔ)模型ESIM 作為主要基線模型,同時與其他經(jīng)典模型進(jìn)行對比。表2 為CKEIM 模型與BiLSTM+廣義池化層模型、BiLSTM+句內(nèi)注意力模型、HBMP 模型和ESIM 模型在小規(guī)模RITE 數(shù)據(jù)集上的識別準(zhǔn)確率對比。
表1 6 種模型在CNLI 數(shù)據(jù)集上的識別準(zhǔn)確率對比Table 1 Comparison of recognition accuracy of six models on CNLI dataset %
表2 5 種模型在RITE 數(shù)據(jù)集上的識別準(zhǔn)確率對比Table 2 Comparison of recognition accuracy of five models on RITE dataset %
由表1 可以看出,CKEIM 模型在大規(guī)模CNLI 數(shù)據(jù)集上達(dá)到81.4%的識別準(zhǔn)確率,比ESIM 模型提高了0.9 個百分點,也明顯優(yōu)于其他經(jīng)典模型。由表2可以看出,CKEIM 模型在小規(guī)模RITE 數(shù)據(jù)集上優(yōu)勢更加明顯,超出ESIM 模型3.3 個百分點??梢?,CKEIM 模型在兩種數(shù)據(jù)集上都要優(yōu)于ESIM 基線模型及其他經(jīng)典模型,且在小規(guī)模RITE 數(shù)據(jù)集上優(yōu)勢更加明顯,因此其泛化能力更強(qiáng),從而說明本文CKEIM 模型通過將中文外部語義知識融入神經(jīng)網(wǎng)絡(luò),提高了模型識別準(zhǔn)確率和泛化能力。
為比較不同規(guī)模訓(xùn)練集下外部語義知識對識別效果的影響,更進(jìn)一步驗證模型識別準(zhǔn)確率和泛化能力,將CNLI 數(shù)據(jù)集進(jìn)行拆分并在整個訓(xùn)練集上隨機(jī)采樣得到原訓(xùn)練集4%、15%、50%和100%數(shù)據(jù)規(guī)模的訓(xùn)練集,然后分別在這些訓(xùn)練集上對本文CKEIM 模型與BiLSTM+廣義池化層模型、BiLSTM+句內(nèi)注意力模型、HBMP 模型和ESIM 模型進(jìn)行訓(xùn)練,得到如表3 所示的實驗結(jié)果,并據(jù)此得到如圖4 所示的柱狀圖,其中:對于4%和15%數(shù)據(jù)規(guī)模的訓(xùn)練集,設(shè)置最佳λ值為5;對于50%和100%數(shù)據(jù)規(guī)模的訓(xùn)練集,設(shè)置最佳λ值為1。
表3 5 種模型在不同訓(xùn)練集規(guī)模下的識別準(zhǔn)確率對比Table 3 Comparison of recognition accuracy of five models at different training set scales %
圖4 不同訓(xùn)練集規(guī)模下的模型識別準(zhǔn)確率對比Fig.4 Comparison of model recognition accuracy at different training set scales
由表3 和圖4 的數(shù)據(jù)可以看出,當(dāng)訓(xùn)練數(shù)據(jù)非常有限時,即只有4%數(shù)據(jù)規(guī)模的訓(xùn)練集時,ESIM 模型的識別準(zhǔn)確率為59.5%,而CKEIM 模型為63.0%,超出其3.5 個百分點。在15%、50%和100%數(shù)據(jù)規(guī)模的訓(xùn)練集下識別準(zhǔn)確率始終都高于ESIM 模型,提升比例分別為3.7%、1.5%和0.9%,整體呈遞減趨勢。該結(jié)果進(jìn)一步說明融合外部語義知識的CKEIM 模型具有更好的識別性能和泛化能力,且訓(xùn)練數(shù)據(jù)量越小,增強(qiáng)效果越明顯。
本文提出一種基于外部語義知識的CKEIM 模型,從HowNet和同義詞詞林知識庫中提取外部知識,建立注意力權(quán)重矩陣并組成特征向量融入神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程中,增強(qiáng)模型識別性能和泛化能力。實驗結(jié)果表明,CKEIM 模型在不同規(guī)模的訓(xùn)練集下的識別準(zhǔn)確率均優(yōu)于對比模型,并且訓(xùn)練數(shù)據(jù)量越小,其識別準(zhǔn)確率和泛化能力的增強(qiáng)效果越明顯。后續(xù)工作可將中文知識圖譜融入神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程中,進(jìn)一步提高CKEIM 模型的識別準(zhǔn)確率及魯棒性。