吳 迎 崗
(廣東工業大學計算機學院 廣東 廣州 510006)
隨著當今互聯網的不斷快速發展,以短文本為基本形式的網絡信息急劇增加,文本分析應用中短文本相似度計算起了重要作用,文本挖掘、人工智能信息檢索和知識管理等都需要借助于文本的相似性檢測、度量和評價的方法[1-2]。短文本相似性檢測就是通過計算得到兩個文本中這些相似部分的比例,然后分析及整合中間結果的過程。如果兩者相似度超過某一閾值,則可以判斷內容重復,并將結果反饋給用戶,對于存儲方面也能夠有效地降低存儲消耗。目前,常用的短文本相似度算法有基于關鍵詞頻率和反向文本頻率計算相似度的方法(TF-IDF)[3]、空間余弦相似度算法[4]、傳統的基于精確匹配的相似性匹配算法[5]、基于距離測量的差分對齊算法[6]等。
伴隨著深度學習在自然語言處理方面的迅速發展,其在文本相似度任務中也被逐漸地應用起來,并不斷取得新的突破。本文在已有神經網絡研究的基礎之上,提出一種更加簡單有效的基于有序神經元LSTM(ON-LSTM)相結合的短文本相似度計算的方法。該模型能夠更好地對短文本深層次的結構信息以及對詞匯間的局部語義信息進行關注和表達,并經過IC層,加快模型的收斂速度。最終結合整體的語義信息表示,來計算文本的語義相似度,并判斷是否是相同的語義表達。
在如今的自然語言處理中詞嵌入技術得到了廣泛應用,它是將單詞詞語用矢量的形式進行表達并得到計算機能夠識別的向量形式的技術,在短文本處理任務中為文本量化。對于傳統短文本向量表示都是基于one-hot編碼形式。one-hot編碼簡單方便,但忽略了單詞詞語之間的語義關系,而且還會引起維度災難問題。詞向量的提出很好地解決了one-hot編碼存在的問題,詞向量是將高維稀疏的特征向量映射為低維稠密的特征向量。Bengio等[7]提出用神經網絡概率語言模型NNLP來處理文本信息。Mikolov等[8-9]基于 NNLP 提出 Word2vec模型,并給出了利用 CBOW和Skip-gram兩種模型構建詞向量。本文利用Google提出的NLP工具Glove[10]進行詞向量的訓練。
Batch Normalization[11]和Dropout[12]是常用的神經網絡的訓練技術。批量歸一化網絡激活函數,使神經網絡中神經元的均值為0、單位方差為1。Batch Normalization在每一層神經網絡的計算過程如下:
B={x1…m}
(1)
yi=BNλ,β(xi)
(2)
(3)
(4)
(5)
y′i=γ×x′i+β
(6)
上述過程中B表示一個批次中有m個激活值,x′i表示歸一化之后的值,y′i表示經過BN變換之后的值。Dropout則通過在一個層中為神經元引入獨立的隨機門來構造獨立的激活函數,允許神經元以概率p輸出其值,否則輸出0來停用它們。Dropout的數學形式表達式為:
y=f(W×d(x))
(7)

(8)
式中:p為Dropout的隨機失活率;mask為以1-p為概率的貝努力分布生成的二值向量。
IC層是由Batch Normalization和 Dropout 相結合構成。本文為提高神經網絡的訓練速度以及防止出現過擬合現象引入了Batch Normalization機制和Dropout機制,它可以減少任意一對神經元之間的相互信息以及系數,從而減少神經元之間相對于dropout層的成對互信息來實現更穩定的訓練過程,能夠更快地加快模型在訓練中的收斂速度[13]。
目前深度學習的各種方法以及模型在NLP領域應用廣泛[14],深度學習方法也為短文本相似度計算研究提供了新思路,對于給定的兩個輸入句子,通過某一方法得出這兩個句子是否具有相似的語義關系,即提出一個簡單而又高效的計算方法來判斷兩個句子是否是相似的。如Huang等[15]提出了經典的單語義模型DSSM(Deep Structured Semantic Models)。Mueller等[16]提出了基于Siamese網絡的學習文本相似度的模型體系結構,用于學習變長字符序列的相似性度量。Pang等[17]提出了匹配金字塔模型,將卷積神經網絡思想遷移到了文本匹配中。Chen等[18]提出了如今應用最廣的ESIM模型,用句子間的注意力機制,來實現局部的推斷,進一步實現全局的推斷短文本匹配模型。Zhou等[19]在ESIM模型的基礎上提出多方向匹配的BiMPM模型,從多個角度匹配模型,解決之前單一模型交互匹配不充分等問題。
循環神經網絡(Recurrent Neural Network,RNN)是具有循環結構的神經網絡,RNN的鏈式結構能夠處理序列信息,因此在自然語言處理方面相關任務中被廣泛使用。RNN已經被證明對于自然語言中的語言建模問題具有很好的效果。其具有的結構通常如圖1所示。

圖1 RNN網絡結構圖
但循環神經網絡自身也具有一定程度的局限性,例如:伴隨著相關序列信息的不斷輸入,循環神經網絡對相對距離較遠的序列信息學習的程度,會產生較長距離依賴的問題,即對于之前較長時間序列信息上的一些信息可能產生感知力弱化的問題,進而會形成梯度爆炸和梯度彌散。鑒于RNN存在的缺陷問題,長短期記憶神經網絡(LSTM)的出現可以更好地解決循環神經網絡存在的相對距離較遠的序列信息學習產生依賴的問題。LSTM結構如圖2所示。

圖2 LSTM結構圖
其內部門構造機制的各個門以及記憶細胞的表達式如下:
LSTM遺忘門表達式為:
ft=σ(Wf·[ht-1,xt]+bf)
(9)
LSTM輸入門表達式為:
it=σ(Wi·[ht-1,xt]+bi)
(10)
(11)
LSTM細胞更新門表達式為:
(12)
ot=σ(Wo·[ht-1,xt]+bo)
(13)
LSTM最終的輸出表達式為:
ht=ot×tanh(Ct)
(14)

(15)
(16)
(17)
兩個LSTM分別從左端到右端以及從右端到左端計算序列。式中:Ht表示BiLSTM的最后輸出;ht表示兩個雙向LSTM層的當前時刻隱藏層的輸出狀態;b表示偏置項值;W代表網絡隱藏層的權重矩陣;xt表示當前時刻的輸入數據。BiLSTM的網絡結構如圖3所示。

圖3 BiLSTM網絡結構
對于RNN以及LSTM都沒有利用到神經元的序信息,而ON-LSTM神經網絡則試圖將這些無序的神經元經過某種變化形成一個有序結構來表示序列信息的某種特定信息結構,從而將神經網絡中的神經元序信息利用起來。ON-LSTM中“ON”代表的是“Ordered Neurons”,即有序神經元,文獻[20]表明其將神經元經過特定排序是為了將層級結構(樹結構)整合到 LSTM 中去,從而允許長短期記憶神經網絡可以學習到文本句子中的層級結構信息。進而得到短文本信息的深層次特征表示和每一個句子之間的語義關系編碼,ON-LSTM可以令循環神經網絡模型在不破壞其序列表示的情況下執行樹狀合成。對于長期依賴問題以及較長序列泛化問題,ON-LSTM 也比普通LSTM模型性能更佳。ON-LSTM與LSTM 模型的架構相似,不同的是排除了單元狀態的更新功能,并以新的更新規則替代,其變化部分表達式如下:
(18)
(19)
(20)
(21)
ht=ot° tanh(ct)
(22)
基于以上,本文提出一種基于有序神經元LSTM的短文本相似度匹配方法。該方法利用ON-LSTM神經網絡能夠自動學習到句子的層級結構信息的能力,對輸入的上下文信息進行深層次的特征信息提取,更好地學習到上下文之間的聯系,然后進行語義編碼,通過IC層加快模型收斂速度,結合整體的語義信息表示,最后通過全連接神經網絡層來計算文本的語義相似度,提高模型的準確率。
基于有序神經元LSTM的短文本相似研究思路如圖4所示。首先對短文本數據進行數據清洗,去除文本中包含的標點符號和特殊字符,僅保留可挖掘語義價值的文本信息。然后將短文本數據導入進行數據預處理,包括特征數值化、批歸一化以及在輸入神經網絡前進行隨機失活操作。在此過程中,使用Glove得到文本的詞向量表示以及將數據轉成固定長度的向量化表示,每一條文本數據都可以表示成一個固定長度的向量,每一個索引值代表了一個詞向量。經過上面的操作,輸入的數據就可以根據單詞索引所對應的詞向量形成詞矩陣。把得到的詞向量輸入到IC層中,加快模型收斂速度,經過處理再輸入到ON-LSTM層中。最后進行相應的計算。

圖4 基于有序神經元LSTM的短文本相似研究思路
本文基于有序神經元LSTM的短文本相似模型結構圖如圖5所示。首先將文本進行數值化操作,然后輸入到ON-LSTM神經網絡中,在此之前數據會通過IC層來加快模型自身的收斂速度,然后計算整體的文本語義信息表示,最后通過全連接層來計算兩個文本短語之間的語義相似度。

圖5 基于有序神經元LSTM的短文本相似模型結構圖
本文實驗環境如表1所示。

表1 實驗環境
本文選用公共的 Quora Question Pairs數據集進行實驗,驗證所提出網絡模型的有效性。數據集共包含了 404 290個問題組合對,該數據集中提供了已經標記好類別的文本數據信息以及其他信息,數據集僅標注類別標簽為1和0,表示相似和不相似兩種狀態,如一條數據具有相同語義則標簽為 1,反之則為 0。判斷一個問題對是否語義是相似的,即將問題Q1和Q2作為輸入,根據網絡模型最終輸出的概率值來判定,概率值越接近1表示兩者越相似。
為了驗證本文提出的基于有序神經元LSTM的短文本相似模型的有效性,設置以下幾組深度學習方法對比實驗:CNN、LSTM、BiLSTM-CNN和Attention- LSTM。訓練集以及測試集分別隨機選取為80%和20%。采用Glove訓練的詞向量作為實驗中神經網絡的輸入,為了更好地對比分析實驗結果,在保證相同條件的情況下,將相同神經網絡模型的超參數均作相同設置。
實驗中對于卷積神經網絡以及LSTM中使用的參數值大小如下。在固定其他相同值參數的情況下,設置詞向量維度為300維,為了防止模型在訓練過程中出現過擬合現象,將dropout率設置為0.25,卷積神經網絡中的卷積核大小選為3,濾波器的數量設置為128,LSTM以及其他類似模型中隱藏節點數設置為128,激活函數選擇ReLU,優化函數選擇Adam,在整個試驗過程中利用批處理方法對其他參數進行更新,批處理的大小設置為200,迭代次數設置為10。損失函數使用binary_crossentropy交叉熵損失函數來度量模型分類器的預測輸出的概率分布與真實分布之間的差異。假設概率分布p為期望輸出,概率分布q為實際輸出,H(p,q)為交叉熵,其公式為:

(23)
本文采用的評價標準為準確率(Accuracy)和F1-Score。F1-Score是二分類問題里面最常見的一個衡量指標,它是精準率與召回率的調和平均數,最大值為1,最小值為0。Precision衡量的是模型的查準率,而Recall衡量的是模型的查全率,具體公式如下:
(24)
(25)
(26)
(27)
式中:TP表示預測是正樣本,實際上也是正樣本;FP表示預測是負樣本,實際上是正樣本;TN表示預測是負樣本,實際上也是負樣本;FN表示預測是正樣本,實際上是負樣本。
為驗證本文提出網絡模型的有效性,分別將以上5種模型進行實驗對比分析,結果如表2所示。

表2 五種模型的比較結果(%)
由表2可知,本文提出的基于有序神經元LSTM的短文本相似模型在準確率以及F1-Score中表現出的性能均優于對比實驗中的其他四種網絡模型。本文網絡模型的準確率和F1-Score分別達到了81.05%和75.26%均高與其他四種模型。LSTM在文本相似度任務中的性能要稍低于CNN網絡,表明CNN和LSTM都具有對文本特征進行學習的表征能力。而對于CNN和BiLSTM的混合模型要優于兩者單一模型。Attention-LSTM模型是結合了注意力機制的模型,同單一LSTM模型相比,能夠有效地提升LSTM的準確率。而采用本文提出的方法同Attention-LSTM以及LSTM比較,準確率和F1-Score均有提高,表明ON-LSTM使文本的層級結構信息融入到LSTM中,自動學習到層級結構信息,更好地表示文本深層次語義信息,實驗效果也達到了最優。
由圖6可知,變化趨勢均是屬于先上升再逐漸穩定,其中CNN與LSTM以及Attention-BiLSTM模型變化率相較于另外兩組模型最為相似。而對于CNN和LSTM的混合模型BiLSTM-CNN要優于兩者任何單一模型。本文提出基于有序神經元LSTM的短文本相似模型呈現先上升再平穩趨勢,優于其他四組深度學習模型,在文本特征提取方面具有較好的性能以及達到較高的精準度。

圖6 val_acc的變化趨勢圖
由圖7可知,CNN模型的波動最不穩定,本文模型相較于其他四組深度學習模型來說整體波動較小,且變化趨勢逐漸降低并趨于平穩。綜合圖6、圖7分析可知,本文提出的基于有序神經元LSTM的短文本相似模型具有收斂速度快、準確率高的優點。

圖7 val_loss的變化趨勢圖
為衡量5組深度學習模型之間收斂速度的優劣,統計它們每一次完成迭代的時間代價,即模型完成一次訓練所需花費的時間代價。圖8顯示了不同深度學習模型時間代價隨迭代次數的變化趨勢。除CNN模型之外,本文模型在時間消耗方面整體優于其他幾組模型,時間代價最小,這說明了本文提出的基于有序神經元LSTM的短文本相似模型具有收斂速度快的優點。

圖8 時間代價趨勢圖
本文提出了一種基于有序神經元LSTM的短文本相似模型。該模型能夠利用ON-LSTM自動學習到層級結構信息,更好地表示文本深層次語義信息,通過IC層加快模型收斂速度,結合整體語義信息表示,最后通過匹配層來計算文本的語義相似度。由多組對比實驗表明,本文模型在指標分析中比其他對比模型都有較好的提高,能夠更好地對文本相似性進行計算,具有可行性以及有效性。