朱海東, 鄭 虹, 侯秀萍
(長春工業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,吉林 長春 130012)
隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,人們?cè)敢馔ㄟ^微博等網(wǎng)絡(luò)平臺(tái)來抒發(fā)自己看法及評(píng)論,從而產(chǎn)生了大量帶有情感色彩的評(píng)論文本。分析這些帶有情感色彩的文本信息有助于快速掌握網(wǎng)民的情感動(dòng)向[1]。這些評(píng)論信息的分析結(jié)果對(duì)于政府和社會(huì)以及商家具有一定的意義和價(jià)值。對(duì)于商家來說,關(guān)注商品的評(píng)論及分析結(jié)果可以幫助他們制定一些有效的銷售策略,同時(shí)也能夠保證商品的質(zhì)量。對(duì)于政府來說,可以根據(jù)網(wǎng)民評(píng)論信息的分析結(jié)果進(jìn)行合理的輿論監(jiān)控[2],從而掌握群眾的輿論動(dòng)向,更加有利于維護(hù)社會(huì)的穩(wěn)定,因此,從這些評(píng)論文本信息中挖掘出人們的情感,并做出準(zhǔn)確的判斷和分析,具有一定的意義和研究?jī)r(jià)值。
隨著深度學(xué)習(xí)技術(shù)的興起及廣泛應(yīng)用,越來越多基于深度學(xué)習(xí)的方法用于情感分類任務(wù)中。比較常見的神經(jīng)網(wǎng)絡(luò)有卷積神經(jīng)網(wǎng)絡(luò)(CNN)[3]、循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)[4]以及他們的改進(jìn)形式,CNN在提取文本特征時(shí)無法解決文本長距離依賴的問題,雖然更深層的CNN網(wǎng)絡(luò)可以捕捉長距離文本信息,但是隨著網(wǎng)絡(luò)層數(shù)的增加,模型的計(jì)算復(fù)雜度也隨之提高。RNN在提取文本特征時(shí),雖然可以有效捕捉長距離依賴的問題,但是在提取局部特征方面存在著不足,同時(shí)也會(huì)出現(xiàn)梯度爆炸或梯度消失的問題。除此以外,傳統(tǒng)的預(yù)訓(xùn)練模型如Word2vec[5]、Glove也無法解決一詞多義及知識(shí)表示的問題。所以,針對(duì)以上問題文中提出一種基于ERNIE預(yù)訓(xùn)練模型的改進(jìn)DPCNN[6](深層金字塔卷積神經(jīng)網(wǎng)絡(luò))的多通道神經(jīng)網(wǎng)絡(luò)模型MC_E_ImporvDPC_B_SV來進(jìn)一步提高分類的準(zhǔn)確率。
1)利用ERNIE預(yù)訓(xùn)練模型將文本數(shù)據(jù)進(jìn)行向量化表示,同時(shí)學(xué)習(xí)完整的語義表示。解決了Word2vec無法解決一詞多義的問題,同時(shí)能夠?qū)W習(xí)到完整的語義表示。增強(qiáng)了模型的語義表示能力。
2)采用改進(jìn)的DPCNN通道,在不加大計(jì)算成本的同時(shí),通過加深網(wǎng)絡(luò)來獲取更高的準(zhǔn)確率,在此基礎(chǔ)上,將第一個(gè)和第二個(gè)卷積模塊的卷積層各減少一層,這樣就有效避免了文本經(jīng)過ERNIE層后,卷積層增加帶來的退化問題。
3)采用并行提取特征的思想。利用ERNIE加雙向的LSTM[7]通道和ERNIE加改進(jìn)的DPCNN雙通道并行提取特征。
4)采用多通道融合方式。將語義向量特征單獨(dú)作為一個(gè)通道分別與BILSTM通道和改進(jìn)的DPCNN通道所提取的特征進(jìn)行融合,得到一個(gè)融合特征,然后再進(jìn)行分類。
Bengio等[8]首次將神經(jīng)網(wǎng)絡(luò)模型用于自然語言處理任務(wù)中訓(xùn)練特定的語言模型。在循環(huán)神經(jīng)網(wǎng)絡(luò)用于情感分類方面,Xu J等[9]提出一種能捕獲長期情緒信息,提出一種緩存機(jī)制的LSTM。這些工作表明循環(huán)神經(jīng)網(wǎng)絡(luò)在情感分類任務(wù)中是有效的。在CNN網(wǎng)絡(luò)與RNN網(wǎng)絡(luò)結(jié)合用于情感分類方面,Zhou C等[10]將CNN網(wǎng)絡(luò)與循環(huán)神經(jīng)網(wǎng)絡(luò)相結(jié)合,以此來增強(qiáng)模型捕捉特征的能力。在使用預(yù)訓(xùn)練模型進(jìn)行情感分類方面,Sun Y等[11]首次提出基于知識(shí)增強(qiáng)的ERNIE模型,通過對(duì)實(shí)體和詞的遮蔽策略來增強(qiáng)模型的語義表達(dá)能力,在情感分類實(shí)驗(yàn)上取得了良好的實(shí)驗(yàn)效果。雷景生等[12]提出一種將ERNIE與BIGRU相結(jié)合的文本分類方法,并且在新浪新聞公開的數(shù)據(jù)集上取得良好的分類效果。在使用DPCNN進(jìn)行分類方面,齊佳琪等[13]提出一種將ERNIE預(yù)訓(xùn)練模型與DPCNN相融合的短文本分類模型。經(jīng)過實(shí)驗(yàn)對(duì)比,該模型有較高的分類精度。在利用多通道神經(jīng)網(wǎng)絡(luò)模型進(jìn)行情感分類方面,陳珂等[14]提出一種基于多通道卷積神經(jīng)網(wǎng)絡(luò)模型,在COAE2014數(shù)據(jù)集和微博語料數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),結(jié)果表明,該模型要比傳統(tǒng)單通道的卷積神經(jīng)網(wǎng)絡(luò)取得更好的效果。霍帥等[15]利用Transformer和多通道的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行情感分析研究,在IMDB和SST-2數(shù)據(jù)集上取得了很好的效果。這表明利用多通道神經(jīng)網(wǎng)絡(luò)模型進(jìn)行情感分類是可行的。
文中基于以上各方法的優(yōu)勢(shì)提出一種基于ERNIE和改進(jìn)的DPCNN多通道中文情感分類模型,在中文情感分類方面可以取得更好的分類效果。
MC_E_ImprovDPC_B_SV模型是由ERNIE預(yù)訓(xùn)練模型和多個(gè)提取特征的通道組成多通道的情感分類模型。該模型由ERNIE層、三個(gè)并行的通道(分別是改進(jìn)的DPCNN通道、BILSTM通道和語義向量通道)和全連接層組成。模型通過結(jié)合不同層以及不同通道的各自優(yōu)勢(shì)來實(shí)現(xiàn)準(zhǔn)確情感分類的目標(biāo)。通過ERNIE層學(xué)習(xí)更多的先驗(yàn)知識(shí)來增強(qiáng)語義表示,通過不同的知識(shí)掩蔽策略來學(xué)習(xí)更準(zhǔn)確、更完整的語義信息及向量表示,因此經(jīng)過ERNIE層后能夠得到準(zhǔn)確的詞向量表示和語義向量表示。將得到的詞向量分別送入雙向LSTM通道和改進(jìn)的DPCNN通道,讓經(jīng)過ERNIE層得到的語義向量獨(dú)自成為一個(gè)通道。將經(jīng)過BILSTM通道和改進(jìn)的DPCNN通道各自得到的特征與語義向量特征進(jìn)行融合,得到一個(gè)由三個(gè)通道的特征融合之后的融合特征。然后將融合后的特征送入全連接層,最后利用Softmax進(jìn)行分類。在此過程中,BILSTM通道利用自身模型結(jié)構(gòu)的優(yōu)勢(shì)更好地提取上下文的文本情感特征,改進(jìn)的DPCNN通道在不增加計(jì)算成本的情況下,通過適當(dāng)加深網(wǎng)絡(luò)層數(shù)來更好地捕捉文本的依賴關(guān)系,同時(shí)避免了模型退化問題,因此可以更好地提取文本特征。
MC_E_ImprovDPC_B_SV整體模型結(jié)構(gòu)如圖1所示。
圖1 MC_E_ImprovDPC_B_SV模型結(jié)構(gòu)
在圖1所示模型中,原始文本s={X1,X2,X3,…,Xn-1,Xn}是長度為n的輸入語句,Xi表示句中的單詞,語句S經(jīng)過ERNIE層分別得到E={E1,E2,E3,…,En-1,En}的語句向量和V={V1,V2,V3,…,Vn-1,Vn}的語義向量,然后將得到的語句向量E分別送入BILSTM通道和ImprovDPCNN通道進(jìn)行特征提取,B={B1,B2,B3,…,.Bn-1,Bn}表示BILSTM通道提取的特征向量,D={D1,D2,D3,…,Dn-1,Dn}表示ImprovDPCNN通道提取的特征向量,將特征向量B、D和語義向量V進(jìn)行融合,形成融合的特征向量R={R1,R2,R3,…,Rn-1,Rn},將融合的特征向量R送入到全連接層,最后送入到Softmax分類器進(jìn)行分類,得到最后的情感分類結(jié)果。
ERNIE預(yù)訓(xùn)練模型是在BERT模型的基礎(chǔ)上進(jìn)行改進(jìn),通過改進(jìn)不同的遮蔽策略,以及利用先驗(yàn)知識(shí)來增強(qiáng)語義表示。而ERNIE模型和BERT模型本質(zhì)上都是采用多層雙向的Transformer編碼器結(jié)構(gòu),利用此編碼器結(jié)構(gòu)來訓(xùn)練生成文本表示向量,在文本轉(zhuǎn)換成字嵌入后,首先經(jīng)過的是編碼器的自注意力層,使得編碼器關(guān)注到輸入文本的前后文信息,自注意力層的輸出結(jié)果會(huì)輸入到Add&Norm層進(jìn)行殘差連接和歸一化操作。將經(jīng)過處理文本向量輸入到全連接層,全連接層也會(huì)進(jìn)行上一步的殘差連接和歸一化操作。
編碼器端有6層Transformer編碼單元,每一層包括兩個(gè)子層,第一個(gè)子層是多頭自注意力機(jī)制,用來計(jì)算輸入的自注意力機(jī)制。第二個(gè)子層是全連接層。在每一個(gè)中都使用了殘差網(wǎng)絡(luò)。因此每一個(gè)子層的輸出都是:
LayerNorm(x+Sublayer(x))。
(1)
在上述公式中,Sublayer(x)表示子層對(duì)于x做的Native Bayes映射。
BILSTM(雙向長短時(shí)記憶網(wǎng)絡(luò))是LSTM神經(jīng)網(wǎng)絡(luò)的一種改進(jìn)結(jié)構(gòu),這種網(wǎng)絡(luò)結(jié)構(gòu)不僅能記住上文信息,同時(shí)還能記住下文信息,利用雙向的LSTM從兩個(gè)方向讀取文本信息,能夠提取到更加準(zhǔn)確豐富的文本特征。LSTM包括三個(gè)門,即輸入門、遺忘門、輸出門,利用門控機(jī)制來控制記憶網(wǎng)絡(luò)中的輸入和輸出信息流[17]。
LSTM三個(gè)門公式表示如下:
ft=σ(wf·[ht-1,xt]+bf),
(2)
it=σ(wi·[ht-1,xt]+bi),
(3)
ot=σ(wo·[ht-1,xt]+bo)。
(4)
記憶單元更新信息公式表示如下:
(5)
(6)
ht=ot*tanh(ct),
(7)
式中:it,ft,ot——分別表示記憶網(wǎng)絡(luò)中的輸入門、遺忘門和更新門;
xt——t時(shí)刻向記憶單元網(wǎng)絡(luò)中的輸入序列;
ht-1——t-1時(shí)刻的隱藏狀態(tài);
ct——t時(shí)刻的記憶狀態(tài);
在提取一些評(píng)論文本的特征時(shí),需要雙向捕獲文本信息來更加精準(zhǔn)地提取文本特征。所以文中使用雙向LSTM來提取文本上下文特征,BILSTM模型結(jié)構(gòu)如圖2 所示。
圖2 BILSTM模型結(jié)構(gòu)
由圖2可以看出,雙向的LSTM是從兩個(gè)方向進(jìn)行的計(jì)算,即從正向計(jì)算一遍得到輸出向量ht1,同時(shí)從反向計(jì)算一遍得到輸出向量ht2,最后得到BILSTM的輸出向量ht[18],其公式為
ht=(ht1,ht2)。
(8)
ImprovDPCNN模型是由DPCNN改進(jìn)而來,DPCNN(金字塔CNN)是一種低復(fù)雜的詞級(jí)深層CNN,在將離散文本信息轉(zhuǎn)換為連續(xù)表示之后,DPCNN通過堆疊卷積模塊和下采樣層進(jìn)行計(jì)算。因?yàn)樵撃P兔繉拥挠?jì)算量呈指數(shù)下降,所以把它稱為深層金字塔形的CNN。同時(shí),金字塔的結(jié)構(gòu)也使模型能夠發(fā)現(xiàn)文本中長期依賴關(guān)系。模型選用等長卷積進(jìn)行卷積操作,等長卷積會(huì)讓每個(gè)詞位的embedding描述語義更加豐富準(zhǔn)確,選用兩層等長卷積來提高embdding 的豐富性,然后接下來就是downsampling(池化),在每一個(gè)卷積塊(兩層的等長卷積)后,使用一個(gè) size=3 和 stride=2 進(jìn)行maxpooling池化。序列的長度就被壓縮成原來的一半。其能夠感知到的文本片段就比之前長了一倍。在DPCNN中固定了feature map的數(shù)量,也就是固定住了詞向量空間的維度,使得網(wǎng)絡(luò)有可能讓整個(gè)鄰接詞的合并操作在原始空間中進(jìn)行。所以在不增加計(jì)算復(fù)雜度的情況下,DPCNN可以獲得長距離依賴和全局語義信息,比普通的CNN獲得更加精準(zhǔn)的語句特征,DPCNN模型結(jié)構(gòu)如圖3所示。
圖3 DPCNN模型結(jié)構(gòu)
由于每個(gè)通道的輸入都是ERNIE層的輸出結(jié)果,并且原始文本在輸入ERNIE預(yù)訓(xùn)練模型后,會(huì)通過自身的學(xué)習(xí)訓(xùn)練來進(jìn)行一次特征提取,得到完整的語義特征和詞向量。由于DPCNN通道的輸入已經(jīng)過ERNIE層的初步特征提取,為了避免卷積層的增加帶來卷積層特征提取退化的問題[19],所以文中對(duì)DPCNN網(wǎng)絡(luò)模型進(jìn)行改進(jìn),將等長卷積模塊中卷積核大小為3的卷積層由兩個(gè)縮減為一個(gè),除此以外,對(duì)于Repeat結(jié)構(gòu)中的卷積層也由兩個(gè)縮減為一個(gè),這樣改進(jìn)后可以有效避免模型退化帶來局部最優(yōu)的問題,同時(shí)也會(huì)避免因?yàn)榫矸e層增加而帶來提取特征不精確的問題。
改進(jìn)后的ImporvDPCNN模型結(jié)構(gòu)如圖4所示。
圖4 ImprovDPCNN模型結(jié)構(gòu)
在ImprovDPCNN模型中同樣也由這幾部分構(gòu)成,它們分別是Region Embedding層、等長卷積、Repeat結(jié)構(gòu)和殘差連接。
1)Region Embedding層。CNN中包含多尺寸卷積核的卷積層,卷積結(jié)果稱為Region embedding(文本域),即對(duì)一個(gè)文本域進(jìn)行卷積操作后生成的embedding。
2)等長卷積層。等長卷積層就是經(jīng)過卷積之后輸出序列長度等于輸入序列長度。ImprovDPCNN的等長卷積通過步長為1,兩端補(bǔ)零的形式進(jìn)行填充。ImprovDPCNN采用單層等長卷積,等長卷積層為250個(gè)尺寸為3的卷積核。ImprovDPCNN通過等長卷積后提高了embedding的語義豐富性[20]。長卷積層采用預(yù)激活的方法,即先將x激活,再進(jìn)行計(jì)算,因此等長卷積層的輸出為
Oc=Wσ(x)+b。
(9)
3)Repeat結(jié)構(gòu)。采用固定數(shù)量的特征圖進(jìn)行下采樣,在進(jìn)行完等長卷積之后,開始固定特征圖的數(shù)量,這樣可以減少計(jì)算量,然后再進(jìn)行池化操作。池化操作采用窗口大小為3,步長為2的最大池化方式,這樣的池化操作后使得每個(gè)卷積層的計(jì)算時(shí)間和計(jì)算成本減半,形成一個(gè)金字塔的形狀。
4)殘差連接。在ImprovDPCNN中殘差連接的具體操作就是將region embedding的輸出直接連到池化層或者輸出層,此操作極大緩解了梯度消失問題。
文中提出的MC_E_ImprovDPC_B_SV模型采用組合和改進(jìn)的思想,將三個(gè)并行通道得到的輸出向量進(jìn)行向量融合,最終將融合的向量送入到全連接層和Softmax分類器。
實(shí)驗(yàn)在CentOS 7.9 環(huán)境下運(yùn)行,GPU為NVIDIA TITAN XP * 4,編程語言為Python,使用的深度學(xué)習(xí)框架為Pytorch,實(shí)驗(yàn)所用預(yù)訓(xùn)練模型為百度推出的基于知識(shí)策略和實(shí)體遮蔽的ERNIE。
文中使用的數(shù)據(jù)集是由譚松波老師整理的酒店評(píng)論的中文公開數(shù)據(jù)集Chnsenticorp,該數(shù)據(jù)集是帶有情感標(biāo)簽的情感分類中文數(shù)據(jù)集,情感極性為積極和消極兩種,即為二分類。為了防止實(shí)驗(yàn)驗(yàn)證模型出現(xiàn)過擬合現(xiàn)象,將數(shù)據(jù)集按照8∶1∶1的比例切分為訓(xùn)練集、測(cè)試集和驗(yàn)證集。將測(cè)試集上得到的實(shí)驗(yàn)數(shù)據(jù)作為實(shí)驗(yàn)結(jié)果。積極文本的情感標(biāo)簽記為1,消極文本的情感標(biāo)簽記為0。
為了使模型能表現(xiàn)出自身最佳的分類性能,則模型中的超參數(shù)設(shè)置見表1。
表1 實(shí)驗(yàn)的超參數(shù)表
文中提出的情感分類模型所采用的評(píng)價(jià)指標(biāo)有精確率P,召回率R和F1值。具體計(jì)算公式為:
(10)
(11)
(12)
式中:TP——實(shí)際值和預(yù)測(cè)值情感極性都為積極時(shí)的數(shù)據(jù)個(gè)數(shù);
FP——當(dāng)實(shí)際的情感極性為消極,預(yù)測(cè)的情感極性為積極時(shí)的數(shù)據(jù)個(gè)數(shù);
FN——實(shí)際的情感極性為積極,預(yù)測(cè)的情感極性為消極時(shí)的數(shù)據(jù)個(gè)數(shù);
F1——由精確率和召回率共同決定。
為了驗(yàn)證在相同數(shù)據(jù)集及同等實(shí)驗(yàn)條件下MC_E_ImprovDPC_B_SV模型具有較好的分類效果,在驗(yàn)證實(shí)驗(yàn)的同時(shí),又做了許多對(duì)比實(shí)驗(yàn),其中,ERNIE_ImproveDPCNN_SV模型、MC_R_ImprovDPC_B_SV模型、ERNIE_ImprovDPCNN_BILSTM模型、ERNIE_ImprovDPCNN模型作為對(duì)比模型在文中首次被提出,對(duì)比實(shí)驗(yàn)中的ERNIE、ERNIE_BILSTM、ERNIE_CNN、ERNIE_DPCNN、ERNIE_RCNN等模型早已由其他學(xué)者提出,文中不再贅述,具體實(shí)驗(yàn)結(jié)果分別見表2~表4。
表2 不同模型在測(cè)試集上的準(zhǔn)確率及損失值
表3 不同模型積極測(cè)試集文本上的不同評(píng)價(jià)指標(biāo)
表4 不同模型消極測(cè)試集文本上的不同評(píng)價(jià)指標(biāo)
不同模型在測(cè)試集上準(zhǔn)確率分布的條形統(tǒng)計(jì)如圖5所示。
圖5 不同模型在測(cè)試集上準(zhǔn)確率分布的條形統(tǒng)計(jì)
不同模型在測(cè)試集上損失值分布的折線統(tǒng)計(jì)如圖6所示。
圖6 不同模型在測(cè)試集上損失值分布的折線統(tǒng)計(jì)
從以上實(shí)驗(yàn)結(jié)果可以看出,文中提出的MC_E_ImprovDPC_B_SV模型較文中提到的其他情感分類模型有較好的分類效果,在測(cè)試集上的分類準(zhǔn)確率達(dá)到93.92%,除此以外,該模型的精確率和F1值也是文中提到所有模型中最高的,從而也說明了MC_E_ImprovDPC_B_SV模型的優(yōu)越性,MC_E_ImprovDPC_B_SV模型比ERNIE_ImproveDPCNN_SV模型在分類準(zhǔn)確率上提升了0.59%,損失值減少了0.02,說明三通道并行提取特征要比雙通道提取特征更有效果,從另一方面也說明了雙向LSTM通道在提取特征時(shí)發(fā)揮了重要作用。通過比較模型ERNIE_BILSTM和ERNIE_ImprovDPCNN_BILSTM在測(cè)試集上的分類準(zhǔn)確率可知,后者比前者的分類準(zhǔn)確率提升了0.42%,由此可以看出,ImprovDPCNN通道可以獲得更豐富的情感特征信息。通過比較ERNIE_DPCNN模型和ERNIE_ImprovDPCNN模型在測(cè)試集上的分類準(zhǔn)確率可以看出,準(zhǔn)確率提高1.16%,說明改進(jìn)后的DPCNN更有利于情感特征的提取,有效改善了模型退化的問題。通過比較MC_E_ImprovDPC_B_SV模型和MC_R_ImprovDPC_B_SV模型可知,在測(cè)試集的準(zhǔn)確率上前者比后者提高1.16%,在積極文本和消極文本的評(píng)價(jià)指標(biāo)方面,MC_E_ImprovDPC_B_SV的Precision和F1值均高于MC_R_ImprovDPC_B_SV模型,由此可以看出,在知識(shí)表示和語義增強(qiáng)方面,ERNIE預(yù)訓(xùn)練模型要優(yōu)于Roberta預(yù)訓(xùn)練模型。
通過比較實(shí)驗(yàn)結(jié)果可以得出,DPCNN用于情感分類方面要優(yōu)于普通的CNN網(wǎng)絡(luò),縱觀文中提出的所有情感分類模型中,基于ERNIE的ImprovDPCNN、BILSTM和語義向量的多通道組合方式能夠發(fā)揮出最好的模型性能,同時(shí)也說明,通過這樣的組合方式,各通道才能更好地發(fā)揮出自身的優(yōu)勢(shì)來進(jìn)行特征提取,從而進(jìn)行情感分類。
提出一種基于ERNIE的三通道并行提取特征的中文情感分類模型,這三個(gè)通道分別是ImporvDPCNN通道、BILSTM通道和語義向量通道。該模型通過發(fā)揮ERNIE及不同通道各自的優(yōu)勢(shì)可以提取到豐富的情感特征,從而能夠進(jìn)行準(zhǔn)確分類,通過驗(yàn)證實(shí)驗(yàn)和對(duì)比實(shí)驗(yàn)可以看出,文中提出的MC_E_ImprovDPC_B_SV模型在情感分類問題上準(zhǔn)確率及評(píng)價(jià)指標(biāo)F1值要優(yōu)于文中提到的其他模型。在Chnsenticorp數(shù)據(jù)集上取得了良好的實(shí)驗(yàn)效果。
文中所提模型雖然取得了很好的分類效果,但也存在諸多不足,比如在長文本情感分類方面的實(shí)驗(yàn)效果還未知,對(duì)于多標(biāo)簽的情感分類問題還不能很好地解決,所以下一步工作將繼續(xù)研究和探索進(jìn)行長文本情感分類和多標(biāo)簽情感分類問題,使文中模型具有更強(qiáng)的適應(yīng)性和魯棒性。