楊秀璋, 郭明鎮(zhèn), 候紅濤, 袁杰, 李曉峰, 李坤琪, 汪威, 何世群, 羅子江
(貴州財(cái)經(jīng)大學(xué)信息學(xué)院, 貴陽 550025)
隨著互聯(lián)網(wǎng)迅速發(fā)展,以搜索引擎、微博、在線評論、論壇博客等為代表的應(yīng)用與日俱增,人們可以在網(wǎng)絡(luò)平臺(tái)上發(fā)表主觀性的評論信息及情緒表達(dá),如何快速精準(zhǔn)地對這些評論進(jìn)行情感分類,挖掘出用戶的情感態(tài)度及主題觀點(diǎn),已成為重要的研究問題[1]。情感分類(sentiment classification)作為自然語言處理領(lǐng)域的一個(gè)研究熱點(diǎn)和難點(diǎn),旨在對帶有感情色彩的文本進(jìn)行推理,精準(zhǔn)地分析評論者的態(tài)度及情感傾向,并劃分為積極或消極情緒,最終從文本中得到評論者所持觀點(diǎn),以期提供更精準(zhǔn)的推薦或決策支持。因此,如何從用戶評論中準(zhǔn)確地挖掘出情感傾向具有重要價(jià)值[2-3]。
傳統(tǒng)情感分類方法通過關(guān)鍵詞匹配,檢測文本中所包含的情感特征詞,再進(jìn)行情感分?jǐn)?shù)計(jì)算并預(yù)測其正面和負(fù)面情緒。楊鑫等[4]通過情感傾向點(diǎn)互信息(semantic orientation and pointwise mutual information, SO-PMI)算法構(gòu)建民宿領(lǐng)域詞典,完成社交媒體中民宿評論的情感分析。Alejandra等[5]通過計(jì)算WordNet詞典的相似性以確定特征詞的情感傾向,實(shí)驗(yàn)證明同類別情感特征詞具有同質(zhì)相似性,并為情感分析提供支撐。劉文龍等[6]利用領(lǐng)域詞典對留園構(gòu)成要素開展情感分析,從而為園林旅游和景點(diǎn)管理提供理論基礎(chǔ)。然而,這些方法十分依賴情感詞庫和分類規(guī)則,需要借助專家知識進(jìn)行大量標(biāo)注,并且面對大規(guī)模文本語料或特定領(lǐng)域的情感分析時(shí),其算法的準(zhǔn)確度和魯棒性較差,缺乏特征詞間的語義分析。
近年來,機(jī)器學(xué)習(xí)和深度學(xué)習(xí)技術(shù)興起,很多學(xué)者將機(jī)器學(xué)習(xí)算法和神經(jīng)網(wǎng)絡(luò)應(yīng)用于情感分析領(lǐng)域。高歡等[7]設(shè)計(jì)集成學(xué)習(xí)對在線評論實(shí)施情感傾向預(yù)測,并在酒店、圖書領(lǐng)域驗(yàn)證了算法的有效性。鄧君等[8]基于Word2Vec和支持向量機(jī)(support vector machines, SVM)構(gòu)建微博輿情情感演化分析模型,有效反應(yīng)網(wǎng)民對五類主體對象的情感態(tài)度。為了進(jìn)一步結(jié)合上下文的語義關(guān)系,利用向量空間表征文本,提升情感分類效果,卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network, CNN)和循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network, RNN)被應(yīng)用于情感分析。程艷等[9]提出了一種多通道CNN和雙向門控循環(huán)單元(bidirectional gated recurrent unit, BiGRU)的神經(jīng)網(wǎng)絡(luò)模型,從而提升文本情感特征的提取能力。梁淑蓉等[10]在XLNet基礎(chǔ)上增加長短時(shí)記憶(long and short-term memory, LSTM)網(wǎng)絡(luò)層和注意力機(jī)制,整個(gè)模型的精確率達(dá)到89.29%。曾子明等[11]構(gòu)建雙層注意力和雙向長短時(shí)記憶網(wǎng)絡(luò)(bidirectional long and short-term memory,BiLSTM)模型,對微博公共安全事件文本進(jìn)行情感分析。然而,上述方法忽略了上下文語義的關(guān)聯(lián)關(guān)系,分類模型在處理情感分類任務(wù)時(shí)會(huì)忽略情感特征詞的強(qiáng)度,難以避免引入干擾信息和克服短文本的特征稀疏問題,并且沒有突出情感特征詞對情感分類結(jié)果的貢獻(xiàn)。因此,它們較難挖掘到深層次的文本特征,從而限制情感分類的精準(zhǔn)度和魯棒性。
針對這些問題,提出一種改進(jìn)BiLSTM-CNN和注意力機(jī)制的情感分類模型,通過引入情感詞典來優(yōu)化特征詞的權(quán)重,再結(jié)合BiLSTM-CNN和Attention模型進(jìn)行分類,以期為商品推薦和輿情分析做出更好的決策提供理論和實(shí)踐支撐。
情感詞典指帶有情感色彩的詞或詞組以及對應(yīng)情感極性和情感強(qiáng)度的集合,領(lǐng)域情感詞典在文本挖掘和自然語言處理領(lǐng)域發(fā)揮著重要的作用[12]。基于情感詞典的分析方法是對評論文本進(jìn)行特征詞匹配,結(jié)合語法規(guī)則來計(jì)算情感分?jǐn)?shù)。目前國內(nèi)開放的情感詞典主要包括知網(wǎng)(HowNet)[13]、大連理工大學(xué)情感詞匯本體庫[14]、清華大學(xué)情感詞典[15]、同義詞林[16]等。安璐等[14]結(jié)合大連理工大學(xué)情感詞匯本體庫,融合主題與情感特征對微博突發(fā)事件進(jìn)行情感演化分析。Li等[17]利用情感詞典構(gòu)建分類模型,對視頻彈幕評論開展情感分析,并有效提取7個(gè)維度的情感分布。馬曉慧等[18]融合情感詞典,提出一種基于語義相似性度量和嵌入表示的情感分類方法。張鵬等[19]結(jié)合理論和情感詞典,對微博突發(fā)事件進(jìn)行對應(yīng)的情感分析和輿情引導(dǎo)策略研究。Xu等[20]通過擴(kuò)展情感詞典來提升情感分類的準(zhǔn)確性,并證明了情感詞典對評論文本情感分析的重要意義。崔彥琛等[21]構(gòu)建網(wǎng)絡(luò)輿情情感詞典識別消防突發(fā)事件。
然而,基于情感詞典的分類方法需要通過專家經(jīng)驗(yàn)進(jìn)行特征劃分,十分依賴情感詞庫及分類規(guī)則的制定,導(dǎo)致其擴(kuò)展性較差。此外,隨著社交媒體評論數(shù)量日益增長,該類方法面對大規(guī)模文本語料或針對特定領(lǐng)域的情感分析時(shí),其算法的準(zhǔn)確率較低,也缺乏特征詞間的語義分析和關(guān)聯(lián)挖掘,從而導(dǎo)致基于情感詞典的方法在領(lǐng)域文本情感分析中效果不理想。
近年來,基于機(jī)器學(xué)習(xí)的情感分類方法越來越多,其分類效果也得到一定提高。常用方法包括SVM、K最近鄰(k-nearest neighbor, KNN)、決策樹(decision tree, DT)、樸素貝葉斯(naive bayes, NB)、隱馬爾可夫模型(hidden markov model, HMM)等[22-23]。王婷等[22]詳細(xì)總結(jié)了基于傳統(tǒng)機(jī)器學(xué)習(xí)的情感分析方法。張冬雯等[24]結(jié)合Word2Vec和SVMperf對中文評論數(shù)據(jù)進(jìn)行情感分類研究。Lu等[25]提出了一種基于SVM和四類情感詞典的情感分析方法,并對影評文本進(jìn)行分析及評估。李明等[26]通過卡方檢驗(yàn)方法進(jìn)行文本特征選擇和降維,詳細(xì)對比樸素貝葉斯、SVM、決策樹、KNN的4種情感分類方法。Gonzalo等[27]通過構(gòu)建貝葉斯網(wǎng)絡(luò)分類器對Twitter輿情事件開展情感分析研究。
上述方法雖然提升文本情感分類的準(zhǔn)確率,但只能提取評論文本的淺層知識,缺乏考慮上下文依賴關(guān)系,忽略語義知識及情感特征詞對文本情感分類的影響,并且沒有結(jié)合注意力機(jī)制突出情感特征詞的重要程度。此外,早期基于機(jī)器學(xué)習(xí)的文本分類方法主要通過詞頻、詞頻及逆文檔頻率(term frequency inverse document frequency, TF-IDF)、信息熵、互信息等技術(shù)提取文本特征,再調(diào)用機(jī)器學(xué)習(xí)算法進(jìn)行文本分類,但這些評估函數(shù)大多基于統(tǒng)計(jì)學(xué)原理,缺乏對海量評論文本數(shù)據(jù)的有效分類。
隨著深度學(xué)習(xí)和人工智能的興起,以詞向量模型為基礎(chǔ),融合深度神經(jīng)網(wǎng)絡(luò)、隱含狄利克雷分布(latent dirichlet allocation, LDA)模型、注意力機(jī)制的情感分類方法逐漸出現(xiàn)。Mikolov等[28]提出了Word2Vec模型,通過訓(xùn)練大規(guī)模語料得到低維詞向量,從而表征語義信息,常用框架包括CBOW和Skip-gram。隨后,融合詞向量或詞嵌入的深度神經(jīng)網(wǎng)絡(luò)模型開始逐漸應(yīng)用于評論文本情感分類任務(wù)中。陳可嘉等[29]利用Word2Vec實(shí)現(xiàn)股市情感詞典的自動(dòng)構(gòu)建。張海濤等[30]通過卷積神經(jīng)網(wǎng)絡(luò)對微博輿情數(shù)據(jù)進(jìn)行情感分類研究,相較于SVM模型,CNN模型能夠?qū)崿F(xiàn)更細(xì)粒度的情感特征識別。邱爾麗等[31]通過字符級CNN技術(shù)完成公共政策網(wǎng)民支持的分類研究。李天賜等[32]設(shè)計(jì)并實(shí)現(xiàn)多輸入通道卷積神經(jīng)網(wǎng)絡(luò)(multi-input channel convolutional neural network, MIC-CNN)模型,最終中文新聞情感分類的精確率比普通CNN提高2%~3%。
同時(shí),由于循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)可以聯(lián)系上下文突出文本序列信息,它也被應(yīng)用于自然語言處理領(lǐng)域。為進(jìn)一步解決RNN模型的梯度爆炸和梯度消失問題,提出門控遞歸單元網(wǎng)絡(luò)(gated recurrent unit, GRU)和LSTM并應(yīng)用于文本分類任務(wù)。李云紅等[33]提出了一種基于循環(huán)神經(jīng)網(wǎng)絡(luò)變體和卷積神經(jīng)網(wǎng)絡(luò)的文本分類方法。鄭國偉等[34]通過LSTM模型對金融領(lǐng)域的新聞數(shù)據(jù)進(jìn)行分類。張騰等[35]結(jié)合卷積神經(jīng)網(wǎng)絡(luò)和雙向門控循環(huán)神經(jīng)網(wǎng)絡(luò)對輿情事件評論的短文本進(jìn)行情感分析。劉啟元等[36]提出一種基于上下文增強(qiáng)LSTM的多模態(tài)情感分析模型。Yang等[37]結(jié)合社交媒體的上下文關(guān)系,設(shè)計(jì)一種基于改進(jìn)LSTM的情感分析方法,分別對新浪微博和Twitter數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)。為更好地提取重點(diǎn)關(guān)注的文本數(shù)據(jù),注意力機(jī)制被引入深度神經(jīng)網(wǎng)絡(luò)及自然語言處理任務(wù)中。楊鵬等[38]基于注意力機(jī)制的交互式神經(jīng)網(wǎng)絡(luò)模型提升情感分類的效果,結(jié)合上下文語義和方面詞語義交互式建模。Wang等[39]結(jié)合LSTM模型和注意力機(jī)制實(shí)現(xiàn)情感分類研究。姚苗等[40]提出了自注意力機(jī)制的Att-BLSTMs模型并應(yīng)用于文本分類研究,提高分類的準(zhǔn)確率。
綜上所述,在情感分類理論和應(yīng)用中,基于情感詞典、機(jī)器學(xué)習(xí)和深度學(xué)習(xí)的方法均取得一定的研究成果。BiLSTM模型可以提取上下文語義知識,CNN模型可以捕獲具有代表性的局部特征,Attention機(jī)制能夠突出詞語的重要性,強(qiáng)化網(wǎng)絡(luò)模型的學(xué)習(xí)和泛化能力。但這些模型在處理情感分類任務(wù)時(shí)往往會(huì)忽略情感特征詞的強(qiáng)度,情感語義關(guān)系比較單薄,沒有突出關(guān)鍵特征,從而影響分類精確度和效率。此外,上述方法未結(jié)合情感詞典和深度學(xué)習(xí)兩者優(yōu)勢,面對大規(guī)模情感分析或特定領(lǐng)域的情感分析時(shí),效果不理想。為提升文本情感分類的性能和擴(kuò)展性,從多個(gè)角度考慮情感分類的互補(bǔ)性及協(xié)調(diào)性,提出一種改進(jìn)BiLSTM-CNN和注意力機(jī)制的情感分類模型。該分類模型通過融合情感詞典優(yōu)化特征詞的權(quán)重,降低特征維度,利用卷積神經(jīng)網(wǎng)絡(luò)高效提取代表性的局部特征,引入雙向長短時(shí)記憶網(wǎng)絡(luò)捕獲上下文語義特征,再結(jié)合注意力機(jī)制構(gòu)建句子詞向量,最終由Softmax分類器計(jì)算情感分類結(jié)果,從而完成細(xì)粒度的情感分類,并取得良好的準(zhǔn)確率和魯棒性。
基于中外相關(guān)學(xué)者的研究成果和傳統(tǒng)深度神經(jīng)網(wǎng)絡(luò)模型的缺點(diǎn),構(gòu)建基于情感詞典和BiLSTM-CNN+Attention的情感分類模型。
該模型共包括數(shù)據(jù)采集及預(yù)處理、改進(jìn)情感分類模型和實(shí)驗(yàn)評估三個(gè)部分,其總體框架如圖1所示,具體步驟如下。
步驟1首先通過Python和XPath構(gòu)建自定義爬蟲抓取大眾點(diǎn)評網(wǎng)貴州景區(qū)數(shù)據(jù)集,利用Jieba工具進(jìn)行中文分詞及數(shù)據(jù)預(yù)處理,過濾掉無效特征詞。
步驟2引入大連理工大學(xué)情感詞匯本體庫進(jìn)行情感特征詞提取,通過權(quán)重加成優(yōu)化特征矩陣,包括基礎(chǔ)詞典調(diào)用、否定詞構(gòu)建、程度副詞構(gòu)建、語法規(guī)則構(gòu)建等步驟。
步驟3經(jīng)過情感詞典改進(jìn)的詞向量會(huì)將文本中的每個(gè)詞匯表征為相應(yīng)的向量空間,并嵌入輸入層;接著經(jīng)過BiLSTM-CNN+Attention模型,其結(jié)構(gòu)如圖2所示。該卷積層由多個(gè)濾波器組成,池化層會(huì)高效提取代表性的局部特征,再利用BiLSTM層捕獲上下文語義特征,其輸出會(huì)通過Attention機(jī)制進(jìn)一步突出所提取的關(guān)鍵性詞語,并賦予相關(guān)權(quán)重,最終由Softmax分類器計(jì)算情感分類結(jié)果。
步驟4情感分類評估包括基于深度學(xué)習(xí)算法的性能評估、基于機(jī)器學(xué)習(xí)算法的性能評估和正負(fù)評論數(shù)據(jù)集性能對比。
在進(jìn)行情感分類任務(wù)前,需要對語料進(jìn)行數(shù)據(jù)預(yù)處理操作,主要包括以下內(nèi)容。
(1)分詞。抓取風(fēng)景評論數(shù)據(jù)作為實(shí)驗(yàn)語料,中文分詞采用Jieba工具完成,并導(dǎo)入自定義詞典進(jìn)行專有名詞識別,如“黃果樹瀑布”“西江千戶苗寨”“鎮(zhèn)遠(yuǎn)古鎮(zhèn)”等。
(2)停用詞過濾。通過Python導(dǎo)入哈爾濱工業(yè)大學(xué)停用詞表、百度停用詞表和四川大學(xué)停用詞表進(jìn)行數(shù)據(jù)清洗,過濾掉如“我們”“的”“這”等停用詞以及標(biāo)點(diǎn)符號。
(3)異常值處理。在中文文本中還會(huì)存在一些異常的特征詞,此時(shí)需要進(jìn)行適當(dāng)?shù)霓D(zhuǎn)換及人工標(biāo)注,從而為后續(xù)的文本分類提供輔助。
圖1 改進(jìn)BiLSTM-CNN和Attention的情感分類模型框架圖Fig.1 The framework of an improved BilSTM-CNN and Attention sentiment classification model
圖2 BiLSTM-CNN+Attention模型結(jié)構(gòu)Fig.2 The structure of BilSTM-CNN +Attention model
(4)分類標(biāo)注。所抓取的評論數(shù)據(jù)共包括一星~五星評價(jià),將四星和五星劃分為好評,其余數(shù)據(jù)標(biāo)注為差評。
經(jīng)過上述處理,得到質(zhì)量更高的文本語料,從而提升分類效果。最后將清洗后的數(shù)據(jù)及類標(biāo)存儲(chǔ)至CSV文件中,進(jìn)行后續(xù)的情感分類實(shí)驗(yàn)。
選擇大連理工大學(xué)情感詞匯本體庫作為情感詞典[4],該詞典共涵蓋27 466個(gè)特征詞,將情感細(xì)粒度劃分為“樂”“好”“怒”“哀”“驚”“懼”“惡”7大類和21小類,每個(gè)詞匯均具有詞性種類、情感類型、情感強(qiáng)度等多種屬性,如表1所示。其中,情感強(qiáng)度包括5個(gè)等級,其分?jǐn)?shù)分別為1、3、5、7、9;整個(gè)情感詞的極性涉及中性、褒義、貶義3類,對應(yīng)值為0、1、2。在該情感詞典的基礎(chǔ)上進(jìn)一步改進(jìn),將非大連理工大學(xué)情感詞匯本體庫中的特征詞權(quán)重設(shè)置為1,其余情感特征詞對應(yīng)的強(qiáng)度在原來的基礎(chǔ)上加1。從而既保證情感特征詞對分類模型的加成,又保證非情感特征詞對分類模型的影響。最終特征詞的情感強(qiáng)度計(jì)算公式為
s(w)=v(w)p(w)
(1)
式(1)中:v(w)為詞匯的情感強(qiáng)度;p(w)為詞匯的情感極性;s(w)為詞匯的情感值。
接下來將情感詞典改進(jìn)后的特征詞及權(quán)重轉(zhuǎn)換為詞向量形式,情感特征詞所對應(yīng)的詞向量權(quán)重會(huì)有所加成,并通過詞向量進(jìn)一步表征詞語之間的內(nèi)在語義知識和關(guān)聯(lián)信息,最終作為輸入矩陣傳入Attention和BiLSTM-CNN模型實(shí)現(xiàn)情感分類。
表1 情感分類關(guān)鍵詞Table 1 Keywords of emotion classification
CNN利用卷積核滑動(dòng)搜集句子信息來提取特征,再通過所提取的局部特征完成文本分類,通常包括輸入層、卷積層、池化層和全連接層。
(2)
式(2)中:f為ReLU激活函數(shù);wd為大小為d的卷積核;Vi為輸入層的詞向量;bd為偏置項(xiàng)。
通過設(shè)置卷積核對輸入詞向量Vi進(jìn)行特征提取,滑動(dòng)濾波器映射得到局部特征集合Hd,其計(jì)算公式為
(3)
池化層作用于卷積層的輸出特征集合上,旨在降低數(shù)據(jù)維度,同時(shí)保持文本特征統(tǒng)計(jì)屬性并增大模型的適應(yīng)性。采用最大池化方法來提取特征,其計(jì)算公式為
si=max{Hd}
(4)
經(jīng)過池化層提取出文本的局部重要特征,接著所有池化層得到的特征在全連接層進(jìn)行組合,得到輸出向量S為
S={s1,s2,…,sn}
(5)
最后將全連接層輸出向量S輸入Softmax分類器中進(jìn)行評論文本的情感分類。同時(shí),為防止出現(xiàn)過擬合現(xiàn)象,引入Dropout機(jī)制隨機(jī)抽取數(shù)據(jù)進(jìn)行訓(xùn)練。重點(diǎn)是融合CNN和BiLSTM模型。
BiLSTM可以從正向和反向?qū)渥舆M(jìn)行編碼,提取上下文語義特征。其網(wǎng)絡(luò)結(jié)構(gòu)會(huì)通過BiLSTM模型能夠有效阻止梯度消失和梯度爆炸問題,從而更好地捕捉雙向語義依賴。從正負(fù)兩個(gè)向?qū)η楦刑卣髟~深度訓(xùn)練,進(jìn)行細(xì)粒度的情感分類。
BiLSTM模型的計(jì)算公式為
(6)
(7)
(8)
通過構(gòu)建BiLSTM-CNN模型,結(jié)合上下文語義知識來提取文本的局部特征,一方面解決局部特征丟失問題,另一方面有效保障對長距離依賴和前后屬性關(guān)聯(lián)的特征,為后續(xù)的文本情感分類提供支持。
Attention機(jī)制能夠有效增強(qiáng)神經(jīng)網(wǎng)絡(luò)模型對局部特征的關(guān)注,提高不同詞語對于整個(gè)文本分類的貢獻(xiàn)程度,并賦予不同的權(quán)重。在所研究的文本情感分類任務(wù)中,如果某個(gè)詞語對句子語義的貢獻(xiàn)較大,則賦予更大的權(quán)重,反之賦予更小的權(quán)重,通過這種方式有效地將單詞級別的特征融合成句子級別的特征,提高關(guān)鍵詞信息對情感分類效果的影響。注意力機(jī)制的處理過程如式(9)~式(11)所示。
ut=tanh(wcyt+bc)
(9)
at=sofmax(wT,ut)
(10)
(11)
式中:式(9)是通過tanh激活函數(shù)對yt進(jìn)行非線性變換,最終得到屬性表示向量ut;yt為BiLSTM結(jié)構(gòu)輸出的向量,yt=[y1,y2,…,yn];wc為訓(xùn)練的參數(shù)向量,bc為對應(yīng)的偏置;式(10)采用softmax函數(shù)計(jì)算各個(gè)分量ut的權(quán)重,得到的at表示權(quán)重重要性;wT為轉(zhuǎn)置矩陣;式(11)表示對yt重要性加權(quán)和的句子向量,用v表示。
最后,經(jīng)過注意力機(jī)制得到向量表示v,將其輸入到softmax分類器中得到最終分類結(jié)果,從而實(shí)現(xiàn)評論文本的情感分類任務(wù)。
為驗(yàn)證所提出算法的有效性和實(shí)用性,采用Keras深度學(xué)習(xí)框架設(shè)計(jì)神經(jīng)網(wǎng)絡(luò)模型,結(jié)合情感詞典進(jìn)行對比實(shí)驗(yàn)。實(shí)驗(yàn)環(huán)境為Windows10(64位)操作系統(tǒng),處理器為Inter(R) Core i7-8700K,內(nèi)存為32 GB,開發(fā)工具為Anaconda3,編程語言為Python3.6。
實(shí)驗(yàn)數(shù)據(jù)選取在線評價(jià)平臺(tái)“大眾點(diǎn)評網(wǎng)”作為文本來源,通過Python自定義爬蟲采集2010—2020年貴州省85個(gè)景點(diǎn)的情感評論信息,過濾掉無效及重復(fù)評論后共計(jì)32 000條,如“黃果樹瀑布”“梵凈山”“西江千戶苗寨”等。數(shù)據(jù)集按照4∶2∶4的比例隨機(jī)劃分成訓(xùn)練集、驗(yàn)證集和測試集,具體數(shù)據(jù)分布情況如表2所示。
表2 數(shù)據(jù)集描述Table 2 Dataset description
數(shù)據(jù)預(yù)處理采用Jieba工具實(shí)現(xiàn),通過導(dǎo)入停用詞表和專有名詞詞典進(jìn)行中文分詞和數(shù)據(jù)清洗,并導(dǎo)入大連理工大學(xué)情感詞匯本體庫進(jìn)行情感特征詞提取和權(quán)重優(yōu)化,從而提升情感分類效果。
情感分類實(shí)驗(yàn)的評價(jià)指標(biāo)采用精確率Precision、召回率Recall和F值Fmeasure衡量,其計(jì)算公式分別為
(12)
(13)
(14)
式中:TP為情感分類預(yù)測正確的數(shù)量;FP為將其他情感類別錯(cuò)誤預(yù)測為該類別的數(shù)量;FN為該類別的情感文本被錯(cuò)誤預(yù)測的數(shù)量。
精確率旨在評估算法預(yù)測正確的某個(gè)類別數(shù)量占預(yù)測到某個(gè)類別的總數(shù)量比值,召回率旨在評估算法預(yù)測正確的某個(gè)類別數(shù)量占該類別測試集中總數(shù)量的比值。為綜合考慮算法的查準(zhǔn)和查全效果,通常使用F值來評價(jià)分類算法的最終性能。
準(zhǔn)確率Accuracy表示分類預(yù)測正確的數(shù)量占該類情感文本總數(shù)量的比值,可以直觀地呈現(xiàn)分類效果的好壞,如式(15)所示,主要用它對比各深度學(xué)習(xí)模型隨訓(xùn)練迭代次數(shù)的學(xué)習(xí)效果。
(15)
為保證實(shí)驗(yàn)結(jié)果更加真實(shí)有效,所有景區(qū)的評論數(shù)據(jù)集均進(jìn)行隨機(jī)劃分,實(shí)驗(yàn)采用多次交叉驗(yàn)證,最終實(shí)驗(yàn)結(jié)果為10次情感分類結(jié)果的平均值,從而減小某次異常實(shí)驗(yàn)的影響。神經(jīng)網(wǎng)絡(luò)模型參數(shù)設(shè)定方面,最大特征詞數(shù)設(shè)為10 000,文本序列長度設(shè)為600,CNN模型的卷積核數(shù)量設(shè)為128,批次為24,學(xué)習(xí)率為0.001。同時(shí),BiLSTM模型的正反向神經(jīng)元數(shù)均設(shè)置為256,優(yōu)化算法選擇Adam優(yōu)化器,誤差評價(jià)選擇交叉熵?fù)p失函數(shù),并且增加Dropout層防止出現(xiàn)過擬合現(xiàn)象,其參數(shù)設(shè)為0.3。
通過融合情感詞典來改進(jìn)BiLSTM-CNN和Attention情感分類算法,并與經(jīng)典的深度學(xué)習(xí)分類模型進(jìn)行對比實(shí)驗(yàn),得出表3所示的實(shí)驗(yàn)結(jié)果。
由表3可知,所提出的方法在該數(shù)據(jù)集情感分類比較中,平均精確率、平均召回率和平均F值都有一定程度的提升。其中,本文方法的平均精確率為0.948 1,平均召回率為0.947 0,平均F值為0.947 5。相比于經(jīng)典的BiLSTM-CNN+Attention模型,其平均精確率提高約0.008 1,平均召回率提升約0.011 1,平均F值提升約0.009 6,提升效果最高。同時(shí),融合情感詞典的TextCNN方法情感分類的F值從0.932 3提升到0.936 4;融合情感詞典的BiLSTM方法情感分類的F值從0.923 0提升到0.924 9;融合情感詞典的LSTM方法情感分類的F值從0.919 4提升到0.922 1;融合情感詞典的CNN方法情感分類的F值從0.929 6提升到0.933 5??傮w而言,通過情感詞典權(quán)重加成,深度學(xué)習(xí)模型分類效果都有一定程度的提升,表3中的5種模型的精確率平均提升約0.004 2,召回率平均提升約0.004 7,F(xiàn)值平均提升約0.004 4。
同時(shí),為進(jìn)一步驗(yàn)證融合情感詞典方法的有效性,本文方法還與傳統(tǒng)的機(jī)器學(xué)習(xí)分類方法進(jìn)行對比實(shí)驗(yàn),得出的實(shí)驗(yàn)結(jié)果如表4所示。
其中,相比于未引入情感詞典的邏輯回歸方法,本文方法的平均精確率、召回率、F值分別提升2.39%、10.61%、6.69%;相比于未引入情感詞典的樸素貝葉斯方法,本文方法的平均精確率、召回率、F值分別提升4.25%、15.73%、10.38%;相比于未引入情感詞典的SVM方法,本文方法的平均精確率、召回率、F值分別提升4.89%、6.12%、5.51%;相比于未引入情感詞典的隨機(jī)森林方法,本文方法的平均精確率、召回率、F值分別提升2.39%、10.61%、6.69%。該實(shí)驗(yàn)結(jié)果一方面證明基于情感詞典改進(jìn)的BiLSTM-CNN和Attention方法在旅游景區(qū)評論分類效果上更優(yōu),另一方面也驗(yàn)證引入情感詞典的機(jī)器學(xué)習(xí)方法的性能更好,體現(xiàn)情感詞典權(quán)重加成及深度學(xué)習(xí)模型所帶來的優(yōu)勢。
為更形象地體現(xiàn)經(jīng)過情感詞典改進(jìn)的BiLSTM-CNN+Attention模型的良好性能,通過訓(xùn)練數(shù)據(jù)和驗(yàn)證數(shù)據(jù)進(jìn)一步探究其學(xué)習(xí)過程,得出如圖3和圖4所示的變化曲線。圖3展現(xiàn)各個(gè)深度學(xué)習(xí)模型隨著迭代次數(shù)增加,其驗(yàn)證集準(zhǔn)確率(Val_Accuracy)隨訓(xùn)練周期(Epoch)變化的曲線。圖4展現(xiàn)各個(gè)深度學(xué)習(xí)模型的誤差隨訓(xùn)練周期變化的曲線。
表3 基于深度學(xué)習(xí)的情感分類算法性能評估Table 3 Performance evaluation of sentiment classification algorithm based on deep learning
表4 基于機(jī)器學(xué)習(xí)的情感分類算法性能評估Table 4 Performance evaluation of sentiment classification algorithm based on machine learning
由圖3可知,與其他各模型相比,基于情感詞典的BiLSTM-CNN+Attention模型訓(xùn)練過程更穩(wěn)定,收斂速度更快,整個(gè)曲線趨于平緩,情感分類準(zhǔn)確率最終穩(wěn)定在0.960的位置,并且優(yōu)于CNN、LSTM、BiLSTM和TextCNN模型。由圖4可知,基于情感詞典的BiLSTM-CNN+Attention模型的誤差(Loss)隨訓(xùn)練周期收斂速度更快,并且迅速平緩地下降至0.124 5位置,整個(gè)模型取得較好收斂效果。
不僅與經(jīng)典的深度學(xué)習(xí)模型、傳統(tǒng)的機(jī)器學(xué)習(xí)模型進(jìn)行綜合性對比實(shí)驗(yàn),還分別對景區(qū)正面評論和負(fù)面評論進(jìn)行評估,其中圖5展示各個(gè)模型正面評論的實(shí)驗(yàn)結(jié)果,圖6展示各個(gè)模型負(fù)面評論的實(shí)驗(yàn)結(jié)果。
從圖5展示的實(shí)驗(yàn)結(jié)果來看,本文方法在測試集上的精確率、召回率和F值分別為0.978 1、0.977 8和0.977 9,它們均高于其他分類模型。其中,本文方法正面評論的F值比TextCNN方法提高0.70個(gè)百分點(diǎn),比BiLSTM方法提高1.27個(gè)百分點(diǎn),比LSTM方法提高1.33個(gè)百分點(diǎn),比CNN方法提高0.88個(gè)百分點(diǎn),比機(jī)器學(xué)習(xí)中表現(xiàn)較好的隨機(jī)森林方法提高2.63個(gè)百分點(diǎn),這進(jìn)一步反映情感詞典對算法模型的優(yōu)化。
圖3 各模型實(shí)驗(yàn)準(zhǔn)確率的變化曲線Fig.3 The Change curves of accuracy of each model
圖4 各模型實(shí)驗(yàn)誤差的變化曲線Fig.4 The Change curves of loss of each model
圖5 正面評論數(shù)據(jù)集性能對比Fig.5 Performance comparison of positive reviews dataset
圖6 負(fù)面評論數(shù)據(jù)集性能對比Fig.6 Performance comparison of negative reviews dataset
圖6展示負(fù)面評論數(shù)據(jù)集的實(shí)驗(yàn)結(jié)果,由于負(fù)面評論數(shù)據(jù)集相對正面評論更少,并且評論的消極特征詞更復(fù)雜,所以其精確率、召回率、F值整體均低于正面評論。其中,本文方法在負(fù)面評論數(shù)據(jù)集中的精確率、召回率和F值最高,分別為0.918 1、0.916 1和0.917 1。相較于TextCNN、BiLSTM、LSTM、CNN和隨機(jī)森林模型,本文方法的F值分別提高2.35%、3.63%、4.36%、2.72%和6.35%。
總之,通過引入大連理工大學(xué)情感詞匯本體庫對貴州景區(qū)評論數(shù)據(jù)進(jìn)行情感詞提取,這些情感特征詞一定程度上影響深度學(xué)習(xí)模型的訓(xùn)練效果,通過加強(qiáng)情感特征詞與分類結(jié)果的映射關(guān)系,進(jìn)一步提升算法的性能。本文提出的情感分類模型能夠有效反映出用戶對景區(qū)服務(wù)及體驗(yàn)的感受,進(jìn)一步挖掘用戶的整體情緒,從而促進(jìn)管理者做出更好的服務(wù)決策。
針對深度神經(jīng)網(wǎng)絡(luò)在處理情感分類任務(wù)時(shí)會(huì)忽略情感特征詞的強(qiáng)度,情感語義關(guān)系單薄,影響分類精度的問題,提出一種改進(jìn)BiLSTM-CNN和注意力機(jī)制的情感分類模型,旨在開展細(xì)粒度情感分類研究。該分類模型通過融合情感詞典優(yōu)化特征詞的權(quán)重,利用CNN模型高效提取代表性的局部特征,引入BiLSTM模型捕獲上下文語義特征,再結(jié)合注意力機(jī)制構(gòu)建句子詞向量,最終由Softmax分類器計(jì)算情感分類結(jié)果。
為驗(yàn)證模型性能,在貴州景區(qū)評論數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明,改進(jìn)BiLSTM-CNN和Attention的情感分類方法在精確率、召回率和F值上均有所提升,提出的模型能夠充分加成情感特征詞的權(quán)重,利用上下文語義特征,提高情感分類性能。本文方法可以應(yīng)用于文本分類、推薦系統(tǒng)、數(shù)據(jù)挖掘、自然語言處理等領(lǐng)域,具有良好的準(zhǔn)確率和實(shí)用性。
未來,一方面將擴(kuò)大實(shí)驗(yàn)數(shù)據(jù)集,研究該算法的普適性;另一方面將結(jié)合深度語義知識,進(jìn)一步提升模型對情感分類性能的影響。