王 進,劉麒麟,馬櫻儀,孫開偉,胡 珂
(重慶郵電大學(xué) 數(shù)據(jù)工程與可視計算重慶市重點實驗室,重慶 400065)
語句匹配是比較兩個句子之間關(guān)系的任務(wù),是信息檢索[1]、自動問答[2]、釋義識別[3]和自然語言推理[4]等任務(wù)的基礎(chǔ)技術(shù)。
隨著神經(jīng)網(wǎng)絡(luò)模型的發(fā)展,對語句匹配問題的研究逐漸從傳統(tǒng)語句匹配模型向深度語句匹配模型轉(zhuǎn)移[5]。傳統(tǒng)的匹配技術(shù)只是簡單地判斷單詞是否相似,同時需要人工提取相關(guān)特征,導(dǎo)致模型泛化能力較差。深度語句匹配模型結(jié)合詞嵌入技術(shù)[6],從語義層面解決了詞語匹配的多元性問題[5]。近幾年提出的預(yù)訓(xùn)練模型,如基于Transformer的雙向編碼模型[7](bidirectional encoder representations from transformers,BERT)和優(yōu)化的BERT方法 ( robustly optimized BERT pretraining approach,RoBERTa)[8]等,可以有效提升語句匹配的性能。然而預(yù)訓(xùn)練模型結(jié)構(gòu)復(fù)雜、參數(shù)多,訓(xùn)練時間長。深度語句匹配模型可以自動提取匹配特征,代價小,效果更好;并且結(jié)構(gòu)靈活,參數(shù)少,訓(xùn)練更容易。
深度語句匹配模型有兩種流行的框架。第1種基于Siamese架構(gòu)[9],使用神經(jīng)網(wǎng)絡(luò)對輸入向量編碼,然后對編碼向量做匹配,但未捕捉到句子間的交互信息。第2種是Matching-aggregation模型[10],先對句子內(nèi)較小單元(如單詞)做匹配,然后聚合為一個向量再做匹配,能夠捕捉到句子間交互特征,但捕捉到的交互特征不夠,沒有考慮語句內(nèi)的關(guān)鍵信息,并且整合匹配特征存在缺陷。
本文提出了一種融合多路注意力機制的語句匹配模型,旨在解決傳統(tǒng)模型捕捉到句子交互特征不足以及忽略句子內(nèi)關(guān)鍵信息等問題。模型采用了詞嵌入層和雙向長短時記憶網(wǎng)絡(luò)[11](bi-directional long short-term memory,Bi-LSTM)對輸入進行編碼,同時引入了句內(nèi)自注意力機制和4種句間交互注意力機制,從多角度、高層次捕捉句子間的交互特征,并結(jié)合后輸入到Bi-LSTM中進行聚合,最終通過全連接層得到語句匹配得分。在4個基準(zhǔn)數(shù)據(jù)集(SNLI[12]、MultiNLI[13]、Quora Question Pairs[14]和SQuAD[15])上與經(jīng)典深度語句匹配模型對比的結(jié)果表明,本文提出的融合多路注意力機制的語句匹配方法比傳統(tǒng)深度語句匹配模型表現(xiàn)更好。
深度語句匹配的研究可以總結(jié)為4個階段模型:單語義模型、多語義模型、匹配矩陣模型和深層次語句交互匹配模型。
單語義模型使用簡單神經(jīng)網(wǎng)絡(luò)編碼句子,無法捕捉局部信息。比如深層語義相似模型[16](deep semantic similarity model,DSSM),使用5層網(wǎng)絡(luò)對文本進行向量化。
多語義模型能夠補充單語義模型在壓縮整個句子時的信息損失,但很難將局部信息和全局信息有效地整合。比如一種基于多位置句子表示的深層語義匹配體系結(jié)構(gòu)[17]使用Bi-LSTM處理句子,實現(xiàn)多粒度考察句子的效果。
匹配矩陣模型讓兩段文本進行交互,得到匹配信息,再提取匹配特征來捕捉匹配中的結(jié)構(gòu)信息。比如基于圖像識別的文本匹配[18](text matching as image recognition,TMIR)從3個角度構(gòu)建相似度矩陣,再用CNN提取特征。
深層次語句交互模型使用更復(fù)雜的attention[15]結(jié)構(gòu)來挖掘多維度的交互信息。比如具有密集連接的重復(fù)和共同注意力信息的語句匹配[19],結(jié)合Bi-LSTM、密集卷積網(wǎng)絡(luò)[20]和attention機制提取特征,再采用多樣化的交互策略提取交互特征。
本文在增強序列推理模型(enhanced sequential inference model,ESIM)的基礎(chǔ)上進行改進,采用句內(nèi)自注意力機制挖掘語句內(nèi)關(guān)鍵信息,采用多路注意力機制捕獲語句間多維度的交互信息 以及深層次的結(jié)構(gòu)信息,再將多路注意力機制得到的多個交互特征有效地結(jié)合,增強語句匹配的表征能力并實現(xiàn)對語句的高層次理解。
本文提出的融合多路注意力機制的語句匹配模型。模型主要包括3部分:自注意力機制層、多路注意力機制層以及聚合層。一條樣本可以表示為(Qi,Pi,yi),其中,Qi=(q1,q2,…,qn)和Pi=(p1,p2,…,pm)為第i個待匹配的語句對,qi和pj分別為語句Qi和語句Pj中第i個詞和第j個詞,語句Qi的長度為n,語句Pj的長度為m,yi表示Qi和Pj的關(guān)系,用N表示樣本總個數(shù)。
(1)
(2)
圖1 融合多路注意力機制的語句匹配模型圖Fig.1 Sentence matching model diagram fused with multi-channel attention mechanism
注意力機制能夠捕捉句子詞語之間的語義和語法聯(lián)系,同時考慮上下文之間的聯(lián)系。研究表明,詞級別的注意力機制在句子對建模中非常有效[21]。
M=tanh(h)
(3)
α=softmax(wTM)
(4)
r=hαT
(5)
h*=tanh(r)
(6)
(3)—(6)式中:α為注意力權(quán)重系數(shù),權(quán)重越高說明該詞所帶信息在句內(nèi)越關(guān)鍵;r為h經(jīng)過加權(quán)求和的結(jié)果,通過非線性函數(shù)生成表征向量h*。將編碼層的輸出h和自注意力層的輸出h*拼接起來作為下一層的輸入,表示為
x=[h;h*]
(7)
大多數(shù)語句交互模型只使用一種句間交互注意力機制,導(dǎo)致捕獲到的交互特征不完整。本文使用4種句間注意力機制來比較單詞對,即連接[23]、雙線性[24]、點積[25]和余弦[26]注意力機制,以捕獲多維度、深層次的交互特征。
連接注意力機制表示為
(8)
雙線性注意力機制表示為
(9)
點積注意力機制表示為
(10)
余弦注意力機制表示為
(11)
歸一化公式[27]為
(12)
余弦距離的計算公式為
(13)
為了保留原始信息,增強關(guān)鍵信息、捕獲矛盾等推理關(guān)系,本文將多路注意力機制的匹配信息聚合起來,可得
(14)
(15)
每個attention會得到一個三維向量,將4個三維向量與x拼接得到新的特征向量z,再將z輸入到Bi-LSTM中整合語句對之間的全局匹配信息。
采用平均池化和最大池化操作,并將所有向量連接起來,形成最終的定長向量v,可表示為
(16)
(17)
v=[vq,ave;vq,max;vp,max]
(18)
將v放入多層感知分類器中,以獲得相應(yīng)任務(wù)中每個標(biāo)簽的概率。
使用4個數(shù)據(jù)集對3個任務(wù)進行實驗,并進行消融實驗,以分析句內(nèi)自注意力機制、多路注意力機制以及聚合層的有效性。實驗運行環(huán)境如表1所示。
表1 實驗運行環(huán)境Tab.1 Experimental operation environment
使用預(yù)先訓(xùn)練的300-D Glove 840B向量來初始化單詞嵌入,并隨機初始化詞匯表外單詞嵌入。多路注意力信息壓縮之后采用一層全連接層進行降維,該全連接層的維度為612,非線性激活函數(shù)選擇的是relu函數(shù)。全連接層的維度為2 400,非線性激活函數(shù)選擇的是tanh函數(shù)。在訓(xùn)練期間,不更新預(yù)先訓(xùn)練的詞嵌入。為了驗證單模型的實驗性能,對所有的模型進行10次實驗,去掉異常數(shù)據(jù),選擇在驗證集中工作最好的模型,然后在測試集中進行評估。更多的參數(shù)設(shè)置如表2所示。
表2 參數(shù)設(shè)置Tab.2 Parameter settings
本文在4個數(shù)據(jù)集中進行3種語句匹配任務(wù),來評估提出的模型性能,數(shù)據(jù)集劃分如表3所示。
表3 數(shù)據(jù)集描述Tab.3 Dataset description
表3中,自然語言推理數(shù)據(jù)集(SNLI)[12]和擴大的自然語言推理數(shù)據(jù)集 (MultiNLI)[13]屬于自然語言推理任務(wù),問題答案對數(shù)據(jù)集(Quora )[14]屬于釋義識別任務(wù),閱讀理解數(shù)據(jù)集(SQuAD)[15]屬于問答語句選擇任務(wù)。
將本文模型與經(jīng)典深度語句匹配方法進行比較,以驗證模型的有效性,如表4所示。
表4 對比方法信息Tab.4 Comparison method information
本文采用精確度(Accuracy)和平均倒數(shù)排名(MRR)作為評估指標(biāo)。
精確度由被分配的樣本數(shù)除以所有的樣本數(shù)計算得到,計算公式為
(19)
(19)式中:TP為判斷正確且標(biāo)簽為正的樣本數(shù);TN為判斷正確且標(biāo)簽為負(fù)的樣本數(shù);P為實際為正的所有樣本數(shù);N為實際為負(fù)的所有樣本數(shù)。
MRR為多個查詢語句排名倒數(shù)的均值,計算表達式為
(20)
(19)式中:|Q|為查詢語句query的個數(shù);rankq表示第q個查詢語句第1個正確答案的排名。
本文在SNLI和MultiNLI數(shù)據(jù)集上評估提出的語句匹配模型,使用精確度和參數(shù)量兩個指標(biāo)在SNLI數(shù)據(jù)集上進行評估,使用精確度在MultiNLI數(shù)據(jù)集的匹配樣本和不匹配樣本上進行評估。參數(shù)量評估結(jié)果在一個數(shù)據(jù)集中得出,不再進行對比。
如今大力倡導(dǎo)以文化視角進行企業(yè)的管理活動,這主要是因為文化與制度的相結(jié)合,能夠彌補制度的機械與僵化。所以兩者的關(guān)系并不是所謂的替代性關(guān)系,反而是一種良性互補的關(guān)系。通過互補,從而使企業(yè)的經(jīng)濟效益得到最大化,讓企業(yè)的管理效率更高。如今的市場形勢瞬息萬變,無論是多大規(guī)模的企業(yè),都沒有絕對的優(yōu)勢與安全,比如說之前的手機企業(yè)---諾基亞,是當(dāng)之無愧的行業(yè)巨頭,卻也很快就會被市場所擊垮了。但是,文化所帶來的企業(yè)團隊精神和創(chuàng)新精神,將讓企業(yè)始終處于快速領(lǐng)跑的地位,使企業(yè)有更寬廣的成長空間。
表5為各模型在SNLI上的評估結(jié)果。由表5可以看出,本文提出的模型在SNLI上表現(xiàn)優(yōu)異,相比于其他深層次匹配模型性能獲得了明顯提升,在精確度方面達到了88.90%。與預(yù)訓(xùn)練模型BERT進行比較,本文提出模型的參數(shù)量遠遠低于BERT,不依賴任何外部知識,仍然獲得了有競爭力的性能。
表5 各模型在SNLI上的評估結(jié)果Tab.5 Evaluation results of each model on SNLI
表6為各模型在MultiNLI數(shù)據(jù)集上匹配樣本和不匹配樣本的精確度(*表示進行了五折交叉集成學(xué)習(xí)后的模型,下同)。與其他深度匹配模型相比,本文提出的模型在匹配樣本中表現(xiàn)最好,達到了80.34%的精確度,但在不匹配樣本中略低于DBDIN模型。選擇其他模型中表現(xiàn)最好的模型進行集成學(xué)習(xí)比較,在匹配樣本和不匹配樣本中,本文模型都優(yōu)于DBDIN模型。
表6 各模型在MultiNLI上的評估結(jié)果Tab.6 Evaluation results of each model on MultiNLI
本文采用精確度作為評估指標(biāo),使用Quora Question Pairs數(shù)據(jù)集評估語句匹配模型在釋義識別任務(wù)中的性能,表7為各模型的評估結(jié)果。本文提出的模型在單模型和集成學(xué)習(xí)方法中均表現(xiàn)出了最好的效果,超過其他經(jīng)典的深層次匹配模型。
表7 各模型在Quora Question Pairs上的評估結(jié)果Tab.7 Evaluation results of each model on Quora Question Pairs
本文模型在SQuAD數(shù)據(jù)集上進行問答語句選擇任務(wù)的評估,采用MRR作為評估指標(biāo),表8展示了各模型在SQuAD數(shù)據(jù)集上的評估結(jié)果。與其他經(jīng)典深層次模型相比,本文模型在單模型和集成學(xué)習(xí)方法中表現(xiàn)最好。
表8 各模型在SQuAD上的評估結(jié)果Tab.8 Evaluation results of each model on SQuAD
為了驗證本文模型不同組件的有效性,選擇在具有代表性的數(shù)據(jù)集SNLI上進行消融實驗,實驗結(jié)果如表9所示。表9中,“-”表示從模型中刪除該組件;“+”表示在模型中添加該組件;self-Att表示本文使用的自注意力機制;co-Att表示本文使用的多路注意力機制;dot、concat、bilinear以及cosine為多路注意力機制中用到的4種句間注意力機制;aggregate表示本文用到的聚合方式、fc為拼接聚合、fm為點積聚合、fs為相減聚合;compress表示本文用到的壓縮函數(shù);concat表示簡單拼接。
表9 本文模型在SNLI上的消融實驗結(jié)果Tab.9 Ablation experiment results of the model proposed in this article on SNLI
在表9(2)中,為了驗證本文使用的自注意力機制的有效性,用常規(guī)的句內(nèi)注意力機制對齊函數(shù)dot[17]來替換本文的對齊函數(shù),可以看出本文使用的自注意力機制效果更好。
在表9(11)—表9(13)中,為了驗證多路注意力機制3種聚合方式的有效性,使用單獨的聚合方式進行消融實驗,結(jié)果顯示單獨使用任何一種聚合方式都沒有結(jié)合3種效果好。
在表9(14)驗證了壓縮公式的有效性,用常規(guī)的簡單拼接多個特征向量方法concat來替換本文方法,結(jié)果顯示本文的壓縮方法效果更好。
本文提出的融合多路注意力機制的語句匹配模型,使用句內(nèi)自注意力機制計算語句中每個詞向量的重要程度,捕獲語句內(nèi)的關(guān)鍵信息。多路注意力機制比較兩個句子中的單詞對,也就是4種句間匹配公式:連接注意力機制、雙線性注意力機制、點積注意力機制、余弦注意力機制,從不同語義角度來捕獲交互信息,最后可以得到4種交互特征。壓縮函數(shù)將高維度的交互特征聚合到一起,增強語句表達的同時,保留原始信息,避免了網(wǎng)絡(luò)層的膨脹和參數(shù)開銷,將匹配信息輸入分類器以進行最終決策。本文提出的模型能夠挖掘到語句深層次的結(jié)構(gòu)信息,實現(xiàn)對語句高層次的理解。
實驗結(jié)果表明,本文提出的模型在自然語言推理任務(wù)、釋義識別任務(wù)和問答語句選擇任務(wù)中均表現(xiàn)出了更好的效果,能夠有效提升語句匹配的性能。