999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

BSLA:改進Siamese-LSTM的文本相似模型

2022-12-06 10:32:34孟金旭單鴻濤萬俊杰賈仁祥
計算機工程與應用 2022年23期
關鍵詞:機制文本模型

孟金旭,單鴻濤,萬俊杰,賈仁祥

上海工程技術大學 電子電氣工程學院,上海 201620

互聯網信息技術的快速發展帶來了海量的文本數據,這些海量的文本數據通常包含著有用的相似信息,文本相似算法可以提取里面的相似信息,并將這些相似信息應用在搜索引擎[1]、問答系統[2]、文本摘要[3]等方面上。

文本相似度通常指的是對比兩個文本的語義相似程度來判斷它們表達的意思是否一致。例如,句子1“手機看漫畫用什么軟件”和句子2“用手機什么軟件能看漫畫”都表達了看漫畫需要使用什么樣的手機軟件的意思,是相似文本,而句子3“求《黑虎》這部電影”和句子4“求筷子兄弟微電影《父親》”,雖然都表達的是尋求一部電影,但是這里面表達的是尋求不同的電影,不是相似文本。文本相似度的計算方法有很多,傳統的文本相似度計算方法有余弦值計算[4](cosine similarity)、N-Gram[5]、VSM(vector space model)[6]和Jaccard相似度[7]等計算方法。這些傳統的文本相似度計算方法存在著人工耗費量大、模型對語義相似處理能力差和泛化能力差等缺點。后來,隨著深度學習的快速發展,國內外很多研究學者將深度學習的方法運用到文本相似度計算中,卷積神經網絡(convolutional neural networks,CNN)[8]可以提取文本的局部特征信息,Shen等[9]在DSSM[10]模型中引進了CNN網絡,提出了CNN-DSSM文本相似模型。長短時記憶神經網絡LSTM(long short-term memory networks)[11]可以提取長序列文本的特征信息,得到文本的全局特征信息,解決了CNN不能提取的全局特征的缺陷,Palangi等[12]基于LSTM網絡提出了Siamese-LSTM文本相似模型,Wang等[13]在BiLSTM[14]網絡的基礎上提出了BiMPM文本相似模型GRU(gated recurrent unit)[15]比LSTM訓練參數更少,同時還保持效果不變,受到很多研究學者的喜愛,趙琪等[16]基于BiGRU和膠囊網絡(capsule)提出了capsule-BiGRU的文本相似度模型,方炯焜等[17]結合GRU和Glove[18]提出了一種文本分類模型。注意力機制可以提取相似文本的某些重要特征,提高模型對相似文本的判別能力,Yin等[19]綜合了CNN和注意力Attention[20]機制提出了ABCNN文本相似模型,Chen等[21]綜合BiLSTM和注意力機制提出了ESIM文本相似模型。

傳統的文本相似方法采用的是one-hot、TF-IDF等詞向量方法,這些詞向量存在著不能考慮文本中不同詞之間的聯系,同時還有詞向量特征維度爆炸等缺陷,后來,隨著深度學習的預訓練詞向量得到快速發展,詞向量的維度可以被處理成從高維降到低維,避免了高維爆炸,同時也保留了更多的語義信息。2013年Mikolov等[22]提出了word2vec詞向量表示模型,實現了詞向量由高維到低維的轉換,Pennington等[18]通過語料庫構建單詞的共現矩陣提出了Glove模型,上面這些模型的詞向量都為靜態詞向量,詞向量始終是固定的,無法解決一詞多義問題。后來Peters等[23]提出了ELMO模型,Radford等[24]提出了GPT模型,Devlin等[25]提出了BERT模型,這些模型生成的詞向量是動態的詞向量,而且效果越來越好,很好地解決了一詞多義問題。

本文改進了Siamese-LSTM文本相似模型,在Siamese-LSTM模型引入注意力機制和BERT模型,提出了一種混合文本匹配模型(BSLA模型),BERT模型作為BSLA模型的最低端,用來對輸入的文本詞向量編碼處理,從而加強文本中不同詞之間的交互能力,注意力機制位于整個模型的輸出端,對語義相關的詞向量特征分配更高的分值,從而對相似文本提高識別能力。

1 相關理論

1.1 自注意力機制

注意力機制是一種查詢機制,即通過查詢query搜索鍵值對<key,value>,其計算公式為:

為了防止在計算過程中向量維度過高致使點乘結果過大而形成的梯度過小問題,在自注意力機制中增加了縮放因子其計算公式為:

其中Q、K、V為上述query、key、value向量對應構成的矩陣,key和value的維度分別用dk和dv表示。

1.2 多頭注意力

圖1所示為多頭注意力(multi-headed attention)框架圖[26],首先對三個矩陣Q、K、V進行線性變換,然后送入到縮放點積注意力中進行h次運算,最后將運算結果做拼接操作和線性變換操作得到最終結果,計算公式表示如下:

圖1 多頭注意力框架Fig.1 Multi-head attention architecture

1.3 LSTM網絡

長短期記憶神經網絡LSTM[11]是循環神經網絡(recurrent neural network,RNN)的一種變體,能夠提取長間隔的文本序列特征,還可以避免RNN網絡出現的梯度消失問題。LSTM單元結構如圖2所示,LSTM由遺忘門ft、輸入門it和輸出門ot三個門組成,通過門結構控制信息的刪除與添加。其中ft決定從上一時刻的細胞狀態ct-1丟棄哪些信息,it用來更新細胞狀態ct,ot用來控制信息的輸出,一個LSTM單元的計算過程表示如下:

圖2 LSTM單元內部結構示意圖Fig.2 Schematic diagram of internal structure of LSTM unit

其中,σ表示sigmoid函數,xt表示t時刻的輸入,c?t表示候選更新狀態,ft、it、ct、ot分別表示遺忘門、輸入門、記憶門、輸出門,Wf、Wi、Wc、Wo、Uf、Ui、Uc、Uo分別表示不同門對應的權重,bf、bi、bc、bo分別表示不同門對應的偏置,⊙表示Haddamard積,tanh指激活函數,ht-1、ht分別表示LSTM單元t-1的隱藏層狀態和t時刻的隱藏層狀態。

2 BSLA模型

BSLA模型如圖3所示,該模型主要有輸入層、BERT編碼層、BiLSTM層、Attention層和輸出層組成。

圖3 BSLA模型圖Fig.3 BSLA model figure

2.1 輸入層

輸入層有兩個句子p和q,根據BERT模型輸入的詞向量特點,采用WordPiece進行分詞,將每個句子的每個詞處理成詞向量(token embeddings)、段向量(segment embeddings)和位置向量(position embeddings)三個向量,并將這三個向量相加輸入到Bert的編碼層,如圖4所示,句子p“手機看漫畫用什么軟件”被切分成了若干個字,變成了“手”“機”“看”“漫”“畫”“用”“什”“么”“軟”“件”,每個字都有其對應位置信息、令牌token信息和所處哪個句子的信息,因為輸入到BERT模型中只有一個句子,所以對于句子p或句子q中的每一個字所處的某個句子信息是一樣的。BERT編碼層輸入的句子序列長度為25,其中[CLS]和[SEP]分隔符占用的2個長度,對輸入到BERT編碼層的句子長度超過23切分掉保留前面的字,句子長度不足的話后面用<padding>進行補充。其中[CLS]表示分類輸出的特殊符號,[SEP]表示分隔非連續token序列的特殊符號,標志著一個句子的結束。輸入層的計算公式如下:

圖4 輸入層表示Fig.4 Input layer representation

2.2 BERT編碼層

BERT模型如圖5所示,它的核心模塊是由Transformer組成的。Transformer采用了多頭注意力機制,具有很好的并行性,對句子中的所有詞的信息編碼都不用考慮方向和距離,可以學習到不同語義場景下的信息。BERT采用雙向Transformer編碼器作為特征提取器,來提取特征信息。輸入到BERT模型每個字向量,經過其編碼運算后,每個字向量都包含了豐富的語義信息,與其他字向量之間雙向交互,字與字之間關聯度更高。如“漫”字經過BERT編碼層運算輸出后,與句子“手機看漫畫用什么軟件”中的其他字具有動態語義關聯關系。BERT模型采用的是12層的Transformer編碼器,輸出的隱藏層維度為768,編碼層的計算公式如下:

圖5 BERT模型圖Fig.5 BERT model figure

Trm是一個轉換塊,包括自注意力層,全連接層,和輸出層,hi、hi-1分別表示當前層和上一層的輸出結果。

2.3 BiLSTM層

BiLSTM采用雙向的LSTM提取上下文信息。句子p和句子q經過BERT編碼層輸出的信息分別為P={p1,p2,…,pm}和Q={q1,q2,…,qn},這些信息分別輸入到BiLSTM層,其中矩陣P和矩陣Q對應的維度都為batch_size×seq_len×hidden_size,本文中數值大小為64×25×768,BiLSTM網絡中LSTM隱藏層維度為768。

BiLSTM對P和Q的編碼后,輸出的每個字向量包含了上下文全局特征信息,單向LSTM輸出的字向量維度大小為batch_size×seq_len×hidden_size,本文中的數值大小為64×25×768,雙向LSTM輸出的字向量維度數值大小為64×25×1 536。

2.4 Attention層

在BiLSTM層后面引入注意力機制,目的是對BiLSTM層輸出的詞向量分配不同的權值,通過自動加權變換后生成具有注意力概率分布的特征向量,以此來突出文本中的關鍵信息。這里采用注意力機制來使得對相似結果影響高的詞向量占比更高,為了方便說明,這里采用一個詞向量來解釋一下注意力機制的原理,例如句子p“手機看漫畫用什么軟件”中在某時刻經過注意力機制運算后輸出的詞向量中,“漫畫”向量對文本相似影響權重高于其他詞向量,所以輸出的詞向量中“漫畫”向量占的權重更大,在經過本文模型不斷訓練后,相對應的另一個句子q“用手機什么軟件能看漫畫”在該時刻輸出的詞向量“漫畫”對文本相似的影響也會高于其他詞向量,在輸出的詞向量中占的權重更大,所以句子p和句子q經過注意力機制在相同時刻輸出每個詞向量對相似結果的影響存在一定的相互關聯。

注意力的計算公式表示如下:

ht表示BiLSTM在t時刻輸出的特征向量,wt表示ht的權重矩陣,αt表示通過softmax函數得到的權重,o表示經過加權運算后的特征向量。

2.5 輸出層

經過注意力機制層對BiLSTM層輸出詞向量加權運算后,句子p和q分別得到了不同的特征向量,分別為和oq的維度大小為batch_size×seq_len×2×hidden_size,本文中大小數值為64×25×1 536,采用曼哈頓距離(Manhadun)計算句子p和q的相似度,損失函數為:

計算完相似度之后,得到相似度矩陣,維度為batch_size×1×2×hidden_size,本文中數值大小為64×1×1 536,將相似度矩陣維度進行拉平操作,保留batch_size和2×hidden_size兩個維度,然后輸入到全連接層,最后通過sigmoid函數進行二分類判斷兩個文本是否相似。

3 實驗設計與分析

3.1 數據集的采集與處理

本文采用的數據集為中文數據集LCQMC語義匹配數據集和英文數據集Quora Question Pairs。數據集由兩個問題和一個標簽組成,標簽為1則表示兩個問題語義相同,為0則表示語義不同。LCQMC語義匹配數據集有238 766條訓練集,8 802條驗證集,12 500條測試集組成。Quora Question Pairs數據集有404 000條句子對組成,本文將其劃分成9∶1∶1的訓練集、測試集和驗證集,其中驗證集和測試集中標簽為0和標簽為1的數據各占一半。本文所使用的數據集的部分樣本如表1所示。

表1 部分數據集樣本示例Table 1 Examples of partial dataset samples

3.2 實驗環境與參數設置

3.2.1 實驗環境

本文實驗所使用的深度學習框架是pytorch,所有模型的訓練、驗證和測試都是基于pytorch框架上完成的,具體的實驗環境如表2所示。

表2 實驗環境配置Table 2 Experimental environment configuration

3.2.2 實驗參數設置

本文實驗中使用BERT作為編碼層構建的模型,其hidden_size為768,其他參數由該模型組建之前的單個模型參數保持一致,其他模型中文數據集使用搜狗新聞的Word+Character預訓練詞向量,英文數據集采用谷歌的word2vec預訓練模型,維度為300d。本文模型及一些對比模型的實驗參數如表3所示,表格中模型相同的參數合并在一起,在表格中居中表示,沒有某個參數的用“—”表示,每個句子的最大長度為25。

表3 主要模型的重要實驗參數Table 3 Important experimental parameters of main model

3.3 評價指標

本文兩個句子語義相同為1,語義不同為0,是一個二分類問題,為了公平地評價各種模型的性能,以準確率(accuracy)、精準率(precision)、召回率(recall)和F1值來評價模型,它們的定義如下所示:

其中,TP表示在正類樣本里預測也為正類的樣本數量,FP表示在負類樣本里預測為正類的樣本數量,FN表示在正類樣本里預測為負類的樣本數量,TN表示在負類樣本里預測也為負類的樣本數量。

3.4 對比模型

為了驗證本文混合模型的有效性,進行了如下的對比實驗:(1)將本文模型與當前流行的文本匹配模型比較。(2)探究注意力機制對本文模型的影響。(3)探究BERT模型作為編碼層對本文模型的影響。(4)對比了不同模型花費的時間成本。

比較的模型如下所示:

(1)ABCNN[20]:基于CNN和attention機制構建的文本匹配模型。

(2)Siamese-LSTM[12]:基于BiLSTM的文本匹配模型。

(3)Siamese-LSTM+Attention(SLA):在Siamese-LSTM模型中引入Attention機制的文本匹配模型。

(4)ESIM[21]:基于BiLSTM和treeLSTM的混合神經推理模型。

(5)BIMPM[13]:基于BiLSTM的雙邊多角度匹配模型。

(6)BERT+Siamese-LSTM(BSL):BERT模型為編碼層,其隱藏層的輸出結果輸入到Siamese-LSTM模型中的混合文本匹配模型。

(7)capsule-BiGRU[16]:結合capsule和BiGRU網絡,同時引入互注意力機制的文本匹配模型。

3.5 實驗結果及分析

本文選取ABCNN、Siamese-LSTM、SLA、ESIM、BIMPM、BSL和BSLA等模型在兩個數據集上做了訓練、驗證和測試,各個模型在兩個數據集訓練的loss值變化圖和accuracy值變化圖分別如圖6~圖9所示,驗證的accuracy值變化圖如圖10和圖11所示,測試結果如表4所示,其中capsule-BiGRU的測試結果來自文獻[16]。

表4 不同模型的測試結果Table 4 Test results of different models單位:%

圖6 LCQMC數據集上訓練的loss值變化圖Fig.6 Variation diagram of loss values trained on LCQMC dataset

圖9 Quora Question Pairs數據集上訓練的accuracy值變化圖Fig.9 Variation diagram of accuracy values trained on Quora Question Pairs dataset

圖10 LCQMC數據集上驗證的accuracy值變化圖Fig.10 Variation diagram of accuracy values validated on LCQMC dataset

圖11 Quora Question Pairs數據集上驗證的accuracy值變化圖Fig.11 Variation diagram of accuracy values validated on Quora Question Pairs dataset

3.5.1 與當前流行的文本匹配模型對比

圖7 Quora Question Pairs數據集上訓練的loss值變化圖Fig.7 Variation diagram of loss values trained on Quora Question Pairs dataset

圖8 LCQMC數據集上訓練的accuracy值變化圖Fig.8 Variation diagram of accuracy values trained on LCQMC dataset

從圖6~圖11中可以看出,雖然由于本文使用的中英文數據集存在差異,導致BSLA模型在訓練和驗證過程中數值變化存在不同,但是無論是在中文LCQMC數據集對應的訓練和驗證圖,還是在英文Quora Question Pairs數據集對應的訓練和驗證圖,BSLA模型相對當前流行的ABCNN、Siamese-LSTM、ESIM和BIMPM等網絡模型進行對比,在訓練過程中loss初始值更小,收斂速度更快,變化浮動更小,同樣在訓練和驗證過程中的accuracy值初始值更大,收斂速度更快,值變化浮動更小。從表4的測試結果中可以看出,在LCQMC數據集上,BSLA模型相對當前流行的ABCNN、Siamese-LSTM、ESIM和BIMPM中表現最好的BIMPM模型相比,BSLA模型在precision、recall和F1值上分別高出BIMPM模型1.32、1.45和1.39個百分點,同樣在Quora Question Pairs數據集上也高出了BIMPM模型2.40、2.42和2.41個百分點。與capsule-BiGRU模型的測試結果相比,雖然BSLA模型在recall值低于capsule-BiGRU模型2.03個百分點,但是precision和F1值分別高出2.52和0.31個百分點,BSLA模型與capsule-BiGRU模型在recall值上存在差異的原因可能是文獻[16]中采用的Quora Question Pairs數據集的測試集標簽0和標簽1的數量不一致的原因。綜合上面的對比結果,可以看出本文BSLA模型在precision、recall和F1值基本上都優于當前流行的文本匹配模型。

3.5.2 注意力機制對本文模型的影響

在表4的測試結果中,本文從Siamese-LSTM模型中引入注意力機制形成的SLA模型測試結果中看出,SLA模型在LCQMC和Quora Question Pairs數據集上precision、recall和F1值都高于沒有加入注意力機制的Siamese-LSTM模型,所以本文考慮在本文模型中引入注意力機制。本文模型在加入注意力機制后,與沒有引入注意力機制的BSL模型相比,BSLA模型在訓練和驗證過程loss、accuracy值收斂速度更快,BSLA模型相對于BSL模型測試結果中,在LCQMC數據集上precision、recall和F1值分別高出0.31、0.27和0.29個百分點,在Quora Question Pairs數據集上precision、recall和F1值分別高出0.25、0.26和0.26個百分點。綜上,可以看出本文模型引入注意力機制后,本文模型可以關注對相似識別做出貢獻較大的詞向量,可以在一定程度上增加對相似文本的識別能力。

3.5.3 BERT模型對本文模型的影響

從圖6~圖11中可以看出本文BSLA模型在引入BERT動態詞向量作為本文模型的編碼層后,訓練過程中模型的loss值明顯降低,訓練過程和測試過程的accuracy值都明顯升高了不少。同樣,從表4的測試結果中可以看出,BSLA模型相對于沒有引入BERT模型的SLA模型,在LCQMC數據集上precision、recall和F1值分別高出1.59、1.46和1.53個百分點,在Quora Question Pairs數據集上precision、recall和F1值分別高出3.78、7.78和3.78個百分點。綜上,可以看出BERT模型作為BSLA模型的編碼層,對輸入的上下文中詞向量編碼運算后再輸入到后面的BiLSTM-Attention后進行相似度計算效果更好。

3.5.4 不同模型花費的時間成本

不同模型在20個epoch總的訓練時間結果如表5,變化圖如圖12所示,從表5和圖12中可以看出,本文模型在引入注意力機制后,總的模型訓練時間有所增加,在LCQMC和Quora Question Pairs數據集上分別增加了235 s和1 198 s,但是在引入BERT模型作為本文模型的編碼層后,本文BSLA模型總的訓練時間呈大幅度增長,總的訓練時間在LCQMC和Quora Question Pairs數據集上分別增加了32 473 s和95 397 s。所以,總的來說本文BSLA模型存在訓練時間過長的缺陷。

表5 不同模型總的訓練時間Table 5 Total training time of different models單位:s

圖12 不同模型總的訓練時間Fig.12 Total training time of different models

4 結束語

針對Siamese-LSTM模型對相似文本特征提取能力差,準確率偏低,本文對其進行了改進,加入了注意力機制和BERT編碼模型,有效地增強了模型的性能。本文通過將不同模型在LCQMC數據集和Quora Question Pairs數據集進行了訓練、驗證和測試,證明了Siamese-LSTM和BSL模型在引入注意力機制后提升了模型的效果,同樣也證明了SLA模型引入BERT模型后有效地提升了模型的效果,最終證明融合了注意力機制和BERT編碼模型的本文模型在精確率、召回率和F1值三個評價指標上表現出效果基本上都是最佳的,但是針對本文模型的訓練時間來說,存在著訓練耗費時間長的缺陷。

猜你喜歡
機制文本模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
在808DA上文本顯示的改善
基于doc2vec和TF-IDF的相似文本識別
電子制作(2018年18期)2018-11-14 01:48:06
自制力是一種很好的篩選機制
文苑(2018年21期)2018-11-09 01:23:06
3D打印中的模型分割與打包
文本之中·文本之外·文本之上——童話故事《坐井觀天》的教學隱喻
破除舊機制要分步推進
中國衛生(2015年9期)2015-11-10 03:11:12
注重機制的相互配合
中國衛生(2014年3期)2014-11-12 13:18:12
主站蜘蛛池模板: 国产微拍一区| 国产美女免费网站| 久久大香香蕉国产免费网站| 四虎成人精品在永久免费| 91精品国产一区| 99在线视频精品| 波多野结衣一二三| 免费在线一区| 亚洲色图欧美在线| 大陆国产精品视频| 亚洲一欧洲中文字幕在线| 白浆免费视频国产精品视频| 欧美不卡在线视频| 欧美午夜在线观看| 国产91丝袜在线播放动漫| 色综合五月| 亚洲第一成年网| 一区二区三区四区日韩| 88av在线| 久久中文无码精品| 久久不卡国产精品无码| 婷婷激情亚洲| AV天堂资源福利在线观看| av大片在线无码免费| 国产91小视频| 九色视频线上播放| 亚洲国产清纯| 天天综合网站| 看国产毛片| 久久久久无码精品| 成人精品午夜福利在线播放| 91无码网站| 亚洲v日韩v欧美在线观看| 2021国产精品自产拍在线| 亚洲一区精品视频在线| 国产伦精品一区二区三区视频优播| 日韩最新中文字幕| 免费人成在线观看视频色| 久久伊人久久亚洲综合| 尤物亚洲最大AV无码网站| 在线国产综合一区二区三区| 成人福利在线看| 114级毛片免费观看| 国产制服丝袜91在线| 99热这里都是国产精品| 亚洲狠狠婷婷综合久久久久| 日本人妻一区二区三区不卡影院 | a天堂视频在线| 四虎精品免费久久| 亚洲精品无码专区在线观看| 久久久久国产精品嫩草影院| 亚洲区视频在线观看| 久久久精品国产亚洲AV日韩| 亚洲婷婷丁香| 欧美在线精品一区二区三区| 亚洲AⅤ波多系列中文字幕| 啦啦啦网站在线观看a毛片| 午夜毛片免费看| 国产熟睡乱子伦视频网站| 亚洲国产精品人久久电影| 狠狠综合久久久久综| 国内精品免费| 亚洲欧美另类久久久精品播放的| 欧美成一级| 国产区网址| 国产男女XX00免费观看| 婷婷中文在线| 在线国产毛片| 亚洲欧美在线精品一区二区| 婷婷色中文网| 亚洲欧洲美色一区二区三区| 午夜精品一区二区蜜桃| 在线观看视频一区二区| 亚洲有无码中文网| 欧美19综合中文字幕| 伊人五月丁香综合AⅤ| 久久不卡精品| 国产麻豆精品在线观看| 国产爽妇精品| 久久青草免费91观看| 色综合五月婷婷| 欧美伊人色综合久久天天|