紀 科, 張 秀, 馬 坤, 孫潤元, 陳貞翔, 鄔 俊
(1.濟南大學 信息科學與工程學院,山東 濟南 250022;2.濟南大學 山東省網絡環境智能計算技術重點實驗室,山東 濟南 250022;3.北京交通大學 計算機與信息技術學院,北京 100044)
隨著現代科技的迅速發展,人們習慣于從網絡獲取新聞資訊、搜索熱點新聞。然而,隨著使用網絡瀏覽新聞的頻率不斷上升,人們對于新聞資訊的要求也越來越高,希望瀏覽到相關且更加多元化的新聞。
現有的新聞檢索往往采用關鍵詞檢索算法或文本匹配算法[1]。基于關鍵詞的檢索[2]缺少新聞文本語義的概括,檢索出的新聞大多不相關,存在檢索不準確、相關性差等問題。在基于文本匹配的新聞檢索方面,傳統的方法[3]更多是在關注文本詞形和詞匯層面的相似性,但是詞匯往往存在一詞多義現象,并且用詞匯代替整句的語義不夠完整。深度學習文本匹配模型[4]側重于文本語義向量的構建以及交互,但是過分關注文本語義的相似性,忽視新聞文本的話題概括,檢索出來的新聞過于相似,極易降低閱讀觀感,在實際應用中無法滿足用戶需求。
針對上述問題,本文提出一種基于關鍵實體和文本摘要多特征融合的話題匹配算法。由于關鍵實體和摘要可以概括文本的話題,因此該方法基于關鍵實體提取和文本摘要技術,將融合得到的關鍵實體特征和摘要特征作為概括文本話題的深層次語義特征,與通過交叉注意力機制(cross-attention)交互的文本語義特征一起,共同參與文本話題匹配的判斷。在搜狐公開數據集上進行對比實驗,結果表明該算法性能優于目前比較流行的深度學習文本匹配算法。
隨著自然語言處理(NLP)的發展,文本匹配技術有了很大的進展。文本匹配通過文本中蘊含的語義信息,判別文本之間的矛盾性和相似性,可以應用于很多場景,比如信息檢索[5]、對話系統[6]等。
目前,基于深度學習的文本匹配技術可分為表示型文本匹配、交互型文本匹配和預訓練語言模型的文本匹配3種。表示型文本匹配是先將待匹配的兩段文本進行編碼得到向量表示,然后計算向量的相似度,更側重對語義向量的構建,它的優勢是結構簡單、易于實現,如SimLSTM[7]模型。交互型文本匹配則是在輸入層就進行詞語間的匹配,不僅注重整個文本的語義表示,也關注局部文本的表示和交互,注重挖掘語義焦點,ABCNN[8]模型是交互型文本匹配模型。預訓練語言模型的匹配方法則是利用預訓練加微調的方式完成文本匹配任務,預訓練語言模型利用海量的語料數據可以學習到通用的語義表示,進而實現下游文本匹配任務。
近年來,隨著預訓練語言模型BERT[9]的廣泛使用,出現了一系列基于BERT的預訓練模型,例如RoBERTa[10]、NEZHA[11],還有將主題信息融入預訓練語言模型BERT的tBERT[12]模型和將主題過濾加入文本匹配任務[13],以及將關鍵詞信息融入預訓練語言模型BERT的KeywordBERT[14]、DC-Match[15],這些預訓練模型為額外信息融入BERT提供了基礎。
命名實體識別(NER)旨在識別文本中具有特定含義的實體,比如人名、地名、組織名、機構名等。近年來,基于深度學習的NER取得了優異的表現。深度學習模型對輸入數據進行特征提取,再使用非線性激活函數提高模型的表達能力,完成多層神經網絡的訓練和預測任務。Huang等[16]使用雙向長短期記憶網絡(BiLSTM)和條件隨機場CRF的方式解決命名實體識別問題,至今仍在命名實體識別方面被廣泛應用。Li等[17]提出了W2NER模型,通過構建詞與詞的關系,統一了普通扁平NER、嵌套NER和不連續的NER等3種NER任務模型,在NER方面有了很大的進展。
文本摘要旨在通過算法精練提取文本的主要內容,將文本轉化為包含關鍵信息的簡潔摘要。隨著文本摘要技術的發展,產生了2條技術路線:抽取式文本摘要和生成式文本摘要。抽取式文本摘要通過算法從原文中抽取關鍵信息組成摘要。Liu[18]將抽取式摘要分解為序列標注和句子排序任務進行建模。生成式文本摘要是模型根據原文的內容,自動生成文本摘要,它允許摘要中出現新的詞語,具有較高的靈活性。Zhang等[19]提出了Pegasus模型,將輸入文本中的重要句子遮蔽,再利用文本其他句子生成被遮蔽的重要句子,加深了模型對文檔的理解,實現了生成式摘要任務。
假設用S表示源新聞集,T表示目標新聞集,sx為S中的一個源新聞樣本,tx為T中的一個目標新聞樣本。給定源新聞-目標新聞對{sx,tx},為它設置一個狀態標簽yx∈{0,1},其中1代表源新聞和目標新聞話題匹配,0代表源新聞和目標新聞話題不匹配,{sx,tx,yx}為一個訓練樣本。根據上述定義,n個訓練樣本組成了訓練數據集,如式(1)所示:
Dtrain=((s1,t1,y1),(s2,t2,y2),…,(sn,tn,yn))。
(1)
本文利用訓練數據集Dtrain構建模型,f為模型損失函數,判斷當前源新聞sx′和目標新聞tx′是否匹配的標簽yx′,如式(2)所示:
yx′=f(sx′,tx′)。
(2)
這一節將介紹本文提出的話題匹配算法,包括基于關鍵實體和文本摘要的深層次語義特征提取、基于交叉注意力(cross-attention)的文本交互以及融合文本交互特征和深層次語義特征的匹配。話題匹配模型架構如圖1所示。

圖1 整體架構圖
深層次語義信息是新聞文本的關鍵實體和文本摘要信息,本文將關鍵實體特征和文本摘要特征通過雙向LSTM[20]進行特征融合,得到新聞文本的深層次語義特征。
3.1.1 實體提取器
本文采用W2NER模型進行命名實體識別,在人民日報NER數據集訓練模型,實體生成器如圖2所示。

圖2 實體生成器
首先將新聞文本輸入基于預訓練語言模型的BERT,轉化成向量形式。給定新聞樣本s,其對應的長度為l的字符序列s=[x1,x2,…,xl],通過BERT處理之后獲得s中的每個字符的表示向量如式(3)所示:
v=BERT(s)=[v1,v2,…,vl]。
(3)
為了進一步增強上下文的聯系,采用雙向LSTM來生成包含上下文信息的向量表示,如式(4)所示:
h=BiLSTM(v)=[h1,h2,…,hl]。
(4)
接著采用CLN(conditional layer normalization),構造出詞對信息矩陣 (word embedding ),疊加距離信息矩陣(distance embedding)和區域信息矩陣(region embedding)后,通過不同空洞率的空洞卷積進行特征提取。
然后疊加以上3個embedding,通過不同空洞率的空洞卷積進行特征提取,將得到的特征連接到一起,形成詞對網格表征Q。Q為預測層MLP的輸入,而預測層中雙仿射分類器(biaffine)的輸入是來自編碼層(BERT+BiLSTM)的輸出。詞對關系包括None、NNW、THW-*3種關系,None表示2個字沒有關系,不屬于同一個實體;NNW表示這2個字是在同一個實體中相鄰的位置;THW-*表示這2個字在同一實體中,且分別是實體的結尾和開始。給定向量表示h,使用2個MLP來分別計算詞對(xi,xj)的向量表示si和oj。然后,使用雙仿射分類器來計算詞對(xi,xj)之間的關系分數,如下所示:
si=MLP(hi);
(5)
oj=MLP(hj);
(6)
(7)
式中:U、W和b為可訓練參數;si和oj分別表示第i個和第j個單詞的向量表示。

(8)
通過組合biaffine和MLP預測器的得分計算詞對(xi,xj)的最終關系概率yij,如式(9)所示:
(9)
W2NER模型預測字和字之間的關系,相當于一個有向的詞圖。解碼的目的是根據確定的路徑找到字和字的NNW關系,得到預測的實體及其類型,最后得到實體集合E=(e1,e2,…,eo)。
3.1.2 關鍵實體篩選
將實體詞的TF-IDF關鍵性、詞出現的頻率、詞在詞的集合中是否合群、詞詞之間的相似度和詞句之間的相似度作為關鍵實體的篩選特征。
(1)TF-IDF關鍵性因子。TF-IDF是一種統計方法,用以評估一個詞對于一個語料庫中一份文件的重要程度,常用于關鍵詞檢索。TF-IDF關鍵性因子權重如式(10)所示:
(10)
(2)詞頻因子。統計實體集中各個實體詞出現的頻率,為不同詞頻的實體賦予不同的權重,如式(11)所示:
(11)
式中:n為實體出現的次數。
(3)詞的合群性因子。在數據集上采用jieba分詞訓練word2vec詞向量模型[21]。通過word2vec查找不同類詞的方法找出不合群的實體,并為其賦不同的權重。式(12)為不合群詞權重,式(13)為合群詞權重:
(12)
(13)
(4)詞詞相似度因子。通過word2vec詞向量模型編碼各實體,以實體為節點,相鄰節點的邊權重為向量相似度,計算當前詞與剩余詞的相似性。統計每個實體詞的邊權重之和,作為此實體的詞詞相似度,對每個實體的詞詞相似度進行歸一化,如式(14)所示。
(14)
式中:eni代表第i個實體的向量;cos(·)代表余弦相似度的計算;n為實體個數。
(5)詞句相似度因子。通過word2vec模型編碼各實體和句子,計算其相似度,作為詞句相似度因子,其中sen代表通過word2vec編碼的句向量,如式(15)所示:
(15)
最后,組合特征權重如式(16)所示:
(16)
根據實體集中各個實體的組合特征權重的不同進行排序,取前兩個作為關鍵實體,得到關鍵實體集合K=(k1,k2)。
3.1.3 文本摘要生成器
本文采用IDEA研究院CCNL提出的基于中文數據集悟道語料庫(180 GB版本)預訓練的中文Pegasus模型large版本[22],對新聞文本進行文本概括,得到新聞準確、簡潔的信息。
基于摘要提取的目的,Pegasus模型首先對于文本中的重要句子進行選取,受詞和連續span mask的啟發,Pegasus模型選擇了遮蔽這些重要句子即間隔句,并且拼接它們形成偽摘要,相應位置遮蔽掉的間隔句用[MASK]來替代。然后通過decode恢復這些遮蔽掉的間隔句,加深模型對于文本語義的理解,達到生成文本摘要的目的。
3.1.4 基于BiLSTM的深層次語義特征融合
本文設計了一個基于BiLSTM的特征提取網絡如圖3所示,對文本摘要特征和關鍵實體特征進行特征融合,BiLSTM可以捕獲上下文信息,提取更深層的語義特征[23]。

圖3 基于BiLSTM的特征提取網絡
該網絡是一個并行網絡,通過文本摘要提取的新聞文本s、t得到摘要Ms、Mt,通過預訓練語言模型BERT進行編碼,得到摘要中的每個字符的向量表示。然后通過平均池化,分別得到文本摘要特征向量ps、pt。同樣,通過實體提取和關鍵實體篩選的新聞文本s、t得到的關鍵實體集Ks、Kt,通過預訓練語言模型BERT進行編碼,得到Ks、Kt中的每個字符的向量表示。然后通過平均池化分別得到關鍵實體特征向量qs、qt。
接下來,將源新聞文本的文本摘要特征向量ps和源新聞文本的關鍵實體特征向量qs進行拼接,再通過BiLSTM進行特征融合,得到源新聞文本的深層次語義特征向量m。同樣,將目標新聞文本的文本摘要特征向量pt和目標新聞文本的關鍵實體特征向量qt進行拼接,再通過BiLSTM進行特征融合,得到目標新聞文本的深層次語義特征向量n。其中,BiLSTM是雙向LSTM,分別對序列進行正向和反向處理,獲取上下文的聯系,得到全局特征。
在這一部分,對源新聞文本和目標新聞文本進行交互,增進彼此的聯系,更好地獲取待匹配新聞文本之間的差異,如圖4所示。

圖4 基于cross-attention的文本交互
首先,對源新聞文本s通過預訓練語言模型BERT,得到s的特征向量Ps,即BERT模型的最后一層輸出。同樣,將目標新聞文本t通過預訓練語言模型BERT,得到t的特征向量Pt。雖然BERT可以有效地編碼語義信息,但是s和t之間的交互信息沒有被探索,缺少彼此的交互和聯系。因此,利用交叉注意模塊來增進文本之間的跨序列交互。與自注意力機制不同,交叉注意力機制的輸入來自具有相同維度的不同序列,查詢來自一個序列,而鍵和值來自另一個序列。
具體地,首先將通過BERT得到的向量Ps、Pt,送入cross-attention的輸入中,用于計算查詢、鍵和值,將它們分別打包成矩陣Q、K、V。
Q和K之間的點積的相似性決定了V的注意分布。m個頭部的多頭注意函數具有m個并行的自注意函數。對于第i個頭部,輸入的Q、K、V轉換如下:
(17)
(18)
(19)
(20)
(21)
(22)

多頭自注意函數的計算過程表示如下:
(23)
(24)
式中:dh代表每個頭部的輸出特征的維數。
進一步,將每個頭部得到的特征向量拼接,與權重矩陣Wo計算后壓縮成一個矩陣,m代表總共的頭數,公式如下:
hs=concat(hs1,hs2,…,hsm);
(25)
ht=concat(ht1,ht2,…,htm);
(26)
MA(Qs,Kt,Vt)=hsWso;
(27)
MA(Qt,Ks,Vs)=htWto。
(28)
再通過由2個全連接層和一個ReLU激活函數組成的FFN層,在各個時序上對特征進行非線性變換,提高網絡表達能力。
通過cross-attention,可以得到新聞文本s和t各個字的交互向量表達,然后通過平均池化操作,得到新聞文本s和t的交互特征向量u、v。
基于cross-attention的文本交互模塊得到了源新聞文本的交互特征u、目標新聞文本的交互特征v,而后用|u-v|得到源新聞-目標新聞文本交互特征的差異,|u-v|為特征向量按位相減并取絕對值的操作。深層次語義特征提取模塊得到了源新聞文本的深層次語義特征m、目標新聞文本的深層次語義特征n,而后用特征向量|m-n|得到源新聞-目標新聞文本深層次語義特征的差異。將文本交互特征向量及其差異和深層次語義特征向量及其差異拼接,得到融合的特征向量(u,v,|u-v|,m,n,|m-n|)。然后,將向量(u,v,|u-v|,m,n,|m-n|)通過BN層進行歸一化,通過ReLU增加神經網絡各層之間的非線性關系,最后通過全連接層進行降維,預測匹配的結果。
本文的數據集來源于2021搜狐校園文本匹配算法大賽話題匹配的真實數據集[24]。該數據集包含源新聞文本、目標新聞文本和標簽,若2段新聞話題相同或相似,標注為1,否則標注為0。
該數據集包括短文本和短文本的匹配、短文本和長文本的匹配、長文本和長文本的匹配3部分,數據統計結果如表1所示。其中短文本為100以內的文本,長文本為200字以上的文本。實驗將3個數據集的訓練集和驗證集合并,訓練一個話題匹配模型,分別在3個測試集上測試,實驗結果證明模型在不同長度的文本上均有效果。

表1 實驗中使用的搜狐數據集
本節將本文提出的算法和以下6個基準的文本匹配算法進行性能比較,其中ABCNN和SimLSTM模型采用的word2vec詞向量是使用搜狐數據集進行無監督訓練得到的。
ABCNN:交互型文本匹配模型,采用CNN抽取上下文信息,在輸入層和卷積的輸出層添加注意力機制對序列進行交互,進而得到文本匹配結果。
SimLSTM:表示型文本匹配模型,通過2個LSTM網絡得到句子表征向量,用全連接層構成的分類層得到匹配結果。
BERT:預訓練語言模型,BERT采用基于自注意力機制的Transformer,將源新聞、目標新聞文本通過BERT進行微調,實現文本匹配任務。
SBERT[25]:SBERT模型采用孿生網絡結構,分別對源文本和目標文本輸入BERT網絡,輸出2組表征句子語義的向量u、v,拼接向量u、v、|u-v|,預測文本匹配結果。
Erine3.0[26]:基于Ernie、Ernie2.0,百度不斷增大語料庫,并且融合知識圖譜進行知識強化的預訓練任務,得到百度的預訓練語言模型Erine3.0。通過微調,可進行文本語義匹配任務。
實驗部分綜合利用準確率Acc、精確率P、召回率R、F1指標來評價算法,如下所示:
(29)
(30)
(31)
(32)
本文的實驗環境如下:Intel(R) Xeon(R) Platinum 8255C CPU@2.50 GHz+24 GB內存,深度學習框架為Anaconda Python3.0+PyTorch 1.8.1。
在關鍵實體提取模塊,根據實驗發現,關鍵實體個數設置為 2時效果最好。在命名實體識別模塊,使用BERT獲得768維的詞向量,學習率設置為 10-3,批樣本數設置為8,采用 Adam 優化器,可以獲得更好的收斂效果。在話題匹配模塊,根據統計,新聞文本平均輸入長度為 260,文本摘要最大輸入長度為100,關鍵實體最大輸入長度為20,以此設置相關參數。同時,學習率設置為2×10-5,批樣本數設置為 16,迭代次數為2,采用Adam 優化器,可以獲得較好的收斂效果,但模型容易過擬合,因此采用dropout層解決模型過擬合問題,在訓練過程中每 200 步保存一次模型,保留效果最好的模型。
圖5展示了關鍵實體篩選模塊的關鍵實體個數對實驗結果的影響。其中,k=1、k=2、k=3、k=4,分別代表了將按照組合特征權重排好序的實體,選取前1、2、3、4個作為關鍵實體;k=all代表把文本的所有實體都參與深層次語義特征的提取。綜合來看,k=2時,指標R、F1在短短匹配、短長匹配、長長匹配數據集上均為最高,指標Acc和P也表現較好。因此,選取前2個實體作為關鍵實體。當k=all時,效果較差,同時也證明了關鍵實體提取模塊的有效性。

圖5 不同關鍵實體個數的性能變化
為了驗證本文方法的有效性,選取了表示型、交互型、預訓練語言模型3種類型的文本匹配方法進行對比實驗。表2展示了所有算法在真實數據集上取得的實驗結果。其中,ABCNN 模型為交互型文本匹配模型,采用CNN可較好地提取文本局部信息,捕捉文本細節,通過注意力機制增進兩句話之間的交互,但是過分注重文本細節的匹配,不利于文本話題匹配。SimLSTM模型為表示型文本匹配模型,僅在匹配層獲取向量差異,缺少語義之間的交互,編碼句子語義時損失較大。BERT、Ernie3.0模型采用大規模語料庫預訓練,SBERT模型采用BERT進行語義表示,但是這3個模型忽視文本話題的概括,在話題匹配方面效果不好。

表2 對比實驗結果
總體上看,本文提出的算法各項指標比較均衡,在3個測試集中,召回率和F1都取得最好的效果,在準確率、精確率方面也與其他模型的最優效果相近。因此,證明了本文提出的基于關鍵實體和文本摘要多特征融合的話題匹配算法的有效性。
為了驗證本文方法中各模塊的有效性,移除了模型中特定的部分,進行了消融實驗。表3展示了消融實驗結果,其中,M1為移除了深層次語義特征提取模塊;M2為移除了基于BiLSTM的深層次語義特征融合模塊,即將文本摘要特征、關鍵實體特征直接拼接參與話題匹配。M3為移除了交叉注意力模塊,用BERT最后一層的[CLS]向量作為句子語義向量,進行匹配。

表3 消融實驗結果
從消融實驗結果可以看出,各模塊對準確率和精確率影響較小,但對召回率和F1值有較大的影響。去除了深層次語義特征提取模塊后,各指標明顯降低。去除BiLSTM提取關鍵實體和文本摘要的全局特征,在不同數據集中,召回率和F1也有所降低。去除cross-attention文本語義特征交互模塊后,短文本和短文本的匹配以及長文本和長文本的匹配中指標均下降,是由于待匹配文本長度相近時,通過BERT模型得到的語義特征差距較小,添加交叉注意力機制進行交互,可以更好地關注待匹配文本的語義信息,更好地捕獲語義特征的差異,提升話題匹配效果。然而,當待匹配文本長度相差過大時,文本語義特征相差較大,本文模型添加交叉注意力機制后僅在R和F1指標上有提升。
本文提出了基于關鍵實體和文本摘要多特征融合的話題匹配算法,通過提取文本的關鍵實體和摘要,獲得文本的深層次語義特征,更好地概括新聞文本話題,再通過交叉注意力機制獲得文本之間的交互特征,增進文本向量之間的聯系,使得文本深層次語義特征和文本交互特征共同作用于文本話題匹配結果。在真實數據集上進行的實驗表明,本文的方法要優于目前流行的深度學習文本匹配算法,對文本話題匹配有較好的檢測效果。
后續工作可以通過關系抽取或事件抽取的方法進一步提取文本深層次語義特征,提升文本話題匹配結果。目前公開的話題匹配數據集不多,可以制作更大的數據集來進行進一步實驗。