田喬鑫,孔韋韋,2,滕金保,王照乾
(1.西安郵電大學(xué) 計(jì)算機(jī)學(xué)院,西安 710121;2.廣西可信軟件重點(diǎn)實(shí)驗(yàn)室,廣西 桂林 541004)
隨著互聯(lián)網(wǎng)和社交媒體的快速發(fā)展,越來越多的用戶參與到內(nèi)容生產(chǎn)和信息發(fā)布的流程中,逐漸從信息獲取者轉(zhuǎn)變?yōu)樾畔?chuàng)造者。用戶在社交媒體上發(fā)表個(gè)人主觀性言論,針對(duì)這些主觀性言論進(jìn)行情感分析可以獲得極具價(jià)值的信息,然而通過人工方式對(duì)其進(jìn)行分析需要消耗大量人力與財(cái)力,因此文本情感分析技術(shù)成為自然語言處理領(lǐng)域的熱門研究方向。
文本情感分析是指利用自然語言處理和文本挖掘技術(shù),對(duì)帶有情感色彩的主觀性文本進(jìn)行分析、處理和抽取的過程[1]。傳統(tǒng)的文本情感分析方法主要包括基于情感詞典[2]和基于有監(jiān)督機(jī)器學(xué)習(xí)[3]的方法,這類方法在處理小數(shù)據(jù)文本情感分析任務(wù)時(shí)有著不錯(cuò)的表現(xiàn),同時(shí)也有較強(qiáng)的可解釋性,但傳統(tǒng)方法主要存在文本表示稀疏性且泛化能力較弱的問題。HINTON[4]提出的分布式表示概念以及MIKOLOV 等[5]提出的Word2vec 詞向量訓(xùn)練工具解決了詞向量的表示稀疏性問題,使得文本的向量表示可以包含一定的語義信息。KIM[6]將卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)用于句子分類任務(wù)中,采用3 種不同大小的卷積核來采集文本的N-grams 特征,再進(jìn)行特征融合,取得了很好的分類效果,但是循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)不能采集到文本的上下文信息。XIAO 等[7]使用雙向長短期 記憶(Long Short-Term Memory,LSTM)網(wǎng)絡(luò)處理文本情感分析任務(wù),通過兩個(gè)方向神經(jīng)元的循環(huán)計(jì)算提取文本的上下文信息。LAI 等[8]為了進(jìn)一步提升分類效果,將LSTM 與CNN 相結(jié)合,提出一種循環(huán)卷積神經(jīng)網(wǎng)絡(luò)(Recurrent Convolutional Neural Network,RCNN)模型,先使用雙向LSTM 提取文本的上下文信息,再通過最大池化層提取主要特征進(jìn)行文本分類。ABID等[9]構(gòu)建CNN 與RNN 聯(lián)合體系結(jié)構(gòu),提高了推特情感語料庫的分析效果。
基于神經(jīng)網(wǎng)絡(luò)的文本情感分析方法相比傳統(tǒng)方法獲得了更好的文本表示以及更強(qiáng)的特征提取能力,但卻沒有考慮關(guān)鍵信息對(duì)文本情感傾向的影響。BAHDANAU 等[10]將注意力機(jī)制應(yīng)用到自然語言處理領(lǐng)域,通過注意力機(jī)制識(shí)別出文本中的關(guān)鍵信息,有效提高了神經(jīng)翻譯模型的效果。YANG 等[11]提出一種分層注意力機(jī)制,在詞語和句子兩個(gè)層次分別使用注意力機(jī)制,同時(shí)考慮文本中關(guān)鍵詞和關(guān)鍵句的重要性,適用于長文本的分類和處理。VASWANI等[12]舍棄了傳統(tǒng)的注意力機(jī)制依賴于神經(jīng)網(wǎng)絡(luò)的固有模式,提出了基于多頭注意力的Transformer 模型。為了取得更好的文本情感分析效果,研究人員開始將注意力機(jī)制融入RNN 與CNN 的混合模型。趙亞南等[13]提出融合多頭自注意力與CNN 的文本情感分析模型,在金融新聞文本上進(jìn)行情感分析且取得了不錯(cuò)的效果。袁和金等[14]提出的文本情感分析模型先用多通道的卷積神經(jīng)網(wǎng)絡(luò)提取文本特征信息,再將特征信息送入雙向門控循環(huán)單元(Bidirectional Gated Recurrent Unit,BiGRU)并結(jié)合注意力機(jī)制獲得上下文情感特征,同時(shí)引入Maxout 神經(jīng)元避免訓(xùn)練過程中的梯度彌散問題。郭寶震等[15]提出的句子分類模型先對(duì)詞向量使用注意力機(jī)制,再使用雙路卷積神經(jīng)網(wǎng)絡(luò)對(duì)句子進(jìn)行分類。WANG 等[16]針對(duì)在線評(píng)論中特定方面的情感極性進(jìn)行更細(xì)粒度的情感分析,提出一種關(guān)系圖注意力網(wǎng)絡(luò),更好地建立了方面詞和觀點(diǎn)詞之間的聯(lián)系。
基于分布式詞向量和深度學(xué)習(xí)的文本情感分析方法要優(yōu)于傳統(tǒng)基于統(tǒng)計(jì)學(xué)習(xí)的文本情感分析方法,基于神經(jīng)網(wǎng)絡(luò)和融入注意力機(jī)制的文本情感分析模型由于具有更強(qiáng)的特征提取能力和對(duì)關(guān)鍵信息的加強(qiáng)處理,取得了更好的情感分析結(jié)果。本文在以上研究的基礎(chǔ)上,提出一種基于并行混合網(wǎng)絡(luò)與雙路注意力機(jī)制的文本情感分析模型GCDA。針對(duì)不同網(wǎng)絡(luò)的特點(diǎn)采用兩種不同的詞向量作為并行混合網(wǎng)絡(luò)的輸入,獲得更豐富的文本信息。利用兩種神經(jīng)網(wǎng)絡(luò)并行混合分別提取文本的全局特征和局部特征。使用雙路注意力機(jī)制加強(qiáng)處理兩種特征中的關(guān)鍵信息,提升模型的分類效果。
GCDA 文本情感分析模型結(jié)構(gòu)如圖1 所示,包括如下組成部分:
圖1 GCDA 模型結(jié)構(gòu)Fig.1 GCDA model structure
1)詞嵌入層:將文本通過GloVe 和Word2vec 嵌入為兩種不同的詞向量。
2)特征提取層:將GloVe 詞向量輸入到BiGRU中提取包含上下文語義信息的全局特征,對(duì)Word2vec 詞向量采用CNN 提取局部特征。
3)雙路注意力層:對(duì)上一層輸出的全局特征和局部特征使用雙路注意力機(jī)制加強(qiáng)其中的關(guān)鍵信息。
4)輸出層:對(duì)雙路注意力層輸出的兩種特征信息進(jìn)行特征融合,并使用softmax 分類器進(jìn)行分類。
GCDA 模型使用BiGRU 和CNN 神經(jīng)網(wǎng)絡(luò)。CNN 通過卷積操作提取卷積核范圍內(nèi)詞語之間的局部特征,且受卷積核大小限制一般適合處理短文本信息。BiGRU 通過神經(jīng)元之間的循環(huán)依賴可以提取到文本中詞語之間的關(guān)聯(lián)信息,即使文本的長度較長也不會(huì)遺漏,同時(shí)采用雙向結(jié)構(gòu)還可以采集到文本的上下文信息。但由于門控機(jī)制對(duì)信息的過濾,因此不會(huì)提取到較強(qiáng)的局部性特征,而是提取整個(gè)文本的全局性特征。GCDA 模型將BiGRU 和CNN 并行混合構(gòu)成特征提取層,結(jié)合兩個(gè)神經(jīng)網(wǎng)絡(luò)的特點(diǎn)進(jìn)行特征提取上的互補(bǔ),使得模型適用于長文本和短文本。同時(shí)由于文本情感分析本質(zhì)上也是分類任務(wù),因此該模型也可以應(yīng)用于文本分類、意圖識(shí)別、命名實(shí)體識(shí)別等任務(wù)。針對(duì)具體的任務(wù)使用特定數(shù)據(jù)集進(jìn)行訓(xùn)練,并根據(jù)具體分類任務(wù)的類別數(shù)目對(duì)輸出層參數(shù)進(jìn)行微調(diào),可以將模型推廣應(yīng)用至其他下游分類任務(wù)。
詞嵌入層將文本信息轉(zhuǎn)換為向量作為模型的輸入數(shù)據(jù)。根據(jù)不同網(wǎng)絡(luò)的特點(diǎn),采用Word2vec[5]和GloVe[17]兩種詞向量分別作為兩個(gè)神經(jīng)網(wǎng)絡(luò)的輸入。Word2vec 采用局部上下文窗口訓(xùn)練詞向量,與CNN采用卷積核窗口提取特征類似,都只能關(guān)注到窗口范圍之內(nèi)的上下文信息,故作為CNN 的輸入來提取更強(qiáng)的局部特征。GloVe 利用語料庫的全局統(tǒng)計(jì)信息構(gòu)建詞的共現(xiàn)矩陣,再基于共現(xiàn)矩陣訓(xùn)練得到包含全局信息的詞向量,將GloVe 訓(xùn)練得到的詞向量作為BiGRU 的輸入用來提取全局特征和上下文信息。
由于神經(jīng)網(wǎng)絡(luò)需要接收固定長度的輸入,因此在詞嵌入前需要先對(duì)不定長度的文本進(jìn)行預(yù)處理。假設(shè)每個(gè)文本S固定長度為n,則每個(gè)文本可以表示為S={w1,w2,…,wn},長度超出n的部分信息舍棄,不足的部分采用
1.2.1 全局特征提取
由于文本信息的有序性特點(diǎn),因此RNN 非常適合用來處理文本信息。RNN 每一個(gè)神經(jīng)元的輸出由當(dāng)前時(shí)刻的輸入和前一時(shí)刻的記憶共同決定,所以可以捕獲文本之間的長期依賴關(guān)系,通常用來提取全局特征,但是傳統(tǒng)的RNN 由于梯度爆炸和梯度消失問題導(dǎo)致在實(shí)際應(yīng)用中難以訓(xùn)練。HOCHREITER 等[18]提出的LSTM 網(wǎng)絡(luò)通過 在RNN神經(jīng)元內(nèi)部設(shè)置輸入門、遺忘門和輸出門3 個(gè)門控單元,解決了RNN 的梯度消失問題,使得LSTM 相比RNN 更容易訓(xùn)練。CHO 等[19]提出的門控循環(huán)單元(Gated Recurrent Unit,GRU)只設(shè)置了重置門和更新門,減少了網(wǎng)絡(luò)中的相關(guān)參數(shù),在保留LSTM 優(yōu)點(diǎn)的同時(shí)提高了訓(xùn)練速度。因此本文采用雙向GRU 網(wǎng)絡(luò)來提取文本的全局特征和上下文信息,GRU 內(nèi)部結(jié)構(gòu)如圖2 所示。
圖2 GRU 內(nèi)部結(jié)構(gòu)Fig.2 GRU internal structure
在圖2 中,xt表示當(dāng)前時(shí)刻的輸入,ht?1表示前一時(shí)刻的記憶信息,br、bz、b為偏置項(xiàng),rt表示重置門,zt表示更新門,Wr與Wz分別表示重置門與更新門中的權(quán)重參數(shù),ht表示當(dāng)前時(shí)刻的輸出,具體計(jì)算過程如式(1)~式(4)所示:
通過嵌入層GloVe 訓(xùn)練得到的文本向量矩陣A={x1,x2,…,xn},以詞向量xi為例作為雙向GRU 的輸入,經(jīng)過前向和后向GRU 編碼得到的隱藏層表示分別包含了上文信息和下文信息,則詞向量xi經(jīng)過雙向GRU 提取到的包含上下文信息的全局特征表示如下:
整個(gè)文本矩陣A經(jīng)過雙向GRU 提取到包含上下文語義信息的全局特征表示如下:
使用雙向GRU 提取文本信息全局特征的過程如圖3 所示,其中dim 表示文本矩陣維度。
圖3 BiGRU 提取全局特征的過程Fig.3 Process of BiGRU extracting global features
1.2.2 局部特征提取
CNN 具有較強(qiáng)的特征提取能力,由于卷積核窗口大小有限,一次只能提取到局部范圍內(nèi)的信息,因此采用CNN 來提取文本的局部特征。本文采用3 個(gè)不同大小的卷積核來分別提取文本不同的N-grams局部特征。將經(jīng)過Word2vec 訓(xùn)練得到的文本向量表示矩陣B={y1,y2,…,yn}作為CNN 的輸入,使用卷積核在文本矩陣中自上向下滑動(dòng)提取局部特征。對(duì)于窗口大小為r的卷積核通過第j次卷積操作提取到的局部特征cj表示如下:
其中:f為ReLU 非線性激活函數(shù);w代表卷積核中的參 數(shù);b為偏置 項(xiàng);yj:j+r?1表示文 本矩陣的第j行到第j+r?1 行中卷積核一次共讀取r行的詞向量。卷積核在文本矩陣中自上向下滑動(dòng)共進(jìn)行n?r+1 次卷積操作,所提取到的局部特征矩陣C表示如下:
已有方法在卷積層提取到特征之后常常采用池化層來進(jìn)一步提取特征,但池化操作會(huì)造成一定的信息丟失,且會(huì)破壞文本特征的時(shí)序性特點(diǎn),所以本文方法在卷積層之后棄用池化層使用注意力層,該方法可以減少信息的損失并對(duì)文本中關(guān)鍵信息進(jìn)行加強(qiáng)。使用CNN 對(duì)文本矩陣B進(jìn)行局部特征提取的過程如圖4 所示。
圖4 CNN 提取局部特征的過程Fig.4 Process of CNN extracting local features
在情感分析任務(wù)中,文本中常常包含表達(dá)強(qiáng)烈情感意向的情感詞,這些詞語會(huì)對(duì)整個(gè)文本的情感傾向產(chǎn)生至關(guān)重要的影響,使用注意力機(jī)制來捕獲這些關(guān)鍵情感詞并分配較大的概率權(quán)重對(duì)提高情感分析準(zhǔn)確率有著極大的幫助。
對(duì)特征提取層提取到的全局特征和局部特征分別使用注意力機(jī)制加強(qiáng)其中的關(guān)鍵信息,先按照重要程度的不同對(duì)全局特征hi和局部特征cj分配不同的注意力權(quán)重,如式(9)、式(10)所示:
其中:wh和wc表示權(quán)重參數(shù)矩陣;bh和bc為偏置項(xiàng);tanh 為非線性激活函數(shù);vi和vj為經(jīng)過激活函數(shù)激活后文本的權(quán)重向量。
在對(duì)注意力權(quán)重進(jìn)行歸一化處理后,得到關(guān)于全局特征hi和局部特征cj的注意力分?jǐn)?shù)ai和aj,如式(11)、式(12)所示:
按照每個(gè)詞不同的重要程度,引入經(jīng)過歸一化處理得到的注意力分?jǐn)?shù)ai和aj,對(duì)提取到的每個(gè)特征hi和cj計(jì)算加權(quán)和,得到經(jīng)過注意力加強(qiáng)關(guān)鍵信息的整個(gè)文本的全局特征zh和局部特征zc,如式(13)、式(14)所示:
本層使用雙路注意力機(jī)制對(duì)BiGRU 和CNN 并行提取到的特征分別做加強(qiáng)處理,為關(guān)鍵信息分配更高的注意力權(quán)重,從而提高模型的分類效果。
輸出層由全連接神經(jīng)網(wǎng)絡(luò)和softmax 激活函數(shù)構(gòu)成。分類前首先對(duì)注意力層得到的兩種特征信息進(jìn)行特征融合,得到文本最終的特征表示t,如式(15)所示:
然后將融合得到的特征輸入到全連接神經(jīng)網(wǎng)絡(luò)中,使用softmax 激活函數(shù)計(jì)算得到文本的情感概率p,最終進(jìn)行情感分類處理,如式(16)所示:
其中:w為權(quán)重向量;b為偏置項(xiàng)。
最后根據(jù)情感概率值p確定整個(gè)文本的情感類別。
實(shí)驗(yàn)在Windows10 系統(tǒng)下進(jìn)行,CPU 為Intel?i5-6300HQ 2.3 GHz,編程語言采用Python 3.7.9,深度學(xué)習(xí)框架采用PyTorch 1.0.1。
數(shù)據(jù)集采用情感分類公開數(shù)據(jù)集IMDb[20]和SST-2。IMDb 數(shù)據(jù)集是從IMDb 電影評(píng)論網(wǎng)站收集的50 000 條電影評(píng)論,情感極性分為積極和消極兩類,每類各占總評(píng)論數(shù)的一半,該數(shù)據(jù)集中訓(xùn)練集和測(cè)試集各包含25 000 條影評(píng)數(shù)據(jù)。SST-2 是斯坦福標(biāo)準(zhǔn)情感分析數(shù)據(jù)集的二分類版本,去除了中立情感的數(shù)據(jù)部分。兩個(gè)數(shù)據(jù)集的具體信息如表1所示。
表1 數(shù)據(jù)集信息Table 1 Dataset information
實(shí)驗(yàn)采用準(zhǔn)確率(A)、精確率(P)、召回率(R)和F1 值(F)作為模型的評(píng)估指標(biāo)。用于計(jì)算這些指標(biāo)的分類混淆矩陣如表2 所示。
表2 分類混淆矩陣Table 2 Classification confusion matrix
在表2 中,TP表示將樣本正確分類為積極情感的個(gè)數(shù),F(xiàn)P表示將樣本錯(cuò)誤分類為積極情感的個(gè)數(shù),TN表示將樣本正確分類為消極情感的個(gè)數(shù),F(xiàn)N表示將樣本錯(cuò)誤分類為消極情感的個(gè)數(shù)。評(píng)價(jià)指標(biāo)中準(zhǔn)確率表示所有預(yù)測(cè)正確的結(jié)果占總結(jié)果的比率;精確率是針對(duì)結(jié)果,表示所有預(yù)測(cè)為正例的結(jié)果中預(yù)測(cè)正確的比率;召回率是針對(duì)樣本,表示樣本中的正例被正確識(shí)別的比率;F1 值是召回率和精確率的調(diào)和平均值,可以綜合衡量模型的分類效果。計(jì)算公式如式(17)~式(20)所示:
除模型本身的結(jié)構(gòu)設(shè)計(jì)以外,參數(shù)設(shè)置也會(huì)影響模型的特征提取能力以及訓(xùn)練效果,從而對(duì)最終的實(shí)驗(yàn)效果造成影響,所以參數(shù)調(diào)優(yōu)是實(shí)驗(yàn)中的重要步驟。采用控制變量法經(jīng)過反復(fù)實(shí)驗(yàn)確定模型的最佳參數(shù),以對(duì)結(jié)果影響較大的隨機(jī)失活率(Dropout)、BiGRU 隱藏層參數(shù)維度(Hidden_Size)、卷積核通道數(shù)(Nums_Channels)3 個(gè)參數(shù)為例進(jìn)行分析,在IMDb 數(shù)據(jù)集上參數(shù)的調(diào)整對(duì)準(zhǔn)確率的影響實(shí)驗(yàn)結(jié)果如表3 所示。由于模型中卷積核尺寸(3,4,5)表示采用大小分別為3、4、5 的卷積核,因此(32,32,32)表示3 個(gè)卷積核對(duì)應(yīng)的通道數(shù)均為32。
表3 參數(shù)設(shè)置對(duì)準(zhǔn)確率的影響Table 3 Effect of parameter settings on the accuracy
Dropout 是按照概率對(duì)一些神經(jīng)元的激活值進(jìn)行隨機(jī)失活處理,用來避免過擬合現(xiàn)象。當(dāng)其值設(shè)置的較小時(shí)幾乎不能避免過擬合,當(dāng)其值設(shè)置的較大時(shí)失活的值太多會(huì)造成特征丟失,GCDA 模型Dropout 取0.4 時(shí)效果較好。BiGRU 的隱藏層參數(shù)維度即提取到的特征維度,若維度太小則不足以進(jìn)行特征表示,若維度太大則會(huì)增加模型的訓(xùn)練時(shí)間,且更容易發(fā)生過擬合。卷積核采用多通道的方式進(jìn)行局部特征的提取,由于有BiGRU 提取的全局特征作為補(bǔ)充,因此卷積核通道數(shù)設(shè)置為32 時(shí)便可以取得較好的效果。經(jīng)過實(shí)驗(yàn)確定模型參數(shù)后,在IMDb 數(shù)據(jù)集上對(duì)模型進(jìn)行訓(xùn)練,平均每個(gè)Epoch 所需的時(shí)間為249.45 s,模型中的參數(shù)迭代至最優(yōu)并且趨于平穩(wěn)所需的運(yùn)行時(shí)間成本約為10 個(gè)Epoch。模型整體的參數(shù)設(shè)置如表4 所示。
表4 模型參數(shù)設(shè)置Table 4 Model parameter setting
2.4.1 情感分析模型對(duì)比實(shí)驗(yàn)與結(jié)果分析
為驗(yàn)證GCDA 模型的有效性,將其在IMDb 和SST-2 兩個(gè)公開數(shù)據(jù)集上與經(jīng)典模型和最新模型進(jìn)行對(duì)比實(shí)驗(yàn),具體對(duì)比模型如下:
1)TextCNN[6]:該模型采用3 種大小的多通道卷積核,提取文本不同的N-grams 特征。
2)BiLSTM[7]:該模 型采用雙向長短 期記憶網(wǎng)絡(luò),提取文本的上下文信息。
3)BiLSTM+EMB_Att[21]:該模型采用詞向量注意力機(jī)制先識(shí)別關(guān)鍵信息,再使用雙向長短期記憶網(wǎng)絡(luò)提取文本的上下文信息。
4)Att-DouCNN[15]:該模型使用詞向量注意力機(jī)制提取關(guān)鍵詞信息,并使用雙路卷積神經(jīng)網(wǎng)絡(luò)提取句子特征。
5)Att-C_MGU[22]:該模型結(jié)合卷積神經(jīng)網(wǎng)絡(luò)和最小門控單元,并融合注意力機(jī)制,提取文本的深層特征,并且參數(shù)更少,收斂速度較快。
6)Att-MCNN-BGRUM[14]:該模型先使用多通道卷積神經(jīng)網(wǎng)絡(luò)提取特征信息,再將特征信息送入雙向GRU 中,結(jié)合注意力機(jī)制得到文本的上下文情感特征。
7)Bi-SGRU-Att[23]:該模型采用雙向切片GRU對(duì)文本序列進(jìn)行切片實(shí)現(xiàn)并行處理,減少了模型訓(xùn)練所需的時(shí)間,并融入注意力機(jī)制提取關(guān)鍵信息。
經(jīng)過對(duì)比實(shí)驗(yàn),以上模型和本文GCDA 模型的實(shí)驗(yàn)結(jié)果分別如表5 和表6 所示。通過表5 和表6 的實(shí)驗(yàn)數(shù)據(jù)可知,在兩個(gè)數(shù)據(jù)集上GCDA 模型相比其他模型分類效果均有一定的提升。GCDA 模型在IMDb 和SST-2 兩個(gè)數(shù)據(jù)集上的準(zhǔn)確率分別達(dá)到了91.73%和91.16%,相比經(jīng)典的TextCNN 與BiLSTM模型在準(zhǔn)確率和F1 值上約提升了3 個(gè)百分點(diǎn)。GCDA 模型相比IMDb 和SST-2 兩個(gè)數(shù)據(jù)集上的對(duì)照組最優(yōu)模型準(zhǔn)確率分別提高了0.87 和0.66 個(gè)百分點(diǎn)。GCDA 模型在IMDb 數(shù)據(jù)集上相比BiLSTM+EMB_Att 模型和Bi-SGRU-Att 模型準(zhǔn)確率分別提高了2.70 和0.87 個(gè)百分點(diǎn)。GCDA 模型在SST-2 數(shù)據(jù)集上相比Att-DouCNN 模型準(zhǔn)確率提高了2.56 個(gè)百分點(diǎn),這是由于使用BiGRU 與CNN 組成的并行混合網(wǎng)絡(luò)可以同時(shí)提取到文本的長期依賴信息和局部信息,組成更豐富的文本特征表示從而提升分類效果。GCDA 模型相比Att-C_MGU 模型和Att-MCNNBGRUM 模型在IMDb 數(shù)據(jù)集上準(zhǔn)確率分別提高了3.57 和0.93 個(gè)百分點(diǎn),說明采用雙路注意力機(jī)制可以更全面地捕獲文本中的關(guān)鍵信息,進(jìn)一步提高分類準(zhǔn)確率。
表5 IMDb 數(shù)據(jù)集上不同模型的實(shí)驗(yàn)結(jié)果Table 5 Experimental results of different models on the IMDb dataset %
表6 SST-2 數(shù)據(jù)集上不同模型的實(shí)驗(yàn)結(jié)果Table 6 Experimental results of different models on the SST-2 dataset %
2.4.2 雙路注意力機(jī)制對(duì)分類效果的影響
為了進(jìn)一步驗(yàn)證雙路注意力機(jī)制對(duì)模型分類效果的影響,在原模型的基礎(chǔ)上進(jìn)行修改得到單路注意力機(jī)制和無注意力機(jī)制的兩組模型作為對(duì)照進(jìn)行對(duì)比實(shí)驗(yàn),具體對(duì)照模型如下:
1)無注意力機(jī)制模型:BiGRU+CNN,去掉原模型的雙路注意力機(jī)制,采用CNN 與BiGRU 的并行混合。
2)單路注意力機(jī)制模型:(1)BiGRU+CNN-Att,去掉原模型中BiGRU 部分的注意力機(jī)制,采用BiGRU 與CNN-Att 的并行混合;(2)BiGRU-Att+CNN,去掉原模型中CNN 部分的注意力機(jī)制,采用BiGRU-Att 與CNN 的并行混合。
以上模型的參數(shù)設(shè)置與GCDA 模型相同,在IMDb 和SST-2 數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),共訓(xùn)練10 個(gè)Epoch,每次迭代的結(jié)果如圖5 和圖6 所示。
圖5 4 種模型在IMDb 數(shù)據(jù)集上的準(zhǔn)確率變化趨勢(shì)Fig.5 Accuracy variation trend of four models on IMDb dataset
圖6 4 種模型在SST-2 數(shù)據(jù)集上的F1 值變化趨勢(shì)Fig.6 F1 value variation trend of four models on SST-2 dataset
通過對(duì)比無注意力機(jī)制模型和融入注意力機(jī)制模型的實(shí)驗(yàn)結(jié)果可知,使用注意力機(jī)制捕獲文本序列中的關(guān)鍵信息可以明顯提高模型的整體分類效果。在單路注意機(jī)制模型中,BiGRU+CNN-Att 模型使用注意力機(jī)制識(shí)別CNN 提取到的局部特征中的關(guān)鍵信息,BiGRU-Att+CNN 模型則識(shí)別BiGRU 提取到的全局特征中的關(guān)鍵信息,對(duì)比其結(jié)果可以發(fā)現(xiàn)使用注意力機(jī)制捕獲全局特征中的關(guān)鍵信息能提升分類效果,并且在文本長度較長的IMDb 數(shù)據(jù)集上提升效果更明顯。
通過對(duì)比GCDA 模型和單路注意力機(jī)制模型的實(shí)驗(yàn)結(jié)果可知,使用雙路注意力機(jī)制同時(shí)關(guān)注全局特征和局部特征中的關(guān)鍵信息,可以捕獲同一個(gè)詞在局部文本和整篇文本中不同的情感程度,識(shí)別出更細(xì)微的情感傾向變化,從而提高最終的分類效果,驗(yàn)證了雙路注意力機(jī)制的合理性與有效性。
2.4.3 不同詞向量作為輸入的實(shí)驗(yàn)與結(jié)果分析
為了驗(yàn)證GCDA 模型針對(duì)不同網(wǎng)絡(luò)特點(diǎn)采用兩種詞向量并行輸入模型的有效性,使用其他詞向量輸入模型作為對(duì)比實(shí)驗(yàn)驗(yàn)證,具體詞向量如下:
1)Word2vec:使用單一的Word2vec 詞向量作為模型輸入。
2)GloVe:使用單一的GloVe 詞向量 作為模 型輸入。
3)GloVe_Word2vec:本文詞向量,針對(duì)兩種網(wǎng)絡(luò)的特點(diǎn),使用GloVe 詞向量作為BiGRU 的輸入,使用Word2vec 詞向量作為CNN 的輸入。
輸入的詞向量均為100 維,其他參數(shù)設(shè)置保持不變,在IMDb 和SST-2 數(shù)據(jù)集上分別進(jìn)行實(shí)驗(yàn),具體的實(shí)驗(yàn)結(jié)果如圖7 所示。
圖7 不同詞向量對(duì)準(zhǔn)確率的影響Fig.7 Effect of different word vectors on the accuracy
通過圖7 的實(shí)驗(yàn)數(shù)據(jù)可知:Word2vec 是使用詞的局部上下文窗口來訓(xùn)練詞向量,只能提取窗口大小內(nèi)上下文的相關(guān)性信息;GloVe 是基于全局統(tǒng)計(jì)信息訓(xùn)練詞向量,準(zhǔn)確率略高于Word2vec;GloVe_Word2vec 同時(shí)使用兩種詞向量可以從不同的角度將文本向量化,從而獲得更豐富的文本表示信息。可見,GloVe_Word2vec 針對(duì)BiGRU 使用循環(huán)單元提取全局特征的特點(diǎn),利用基于全局統(tǒng)計(jì)信息的GloVe詞向量作為輸入;針對(duì)CNN 使用卷積窗口提取局部特征的特點(diǎn),利用基于上下文窗口訓(xùn)練的Word2vec詞向量作為輸入,最終的分類準(zhǔn)確率相比采用其他詞向量得到了一定程度的提升。
本文提出一種基于并行混合網(wǎng)絡(luò)和雙路注意力機(jī)制的文本情感分析模型。該模型通過兩種詞向量輸入從而得到更豐富的文本信息,再利用并行混合網(wǎng)絡(luò)提取文本的上下文信息和局部特征,同時(shí)融入雙路注意力機(jī)制,為兩種特征中的關(guān)鍵信息分配更高的概率權(quán)重,使模型高度關(guān)注情感傾向明顯的重要詞匯。在公開數(shù)據(jù)集上與同類模型的對(duì)比實(shí)驗(yàn)結(jié)果證明了本文模型具有良好的分類效果。后續(xù)將針對(duì)融合位置編碼信息的方面級(jí)情感分析任務(wù)展開研究,進(jìn)一步擴(kuò)展本文模型的適用范圍。