徐菲菲 馮東升
(上海電力大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 上海 200090)
信息搜索最核心的技術(shù)是文本抽取和信息檢索,應(yīng)用場(chǎng)景包括:搜索引擎、文檔歸類與聚類、提取文本摘要等。其中,衡量文本間的相似性便是一項(xiàng)重要的技術(shù)[1-2]。在文本檢索中,為提高文本搜索的準(zhǔn)確率,也需要計(jì)算有效文本信息的相似度[3];在文本翻譯和分類等應(yīng)用場(chǎng)景下,文本相似度技術(shù)同樣不可或缺。目前,文本相似度的計(jì)算方法主要有以下幾種:
一種是根據(jù)統(tǒng)計(jì)學(xué)的方法,通常對(duì)文本中詞匯進(jìn)行統(tǒng)計(jì),計(jì)算其文本的頻率與數(shù)量,通過(guò)向量空間模型(VSM)建立單詞頻率信息的空間矢量,以矢量之間的角度表示相似度[4]。由于此方法沒(méi)有考慮詞語(yǔ)在文本中的語(yǔ)序關(guān)系和組織結(jié)構(gòu),使得計(jì)算出的結(jié)果不準(zhǔn)確。因此,學(xué)者們對(duì)此模型進(jìn)行了諸多改進(jìn)。文獻(xiàn)[5]在VSM模型上引入語(yǔ)義特征和語(yǔ)句句法,使得計(jì)算語(yǔ)句相似度的準(zhǔn)確率顯著提高。文獻(xiàn)[6]使用分層次的聚類方法來(lái)構(gòu)建一棵二叉樹(shù),將詞語(yǔ)關(guān)鍵詞的相似度和文本主體語(yǔ)義的相似度進(jìn)行加權(quán)計(jì)算,得到最終結(jié)果。文獻(xiàn)[7]將潛在語(yǔ)義索引和TF-IDF加權(quán)向量空間模型(T_VSM)合并獲得了更有效的融合模型,提高了文本分類的效果。
另一種是基于語(yǔ)義的方法。引入兩種詞典分別是HowNet和知網(wǎng)詞典,它們能更好地解釋詞語(yǔ)語(yǔ)義以及語(yǔ)句層次結(jié)構(gòu)關(guān)系,并結(jié)合文本語(yǔ)義進(jìn)行計(jì)算。一些學(xué)者提出了一種將知網(wǎng)詞典與向量空間模型相結(jié)合的計(jì)算方法,可以防止語(yǔ)義信息的丟失且確保了文本中表達(dá)的信息的完整性[8];文獻(xiàn)[9]通過(guò)詞匯間的語(yǔ)義相似度表示各短文本向量之間的相關(guān)性,提出了將詞語(yǔ)語(yǔ)義信息加權(quán)到余弦公式上計(jì)算相似度數(shù)值。
近年來(lái),在眾多領(lǐng)域深度學(xué)習(xí)都有著很好的運(yùn)用,因此,基于神經(jīng)網(wǎng)絡(luò)的機(jī)器學(xué)習(xí)方法層出不窮?,F(xiàn)在主流的神經(jīng)網(wǎng)絡(luò)模型主要有CNN、RNN[10]和長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)LSTM[11]等。一些學(xué)者提出將LSTM網(wǎng)絡(luò)與文本相似度模型相結(jié)合的問(wèn)答系統(tǒng)[12]。文獻(xiàn)[13]提出的LSTM網(wǎng)絡(luò)模型,它將多層注意力和文本間關(guān)系融合在一起,把不同類型的注意力機(jī)制加入到雙向LSTM網(wǎng)絡(luò)的不同位置上,獲得深度語(yǔ)義的信息。
在深入分析眾多應(yīng)用于短文本相似性分析的神經(jīng)網(wǎng)絡(luò)模型基礎(chǔ)上,針對(duì)現(xiàn)有模型的缺陷,提出一種基于注意力機(jī)制的Siamese-BiLSTM孿生神經(jīng)網(wǎng)絡(luò)(SBA)來(lái)進(jìn)行短文本相似度的計(jì)算。首先使用Word2vec對(duì)短文本進(jìn)行向量化的表示;再構(gòu)建一種共享權(quán)重的孿生神經(jīng)網(wǎng)絡(luò),此網(wǎng)絡(luò)內(nèi)部使用雙向的LSTM提取短文本的語(yǔ)義;最后引入注意力機(jī)制進(jìn)一步獲取短文本中重要的信息,輸出兩個(gè)包含文本語(yǔ)義的向量表示,利用皮爾遜相關(guān)系數(shù)度量?jī)啥涛谋鹃g的相似度。
在短文本內(nèi)容分析前,短文本必須要經(jīng)過(guò)預(yù)處理,而分詞是預(yù)處理的重要一步。分詞就是對(duì)短文本進(jìn)行詞語(yǔ)粒度級(jí)別的切割,將短文本切分為多個(gè)獨(dú)立的詞語(yǔ),并標(biāo)注每個(gè)詞語(yǔ)的詞性。分詞的準(zhǔn)確性會(huì)很大程度地影響相似度計(jì)算。本文使用PKUSEG分詞工具,它可以劃分領(lǐng)域的分詞以及處理特殊領(lǐng)域的分詞,針對(duì)不同類型的數(shù)據(jù)可以使用不同的訓(xùn)練模型。經(jīng)過(guò)PKUSEG短文本分詞系統(tǒng)處理后,短文本會(huì)被分割為一個(gè)個(gè)獨(dú)立的單詞,單詞間有空格隔開(kāi)。停用詞是指某些高頻出現(xiàn)的詞,但不影響文本含義,低頻詞是極少出現(xiàn)在文中的詞,這些詞在相似度計(jì)算中將導(dǎo)致誤差。因此,為了提高計(jì)算結(jié)果的精確性,還需要從分段文本中刪除停用字和低頻詞,一般依據(jù)停用詞表去除停用詞。停用詞表是人為搜集整理出來(lái)的,若某個(gè)單詞出現(xiàn)在詞表中,則將其從文本中去除。
對(duì)于短文本特征表示,比較傳統(tǒng)的方法有TF-IDF、WordNet和獨(dú)熱編碼。WordNet通過(guò)編碼不同的詞性,組成一個(gè)詞語(yǔ)語(yǔ)義網(wǎng)絡(luò)[14]。WordNet編碼雖然保留了詞語(yǔ)的語(yǔ)義,但不能衡量同義詞的差別,并且由于主觀構(gòu)建,所以新增詞匯和維護(hù)成本較高[15];獨(dú)熱編碼[16]把短文本中的詞語(yǔ)編碼成一個(gè)個(gè)的稀疏向量,但這種稀疏向量無(wú)法體現(xiàn)整體文本的語(yǔ)義;TF-IDF能夠用詞匯的特征來(lái)表示文本的重要性[17],但文本的語(yǔ)義仍然無(wú)法被準(zhǔn)確表達(dá)。2013年,Mikolov等[18]提出了Word2vec模型,此模型會(huì)對(duì)詞匯間和詞匯語(yǔ)義關(guān)系建模,將單詞映射到低維空間,在這個(gè)低維空間中相似語(yǔ)義的單詞可以認(rèn)為是相同的,因此被廣泛運(yùn)用在諸如聚類、標(biāo)注和詞性分析等任務(wù)中[19]。
Word2vec是從海量文本語(yǔ)料庫(kù)中獲取文本嵌入的模型,它對(duì)分詞后的文本進(jìn)行特征表示,文本中的單詞能快速便捷地被映射成低維向量。文本集合組成詞向量空間,在這個(gè)龐大的空間中,每個(gè)單詞向量會(huì)被映射成向量點(diǎn),然后根據(jù)向量點(diǎn)間的間隔來(lái)計(jì)算單詞間的相似性。此模型有兩種訓(xùn)練方式:CBOW和Skip-gram。由于短文本的文本體量較小,文本語(yǔ)境信息也較少,因此,使用Skip-gram方法可以得到一個(gè)包含有關(guān)單詞語(yǔ)義信息的單詞向量。Skip-gram預(yù)測(cè)上文詞匯概率的表示公式為:
P(wn-c,wn-c+1,…,wn+c-1,wn+c|wn)
(1)
式中:c表示滑動(dòng)窗口大??;wn是語(yǔ)料庫(kù)中的一個(gè)單詞;wn-c,wn-c+1,…,wn+c-1,wn+c是根據(jù)wn預(yù)測(cè)的前后2c個(gè)詞匯。
假設(shè)短文本dm是短文本集合D={d1,d2,…,dm,…,dM}中的任意一個(gè)文本,而dm有其詞匯集合W={w1,w2,…,wn,…,wN},通過(guò)Word2vec模型訓(xùn)練獲得單詞向量,利用詞向量對(duì)dm進(jìn)行量化表示,dm轉(zhuǎn)化成N×V的二維矩陣,則短文本集合D可表示成M×N×V的三維矩陣。對(duì)應(yīng)的表達(dá)式為:
(2)
D=[d1,d2,…,dm,…,dM]
(3)
式中:短文本集合中文本總數(shù)用M表示;N表示每個(gè)短文本中的單詞數(shù)量;V表示單詞向量維度。
Word2vec模型將單詞映射成V維的詞向量,避免了詞匯天塹問(wèn)題,且顯著地降低特征維度。然后將得到的詞向量分別輸入兩個(gè)神經(jīng)網(wǎng)絡(luò)子網(wǎng)絡(luò)從而映射得到包含上下文詞義信息的詞向量。
孿生網(wǎng)絡(luò)[20]是一種特殊的神經(jīng)網(wǎng)絡(luò)構(gòu)造,它由兩個(gè)或更多相同的子網(wǎng)絡(luò)構(gòu)成,子網(wǎng)絡(luò)具有一致的配置,即一致的參數(shù)和權(quán)重,參數(shù)的更新是同步進(jìn)行在子網(wǎng)上的。利用同質(zhì)的子網(wǎng)絡(luò),得到兩個(gè)短文本的向量表達(dá),以計(jì)算向量表達(dá)式來(lái)度量相似度。
目前關(guān)于孿生網(wǎng)絡(luò)結(jié)構(gòu)已有一些研究。最早應(yīng)用在文本相似度計(jì)算領(lǐng)域的孿生網(wǎng)絡(luò)是深度結(jié)構(gòu)化語(yǔ)義模型(DSSM)[21]。DSSM首先對(duì)文本主題和查找內(nèi)容進(jìn)行建模,它們由5層網(wǎng)絡(luò)分別進(jìn)行向量化,最后,用余弦距離計(jì)算兩個(gè)短文本的相似度。DSSM的子網(wǎng)絡(luò)結(jié)構(gòu)由兩個(gè)部分構(gòu)成,一是利用哈希方式將文本中的單詞和查找內(nèi)容映射成詞級(jí)向量,二是利用三層全連接網(wǎng)絡(luò)來(lái)表達(dá)整個(gè)文本的主題向量。由于該網(wǎng)絡(luò)參數(shù)繁瑣且沒(méi)有考慮文本中的詞序關(guān)系,Shen等[22-23]在DSSM上添加一層全連接網(wǎng)絡(luò),非線性特征通過(guò)卷積池化提取,提出卷積深度結(jié)構(gòu)化語(yǔ)義模型(CDSSM),該模型與DSSM模型主要有以下兩點(diǎn)區(qū)別:CDSSM模型將全連接層替換成卷積層和池化層;CDSSM模型將文本中每個(gè)單詞和查找信息都表示成一個(gè)詞向量。雖然訓(xùn)練參數(shù)變少了,但不能捕獲長(zhǎng)距離語(yǔ)句間的語(yǔ)義關(guān)系??紤]到LSTM網(wǎng)絡(luò)可以有效地使用遠(yuǎn)程信息,Palangi等[24]提出基于LSTM網(wǎng)絡(luò)的短文本相似度算法,其查詢內(nèi)容與短文本分別經(jīng)過(guò)LSTM網(wǎng)絡(luò)得到向量表達(dá)。Neculoiu等[25]提出基于雙向LSTM網(wǎng)絡(luò)的文本相似度算法(BiLSTM),其每個(gè)網(wǎng)絡(luò)分支均是雙向的LSTM網(wǎng)絡(luò)。
在研究短文本相似度算法時(shí),基于特征工程的方法不能處理那些無(wú)相同單詞重現(xiàn)卻表達(dá)相同語(yǔ)義的文本,獲取的只是表層語(yǔ)義,不能完全有效地理解短文本的語(yǔ)義。相比于傳統(tǒng)機(jī)器學(xué)習(xí)方法,深度學(xué)習(xí)是處理短文本相似度效果更好的方法。本文采用注意力機(jī)制完善短文本的向量表示。根據(jù)短文本的特點(diǎn),在建立短文本表達(dá)時(shí),首先建立單詞向量表達(dá),然后把它們聚合成短文本向量表達(dá)。其次,句子中的每個(gè)單詞的重要性程度也不一樣,因此引入注意力機(jī)制,根據(jù)句子中單詞的不同重要度進(jìn)行評(píng)分,將得到的單詞向量以及其權(quán)重作為相似度計(jì)算的輸入。為了檢驗(yàn)改進(jìn)的基于孿生網(wǎng)絡(luò)計(jì)算結(jié)構(gòu)的有效性,以基于BiLSTM網(wǎng)絡(luò)的相似度計(jì)算方法作為基準(zhǔn)系統(tǒng)。
卷積神經(jīng)網(wǎng)絡(luò)不能捕捉遠(yuǎn)距離語(yǔ)句之間的語(yǔ)義關(guān)系,全連接神經(jīng)網(wǎng)絡(luò)的參數(shù)繁多,導(dǎo)致訓(xùn)練時(shí)間增加,遞歸神經(jīng)網(wǎng)絡(luò)可以有效地使用遠(yuǎn)距離語(yǔ)句信息。因此在孿生網(wǎng)絡(luò)結(jié)構(gòu)中加入長(zhǎng)短時(shí)記憶網(wǎng)絡(luò),設(shè)計(jì)了一種基于雙向LSTM模型的相似度計(jì)算的基準(zhǔn)系統(tǒng)。
2.1.1孿生網(wǎng)絡(luò)結(jié)構(gòu)
基于孿生網(wǎng)絡(luò)的相似度計(jì)算結(jié)構(gòu)如圖1所示,短文本數(shù)據(jù)在預(yù)處理后,經(jīng)向量化表示,輸入一致的兩個(gè)子網(wǎng)絡(luò)可得兩個(gè)對(duì)象的向量表達(dá),計(jì)算兩個(gè)向量表達(dá)式之間的相似度來(lái)度量短文本間的相似度。
圖1 基于孿生網(wǎng)絡(luò)的相似度計(jì)算結(jié)構(gòu)
2.1.2基于雙向LSTM網(wǎng)絡(luò)的計(jì)算方法
Neculoiu等[25]提出了一種基于雙向LSTM孿生網(wǎng)絡(luò)結(jié)構(gòu)的相似度計(jì)算方法,該網(wǎng)絡(luò)模型由兩部分組成:首先,采用兩個(gè)雙向LSTM網(wǎng)絡(luò)來(lái)抽取特征;然后由全連接詞組成擬合層,通過(guò)函數(shù)實(shí)現(xiàn)將兩個(gè)分支網(wǎng)絡(luò)組合。選擇余弦相似度作為函數(shù)實(shí)現(xiàn),函數(shù)輸出的實(shí)數(shù)作為相似度的度量值,如式(4)所示。
(4)
式中:fw(x1)和fw(x2)分別代表文本1和文本2的特征表達(dá)向量。
模型的輸入分別是文本序列x=(x0,x1,x2,…,xn),y=(y0,y1,y2,…,yn)。使用詞嵌入矩陣We,把詞映射成向量表示(Ii=Wexi,Ji=Weyi)。假設(shè)有一數(shù)據(jù)集X={x1,x2,y},標(biāo)簽y=0表示x1與x2屬于不同類型,y=1表示x1與x2屬于相同類型。因此設(shè)計(jì)損失函數(shù)為:當(dāng)y=0時(shí),兩文本不相似,文本間距離越大,那么損失越小。當(dāng)y=1時(shí),兩文本相似,文本間距離越大,那么損失也就越大。用L+(X1,X2)表示y=1時(shí)的損失,L-(X1,X2)表示y=0時(shí)的損失,則單個(gè)文本的損失函數(shù)可以寫(xiě)成:
Lw=(1-y)L-(X1,X2)+yL+(X1,X2)
(5)
則N個(gè)文本的總的損失函數(shù)可以寫(xiě)為:
(6)
目前基于孿生網(wǎng)絡(luò)模型的相似度算法大多是基于整個(gè)文本進(jìn)行研究的。從文本長(zhǎng)度來(lái)看,長(zhǎng)短不一,它可以是詞語(yǔ),可以是語(yǔ)句,但在模型訓(xùn)練時(shí),是把整個(gè)文本當(dāng)作一個(gè)序列輸入到同質(zhì)子網(wǎng)絡(luò)中。這種方法存在一定的缺陷,由于是兩個(gè)有著相同參數(shù)規(guī)模的網(wǎng)絡(luò)分支,若文本間長(zhǎng)度相差懸殊,則會(huì)出現(xiàn)數(shù)據(jù)稀疏問(wèn)題。根據(jù)經(jīng)驗(yàn)可知,文本中不同的詞語(yǔ)和語(yǔ)句,其重要程度是不同的?;谝陨?,提出基于注意力機(jī)制的孿生網(wǎng)絡(luò)模型(Siamese-BiLSTM based Attention,SBA)。在構(gòu)建短文本表達(dá)時(shí),首先構(gòu)建詞語(yǔ)的向量表達(dá),然后把詞語(yǔ)聚合成一個(gè)短文本表達(dá),在短文本的句子級(jí)別,引入注意力機(jī)制,改進(jìn)的孿生網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
圖2 結(jié)合注意力機(jī)制改進(jìn)的Siamese-BiLSTM網(wǎng)絡(luò)架構(gòu)
該孿生網(wǎng)絡(luò)是一個(gè)4層的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。首先通過(guò)Word2vec層得到短文本單詞的編碼,輸入到雙向 LSTM層得到包含潛在語(yǔ)義信息的單詞編碼,輸出到注意力機(jī)制層,得到包含短文本主要信息的向量表示。其中編碼層和注意力層分別經(jīng)由兩個(gè)共享權(quán)值的子網(wǎng)絡(luò),注意力層是基于詞級(jí)別的,經(jīng)此層得到的向量鏈接前向循環(huán)網(wǎng)絡(luò)即是整個(gè)短文本的向量表達(dá),此向量有128個(gè)維度。
2.2.1編碼層
在編碼層中使用了Word2vec層和雙向LSTM模型,輸入LSTM模型的二維向量是由短文本中每個(gè)單詞通過(guò)Word2vec層詞嵌入矩陣映射得到的。給定一短文本是由一組文本序列構(gòu)成,記作wit,t∈[0,T],T代表文本長(zhǎng)度,經(jīng)詞向量嵌入矩陣We映射得到詞向量Xij=Wewij。
(7)
(8)
式中:L表示句子數(shù)量。
2.2.2注意力機(jī)制層
自然語(yǔ)言處理中有兩類LSTM模型,其一是使用模型中每個(gè)時(shí)刻的輸出求出的平均值,其二是直接用模型的最后時(shí)刻的輸出值。但兩類方法均有一定的弊端,前者求平均的方法未能反映出不同時(shí)刻信息的不同重要性,后者則是缺少了前面諸多時(shí)刻的信息。然而雙向LSTM模型仍無(wú)法區(qū)分單詞在短文本中的重要程度,短文本中每個(gè)單詞的重要程度不相同。同樣地,不同的句子在短文本中的位置不一樣,重要性也不一樣。為了解決此問(wèn)題,采用注意力機(jī)制獲取編碼后短文本中的重要信息。本文提出的注意力機(jī)制表示為:
uit=tanh(Wwhit+bw)
(9)
(10)
(11)
式(9)-式(11)的含義是:將向量hit輸入雙向LSTM,獲得hit的隱藏層表示uit,uit和uw的相似度表示該詞匯的重要性;注意力矩陣αit可以通過(guò)Softmax函數(shù)歸一化得到;最終,再將輸入向量hit經(jīng)注意力矩陣加權(quán)求和,得到包含文本語(yǔ)義的向量表示si。
2.2.3皮爾遜相關(guān)系數(shù)計(jì)算方法
皮爾遜相關(guān)系數(shù)是歐氏距離上的部分優(yōu)化,首先對(duì)向量的值去中心化,即對(duì)兩向量的所有維度均減去平均值,而后對(duì)去中心化后向量的值求余弦相似度。相較于原始余弦相似度,它能更好地反映兩變量間的線性相關(guān)性,其取值在[-1,1]之間。當(dāng)相關(guān)系數(shù)r趨于0時(shí),相關(guān)性較弱,而趨于1或-1時(shí),相關(guān)性較強(qiáng)。計(jì)算相關(guān)系數(shù)公式可表示為:
(12)
實(shí)驗(yàn)環(huán)境主要基于TensorFlow和Python3.6。實(shí)驗(yàn)按7 ∶3的比例隨機(jī)分割標(biāo)注數(shù)據(jù)集,得到訓(xùn)練集和測(cè)試集。本實(shí)驗(yàn)使用的數(shù)據(jù)集如表1所示,包括來(lái)自Kaggle上的Quora短文本對(duì)數(shù)據(jù)集和螞蟻金服句對(duì)數(shù)據(jù)集。Kaggle是一個(gè)知識(shí)分享網(wǎng)站,有不同的人會(huì)提出不同的問(wèn)題,而這些問(wèn)題有時(shí)會(huì)很類似,如:“我心目中的最佳足球進(jìn)攻手是?”和“你最崇拜的足球射手是?”,這樣的語(yǔ)句對(duì)會(huì)被認(rèn)為是相似的,被標(biāo)記為1。Quora數(shù)據(jù)集包含404 291個(gè)短文本對(duì),每個(gè)問(wèn)題長(zhǎng)度大約是20~30個(gè)單詞,每對(duì)的格式是“序號(hào),文本一序號(hào),文本二序號(hào),文本一,文本二,是否相似”,當(dāng)是否相似為1時(shí)表示兩個(gè)短文本相似,相似的短文本對(duì)是149 286對(duì)。中文訓(xùn)練數(shù)據(jù)為螞蟻金服句對(duì)數(shù)據(jù),是螞蟻金服官方開(kāi)放的數(shù)據(jù)集,也是一組短文本對(duì),每對(duì)的格式是“文本一,文本二,是否相似”,共包含39 347對(duì)短文本,其中相似的短文本對(duì)是8 563對(duì),正負(fù)樣本比例約為1 ∶3.6。
表1 數(shù)據(jù)集表示
實(shí)驗(yàn)中的一些參數(shù)設(shè)置如表2所示,參數(shù)值的設(shè)定根據(jù)經(jīng)驗(yàn)和實(shí)驗(yàn)驗(yàn)證。
表2 參數(shù)設(shè)置
為了判斷計(jì)算方法的有效性,將數(shù)據(jù)集中提供的文本和實(shí)驗(yàn)結(jié)果進(jìn)行對(duì)比,得到相似度量值的相似性和差異性,實(shí)驗(yàn)采用皮爾遜系數(shù)(r)和F1值來(lái)衡量相似性和差異性。r取值范圍為[-1,1],r>0表示實(shí)驗(yàn)結(jié)果與標(biāo)注數(shù)據(jù)集所提供短文本對(duì)的相似度量值正相關(guān)。F1值是對(duì)準(zhǔn)確率和召回率作加權(quán)平均計(jì)算得到的值,值越高表示預(yù)測(cè)模型具有更好的性能。
實(shí)驗(yàn)將提出的基于注意力機(jī)制的Siamese-BiLSTM模型(SBA)分別與基于BiLSTM的孿生網(wǎng)絡(luò)、基于LSTM的孿生網(wǎng)絡(luò)以及傳統(tǒng)向量空間模型VSM進(jìn)行如下的對(duì)比實(shí)驗(yàn)研究。
TensorBoard中,基于注意力機(jī)制的Siamese-BiLSTM模型(SBA)、基于Siamese-BiLSTM模型(S-BILSTM)和基于Siamese-LSTM模型(S-LSTM)訓(xùn)練完成后,模型訓(xùn)練的精確度和損失值隨迭代次數(shù)的變化如圖3所示。
圖3 各模型的準(zhǔn)確度和損失對(duì)比
可以看出,在使用梯度下降方法進(jìn)行訓(xùn)練時(shí),函數(shù)的損失值逐步減小,并最終收斂趨向穩(wěn)定狀態(tài)。由于模型復(fù)雜度的增加,在引入注意力機(jī)制后的BiLSTM模型相比較于原始模型,起始損失值下降較慢,但損失值收斂到0.1以下的速度是有所增加的,且最終得到的損失函數(shù)值也是最小的。由此可見(jiàn),注意機(jī)制的引入可以有效地提高模型的相似度計(jì)算能力。通過(guò)對(duì)比分類準(zhǔn)確率圖也可以發(fā)現(xiàn),本文提出的SBA模型準(zhǔn)確率是三種方法中最好的,可以達(dá)到0.91以上。
在Quora數(shù)據(jù)集上,各個(gè)模型性能結(jié)果如圖4和圖5所示,可以看出深度學(xué)習(xí)的方法都優(yōu)于傳統(tǒng)的向量空間模型方法,Bi-LSTM在此自然語(yǔ)言處理任務(wù)上的效果略強(qiáng)于CNN,而結(jié)合attention機(jī)制的孿生網(wǎng)絡(luò)模型(ATT-based Siamese-Net) 能提升孿生網(wǎng)絡(luò)的效果,且優(yōu)于CNN和BiLSTM。與孿生網(wǎng)絡(luò)相比,本文SBA模型的準(zhǔn)確率和F1值都有著較為明顯的提升。
由此可見(jiàn)結(jié)合了注意力機(jī)制能夠有效提取短文本的局部特征和總體特征,對(duì)句子的語(yǔ)義表達(dá)更加豐富。
圖4 Quora數(shù)據(jù)集上各模型準(zhǔn)確率
圖5 Quora數(shù)據(jù)集上各模型F1值
在螞蟻金服句對(duì)數(shù)據(jù)集上,實(shí)驗(yàn)結(jié)果如圖6及圖7所示,通過(guò)與其他模型對(duì)比,可以看出本文提出的方法效果最好。由于中文語(yǔ)言及語(yǔ)義的復(fù)雜性,對(duì)短文本提取語(yǔ)義信息時(shí)會(huì)出現(xiàn)誤差,所以在中文數(shù)據(jù)集上模型的準(zhǔn)確率均低于英文數(shù)據(jù)集?;赟iamese-Net模型與BiLSTM模型相比,并沒(méi)有提升相似性度量的準(zhǔn)確率,而加入注意力機(jī)制后能夠明顯提升準(zhǔn)確率和F1值。相比較而言,傳統(tǒng)的VSM模型僅僅把短文本中的單詞作為向量特征表示,丟失了文本語(yǔ)義信息,在短文本的相似性度量上效果較差。
圖6 螞蟻金服數(shù)據(jù)集上各模型準(zhǔn)確率
圖7 螞蟻金服數(shù)據(jù)集上各模型F1值
短文本相似度計(jì)算是文本處理中的重要研究方向。傳統(tǒng)的計(jì)算方法未考慮短文本本身所包含的語(yǔ)義信息,因此,本文提出了一種基于注意力機(jī)制改進(jìn)的孿生網(wǎng)絡(luò)結(jié)構(gòu)的方法,該方法考慮到詞語(yǔ)語(yǔ)義信息對(duì)相似度計(jì)算的重要性,通過(guò)雙向LSTM網(wǎng)絡(luò)提取短文本的語(yǔ)義信息,并引入注意力機(jī)制,構(gòu)建詞向量的權(quán)重,得到包含重要語(yǔ)義信息的文本特征表示,最后采用皮爾遜相關(guān)系數(shù)來(lái)衡量短文本相似度。對(duì)所提出的算法和現(xiàn)有算法在不同的數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)研究,結(jié)果顯示,所提算法在相似度計(jì)算的準(zhǔn)確率和 F1值均高于其他算法,證明了該算法的可行性和有效性。下一步工作將再對(duì)此網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行優(yōu)化,加入主題模型,提升相似性度量效果,以便能夠提升文本標(biāo)題與短文本之間的匹配程度。