楊書(shū)新,張 楠
(江西理工大學(xué)信息工程學(xué)院,江西贛州 341000)
近年來(lái),隨著網(wǎng)絡(luò)的高速發(fā)展,人們對(duì)社交媒體的使用程度逐漸提高,越來(lái)越多的人愿意在微博、Twitter、Facebook 等社交網(wǎng)絡(luò)平臺(tái)上表達(dá)自己對(duì)某件事或某樣?xùn)|西的態(tài)度或看法,這就產(chǎn)生了大量帶有情感傾向的文本數(shù)據(jù)。通過(guò)對(duì)這些文本數(shù)據(jù)進(jìn)行情感分析,可以更好地理解用戶(hù)對(duì)產(chǎn)品的情感傾向或者對(duì)某熱點(diǎn)事件的關(guān)注程度,由此情感分析技術(shù)應(yīng)運(yùn)而生。情感分析技術(shù)就是處理文本中帶有情感極性的短語(yǔ)或句子的技術(shù)[1]。
利用機(jī)器識(shí)別句子情感極性并不容易,目前主要的做法有根據(jù)情感詞典的規(guī)則判斷方法和基于傳統(tǒng)機(jī)器學(xué)習(xí)統(tǒng)計(jì)方法?;谠~典的方法[2]主要是利用人工標(biāo)注的詞典對(duì)句子中的單詞進(jìn)行極性篩選,然后將這些情感分?jǐn)?shù)累加求均值進(jìn)行極性判斷;但該方法只考慮單個(gè)詞的語(yǔ)義信息,沒(méi)有考慮上下文的語(yǔ)義信息。傳統(tǒng)的基于機(jī)器學(xué)習(xí)的方法采用統(tǒng)計(jì)學(xué)方法,從大量的標(biāo)注數(shù)據(jù)中選取特征,然后利用樸素貝葉斯、支持向量機(jī)(Support Vector Machine,SVM)、決策樹(shù)等機(jī)器學(xué)習(xí)算法對(duì)文本進(jìn)行情感分類(lèi)[3-4]。該方法雖然在一定程度上提高了分類(lèi)的準(zhǔn)確率,分類(lèi)速度也有提升,但是在面向大樣本時(shí)表現(xiàn)不佳,在多分類(lèi)任務(wù)中效果變差,并且對(duì)人工標(biāo)注的需求極大。隨著大數(shù)據(jù)時(shí)代的到來(lái),深度學(xué)習(xí)方法在自然語(yǔ)言處理情感分析方面有了很多的應(yīng)用。Wang 等[5]提出利用長(zhǎng)短時(shí)記憶(Long Short-Term Memory,LSTM)遞歸網(wǎng)絡(luò)對(duì)Twitter數(shù)據(jù)進(jìn)行情緒預(yù)測(cè),在否定測(cè)試集上的優(yōu)異表現(xiàn)表明LSTM 模型具有非常好的捕獲長(zhǎng)序列信息特征的能力。之后,LSTM又被拓展為雙向LSTM 以及門(mén)控循環(huán)單元(Gated Recurrent Unit,GRU)等變體模型。Kim[6]將圖像領(lǐng)域的卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)首次引入到自然語(yǔ)言處理進(jìn)行句子分類(lèi),發(fā)現(xiàn)CNN 可以捕捉文本的局部特征,極大地提高分類(lèi)效果。
使用深度學(xué)習(xí)技術(shù)進(jìn)行情感分析最大的難點(diǎn)就是怎么表示詞向量?,F(xiàn)有的方法大都利用one-hot、Word2Vec[7]、GloVe(Global Vectors for word representation)[8]等詞嵌入工具生成詞向量,但是上述詞嵌入工具在針對(duì)例如“bug”等多義詞時(shí)則會(huì)出現(xiàn)無(wú)法表示多義詞向量的情況,根據(jù)訓(xùn)練語(yǔ)料主題的不同,有可能表示程序錯(cuò)誤的意思,也有可能表示小昆蟲(chóng)的意思。如果使用詞嵌入技術(shù),向量無(wú)法同時(shí)表示這兩種意思。為了解決這個(gè)問(wèn)題,本文提出了一種基于上下文語(yǔ)言模型ELMo(Embedding from Language Model)的文本情感分析模型SLPELMo(Sentiment Lexicon Parallel-ELMo),該模型不僅能夠表示單詞自身的語(yǔ)義信息,還能表示單詞的上下文信息,能根據(jù)不同的上下文產(chǎn)生不同的詞向量,可以解決類(lèi)似“bug”多義詞的語(yǔ)義表達(dá)問(wèn)題。雖然現(xiàn)有的工作已經(jīng)可以針對(duì)上下文生成不同的詞向量,但是在對(duì)文本進(jìn)行特征提取時(shí)依舊存在特征提取不充分的問(wèn)題,導(dǎo)致語(yǔ)義單一,所以本文模型在已有的工作基礎(chǔ)上又融合了情感詞典等外在信息,使語(yǔ)義單一問(wèn)題得到了進(jìn)一步的解決。為了提高訓(xùn)練速度,本文還使用字符卷積神經(jīng)網(wǎng)絡(luò)(char-CNN)初始化ELMo模型的輸入層。
情感詞典能夠體現(xiàn)文本的非結(jié)構(gòu)化特征,它是文本情感分析所需的重要資源,研究者們對(duì)此給予了極大的關(guān)注。
Paltoglou 等[9]在更常見(jiàn)的非正式文本例如在線(xiàn)討論以及Twitter等社交網(wǎng)絡(luò)上,提出了一種無(wú)監(jiān)督的、基于詞匯的方法評(píng)估文本中包含的情感極性并預(yù)測(cè),實(shí)驗(yàn)準(zhǔn)確率可達(dá)86.5%;Qiu 等[10]等提出了一種基于規(guī)則的方法,提取與負(fù)面情緒相關(guān)的觀(guān)點(diǎn)句的主題詞來(lái)作為廣告的關(guān)鍵詞,在automotiveforums.com 論壇語(yǔ)料庫(kù)的實(shí)驗(yàn)中,準(zhǔn)確率可達(dá)55%;Jiang 等[11]在文獻(xiàn)[10]的基礎(chǔ)上對(duì)情感詞典特征進(jìn)行了擴(kuò)充,在Twitter語(yǔ)料的實(shí)驗(yàn)中,分類(lèi)準(zhǔn)確率可達(dá)85.6%。隨著網(wǎng)上一些新詞匯的大量出現(xiàn),基于情感詞典的方法在這些新的語(yǔ)料上表現(xiàn)不佳,甚至出現(xiàn)錯(cuò)誤,并且靈活度不高。對(duì)此研究人員開(kāi)展了基于機(jī)器學(xué)習(xí)的情感分析方法的研究。
傳統(tǒng)的機(jī)器學(xué)習(xí)一般是基于統(tǒng)計(jì)學(xué)的分類(lèi)方法。Pang等[12]通過(guò)比較SVM、最大熵算法和樸素貝葉斯算法在一元特征、二元特征、位置等多種特征下的分類(lèi)效果,在電影影評(píng)數(shù)據(jù)上,發(fā)現(xiàn)SVM和一元特征組合的效果最好,可達(dá)82.9%;之后,Tang等[13]提出了一種情感特定詞嵌入的方法,該方法將特定情感詞與手工選擇的表情符號(hào)和語(yǔ)義詞典結(jié)合,然后利用SVM進(jìn)行情感分類(lèi),在Twitter語(yǔ)料上準(zhǔn)確率可達(dá)87.6%。
自Hinton 等[14]提出了深度學(xué)習(xí)后,深度學(xué)習(xí)在計(jì)算機(jī)視覺(jué)領(lǐng)域取得了巨大的成就,大量自然語(yǔ)言處理領(lǐng)域的學(xué)者嘗試引入深度學(xué)習(xí)的方法,研究發(fā)現(xiàn)深度學(xué)習(xí)方法可以表征文本中更加深層的語(yǔ)義信息,而且基于此的分類(lèi)方法準(zhǔn)確率得到了大幅度的提高。在Bengio等[15]提出了神經(jīng)網(wǎng)絡(luò)語(yǔ)言模型后,自然語(yǔ)言處理中的預(yù)訓(xùn)練技術(shù)開(kāi)始逐漸發(fā)展起來(lái)。Peters等[16]在上述研究的基礎(chǔ)上,提出了一種基于LSTM 的雙層雙向預(yù)訓(xùn)練語(yǔ)言模型ELMo,該模型通過(guò)兩層隱向量以及一層詞嵌入向量的線(xiàn)性組合可以動(dòng)態(tài)地表示詞嵌入向量。趙亞歐等[17]提出了一種融合ELMo 與多尺度卷積神經(jīng)網(wǎng)絡(luò)的情感分析模型,在ELMo 的基礎(chǔ)上使用多尺度卷積網(wǎng)絡(luò)對(duì)詞向量特征進(jìn)行二次提取,實(shí)驗(yàn)結(jié)果表明該方法有效提升了分類(lèi)效果。
為了實(shí)現(xiàn)文本中情感單詞的篩選、解決情感分析中語(yǔ)義單一的問(wèn)題,本文提出了融合情感詞典與上下文語(yǔ)言模型的情感分析模型SLP-ELMo。該模型主要由4 部分組成,結(jié)構(gòu)如圖1所示。
圖1 SLP-ELMo模型結(jié)構(gòu)Fig.1 Architecture of SLP-ELMo model
本文模型的第1 部分是詞嵌入層,主要功能是采用情感詞典對(duì)語(yǔ)料中帶有情感分?jǐn)?shù)的單詞和短語(yǔ)進(jìn)行篩選處理,并將其進(jìn)行向量化表示。本文使用的詞典是情感詞典SentiWordNet 3.0,包含有117 659 條記錄,每條詞條有6 列信息:第1 列POS(Part Of Speech)表示詞性,第2 列ID 表示詞條編碼,第3 列PosScore 表示正向情感值,第4 列NegScore 表示負(fù)向情感值,第5 列SynsetTerms 表示同義詞,第6 列Gloss 表示該詞注釋。SentiWordNet 3.0的部分內(nèi)容如圖2所示。
圖2 情感詞典Fig.2 SentiWordNet
詞嵌入層工作的具體步驟如下:首先對(duì)語(yǔ)料進(jìn)行清洗,去除句子中的鏈接地址(Uniform Resource Locator,URL)、表情符號(hào)等;然后將文本字母小寫(xiě)化。由于在SentiWordNet 中單詞或短語(yǔ)對(duì)應(yīng)不同的詞性具有不同的情感值,因此在與詞典匹配前需要利用Python 的自然語(yǔ)言工具包(Natural Language ToolKit,NLTK)對(duì)單詞進(jìn)行詞性標(biāo)注;最后再利用情感詞典對(duì)語(yǔ)料進(jìn)行篩選,篩選出句子中帶有情感分?jǐn)?shù)的單詞和短語(yǔ)。篩選出單詞和詞組之后,利用Word2Vec 模型訓(xùn)練,得到詞嵌入向量。具體做法是對(duì)于第k個(gè)詞wk,首先獲取其one-hot 編碼hotk,one-hot 編碼維度為整個(gè)詞典的大小Nchar,然后與維度為Nchar×Dchar的嵌入矩陣Mw2v相乘,得到該詞維度為Dchar的緊致編碼Ck,即詞嵌入向量,計(jì)算如式(1)所示:
SLP-ELMo 模型第2 部分是語(yǔ)義學(xué)習(xí)層。該層將情感詞典篩選出的單詞wk輸入到char-CNN 進(jìn)行卷積操作,再利用ELMo訓(xùn)練,得到詞嵌入向量,再將詞嵌入向量通過(guò)雙向LSTM模型訓(xùn)練成帶有上下文語(yǔ)義信息的ELMo 詞向量ELMok。ELMo模型結(jié)構(gòu)如圖3所示。
圖3 ELMo模型結(jié)構(gòu)Fig.3 Architecture of ELMo model
ELMo 模型與神經(jīng)網(wǎng)絡(luò)語(yǔ)言模型(Neural Network Language Model,NNLM)思想類(lèi)似,也是通過(guò)構(gòu)造語(yǔ)言模型來(lái)預(yù)測(cè)下一個(gè)詞,從而獲取詞向量。一個(gè)含有n個(gè)詞的句子S={w1,w2,…,wi,…,wn},第k個(gè)詞wk出現(xiàn)的概率P(wk)與前面k-1 個(gè)詞(w1,w2,…,wk-1)有關(guān),因此整個(gè)句子出現(xiàn)的概率P(w1,w2,…,wk-1)計(jì)算如式(2)所示:
若使用LSTM 來(lái)建模語(yǔ)言模型,則單詞wk對(duì)應(yīng)LSTM 的隱層狀態(tài)hk。如果LSTM 有L層Cell,則單詞wk共有L個(gè)隱層狀態(tài)。將最后一層輸入softmax 得到輸出ok,ok為語(yǔ)言模型中單詞wk出現(xiàn)的概率P(wk|w1,w2,…,wk-1)。
上一步是對(duì)前向模型建模,但一個(gè)單詞wk不僅可以順序預(yù)測(cè),也可以逆向預(yù)測(cè),因此,對(duì)后向模型建模。將(wn,wn-1,…,wk+1)依次輸入后向模型,得到隱層狀態(tài)。同理,得到輸出ok',ok'為后向語(yǔ)言模型中單詞wk出現(xiàn)的概率
ELMo 采用L=2的BiLSTM(Bi-directional LSTM)結(jié)構(gòu),另外在兩層Cell 之間還有一層殘差連接,作用是把第1 層LSTM的輸入加到LSTM的輸出上,目的是保持網(wǎng)絡(luò)訓(xùn)練的穩(wěn)定。
最后每個(gè)單詞可以生成3個(gè)Embedding,分別是單詞wk對(duì)應(yīng)的詞嵌入層向量、第1層LSTM的隱層輸出、第2層LSTM 的隱層輸出,最后將3個(gè)Embedding 線(xiàn)性組合,獲得wk的ELMo向量表示,其計(jì)算如式(3)所示:
其中:γ是控制ELMo向量組合大小的參數(shù);s是softmax層間歸一化的參數(shù)。
因?yàn)锽iLSTM 有兩層,深層的Embedding 會(huì)帶有更多的語(yǔ)義信息,因此本文只選取ELMok詞向量的最后一層作為情感分類(lèi)的基向量,并通過(guò)在最后1層添加注意力機(jī)制的方法調(diào)整權(quán)重,以達(dá)到更好訓(xùn)練詞向量的目的,以此作為新的ELMo 詞向量outputatt。具體做法是對(duì)于第i個(gè)詞wi,將BiLSTM 最后1 層該詞的輸出(i=1,2,…,n)通過(guò)tanh函數(shù)得到向量,再對(duì)調(diào)用softmax函數(shù)得到注意力權(quán)重,計(jì)算式如式(4)、(5)所示:
其中:αi表示第i個(gè)詞對(duì)于當(dāng)前文本的重要程度;Watt和batt為注意力權(quán)重矩陣和偏置,可通過(guò)訓(xùn)練語(yǔ)料自動(dòng)學(xué)習(xí)。最后,通過(guò)加權(quán)平均方法得到新的ELMo詞向量outputatt,如式(6):
SLP-ELMo 模型第3 部分是特征融合層,通過(guò)將新的ELMo 詞向量outputatt與詞嵌入向量Ck并行融合,作為分類(lèi)層的輸入,計(jì)算式如式(7):
SLP-ELMo 模型第4 部分是分類(lèi)層,該層通過(guò)接收上述得到的融合特征inputclassify,經(jīng)過(guò)softmax 函數(shù)在分類(lèi)層輸出正向或負(fù)向分類(lèi)概率Pc,其計(jì)算式如式(8)、(9):
其中:Wclassify、bclassify分別為權(quán)重矩陣和偏置向量;C為分類(lèi)類(lèi)別數(shù)。
最后模型使用整個(gè)句子中所有單詞wk對(duì)應(yīng)概率乘積的最大似然作為損失函數(shù),其計(jì)算式如式(10)所示:
本文的實(shí)驗(yàn)在兩個(gè)數(shù)據(jù)集上進(jìn)行:1)IMDB 影評(píng)數(shù)據(jù)集,平均詞數(shù)為268,屬于長(zhǎng)文本數(shù)據(jù)集;2)斯坦福影評(píng)情感樹(shù)庫(kù)(Stanford Sentiment Treebank,SST-2)數(shù)據(jù)集,其中SST 數(shù)據(jù)集數(shù)據(jù)標(biāo)簽為5 類(lèi),通過(guò)去除其中的中立評(píng)論數(shù)據(jù),將數(shù)據(jù)集劃分為2 分類(lèi)數(shù)據(jù)集,平均詞數(shù)為19,屬于短文本數(shù)據(jù)集。IMDB和SST-2的訓(xùn)練集和測(cè)試集規(guī)模信息如表1所示。
表1 實(shí)驗(yàn)數(shù)據(jù)集Tab.1 Datasets for experiments
本實(shí)驗(yàn)采用準(zhǔn)確率(Accuracy,Acc)、召回率(Recall,R)、F1 值(F1-measure)、查準(zhǔn)率(Precision,P)作為實(shí)驗(yàn)的評(píng)價(jià)標(biāo)準(zhǔn)對(duì)模型進(jìn)行評(píng)價(jià),其中,召回率R 是針對(duì)原來(lái)的樣本而言的,它表示樣本中的正例有多少被預(yù)測(cè)正確;查準(zhǔn)率是針對(duì)預(yù)測(cè)結(jié)果而言的,它表示預(yù)測(cè)為正的樣本有多少是真正的正樣本;F1 分?jǐn)?shù)則是P和R指標(biāo)的調(diào)和平均值,同時(shí)考慮兩者,使兩者都達(dá)到最高,取得平衡。使用這些指標(biāo)可以全面評(píng)估模型的效果。準(zhǔn)確率Acc、召回率R、查準(zhǔn)率P和F1 值分別定義為式(11)、(12)、(13)、(14):
其中:TP(True Positive)、TN(True Negative)、FP(False Positive)、FN(False Negative)的含義如表2所示。
表2 分類(lèi)結(jié)果混淆矩陣Tab.2 Confusion matrix of classification results
模型第一部分訓(xùn)練詞嵌入向量時(shí)采用Word2Vec 工具,Word2Vec詞嵌入的維度、LSTM 隱層維度、ELMo 的輸出維度、char-CNN 模型dropout 率、學(xué)習(xí)率、IMDB 語(yǔ)料的批尺寸、SST-2語(yǔ)料的批尺寸、模型的正則化等參數(shù)設(shè)置如表3所示。
表3 所提模型參數(shù)設(shè)置Tab.3 Parameter setting of the proposed model
為了驗(yàn)證本文提出的情感分析模型SLP-ELMo 的有效性,將其與CNN 模型、LSTM 模型、Bi-LSTM 模型以及融合了注意力機(jī)制與LSTM的CWPAT-Bi-LSTM模型、W2V-Att-LSTM模型分別在IMDB和SST-2兩個(gè)數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)對(duì)比。
1)CNN模型:原始卷積網(wǎng)絡(luò)模型,利用不同的卷積核對(duì)語(yǔ)料進(jìn)行卷積,提取特征,最后輸入一個(gè)池化層進(jìn)行分類(lèi)。
2)LSTM 模型:?jiǎn)蜗虻腖STM 網(wǎng)絡(luò)模型,只能順序從前往后對(duì)語(yǔ)料進(jìn)行特征提取,使用最后一個(gè)隱層向量更新參數(shù)。
3)Bi-LSTM 模型:基于LSTM 網(wǎng)絡(luò)的雙向模型,能對(duì)單詞前面和后面的詞同時(shí)進(jìn)行特征提取,融合了單詞過(guò)去和未來(lái)的信息。
4)趙富等[18]提出的融合詞性的雙注意力機(jī)制的雙向長(zhǎng)短期記憶網(wǎng)絡(luò)模型(Character,Word and Part of-speech ATtention model based on Bidirectional Long Short-Term Memory,CWPAT-Bi-LSTM),該模型融合了字、詞和詞性的深層語(yǔ)義特征,并用注意力機(jī)制加權(quán)有情感信息的部分進(jìn)行情感分析。
5)胡榮磊等[19]提出的基于循環(huán)神經(jīng)網(wǎng)絡(luò)和注意力機(jī)制的模型(Word2Vec-Attention Long Short-Term Memory,W2V-Att-LSTM),其方法是將長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)模型和前饋?zhàn)⒁饬δP拖嘟Y(jié)合,利用Word2Vec 工具訓(xùn)練詞向量作為L(zhǎng)STM 的輸入,之后再利用注意力機(jī)制對(duì)輸出特征進(jìn)行進(jìn)一步的特征提取,最后輸入分類(lèi)器進(jìn)行情感分析。
各個(gè)模型在IMDB 數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果如表4 所示。從表4可以看出,在IMDB 數(shù)據(jù)集上,LSTM 模型及其拓展模型的效果均優(yōu)于CNN 模型,添加了注意力機(jī)制的模型整體效果優(yōu)于單一模型的分類(lèi)效果。Bi-LSTM 模型由于增加了后向傳播單元,可以同時(shí)考慮上下文信息,所以分類(lèi)效果較LSTM 模型更好。CWPAT-Bi-LSTM 模型和W2V-Att-LSTM 模型都基于Bi-LSTM 和注意力機(jī)制,但后者因?yàn)槭褂昧薟ord2Vec 工具對(duì)語(yǔ)料進(jìn)行了預(yù)訓(xùn)練,相較單純?nèi)诤献衷~和詞性來(lái)說(shuō),Word2Vec 詞向量對(duì)特征的表征效果更好。本文提出的SLPELMo 融合模型在LSTM 和注意力機(jī)制的基礎(chǔ)上又在輸入層進(jìn)行了字符卷積,增加了模型的通用性,在分類(lèi)層融合了Word2Vec 詞向量,充分發(fā)揮了融合方法的優(yōu)勢(shì)。從整體來(lái)看,在長(zhǎng)文本數(shù)據(jù)集上,SLP-ELMo 模型在準(zhǔn)確率、召回率、F1值等性能指標(biāo)方面都優(yōu)于其他對(duì)比模型。
表4 IMDB數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果 單位:%Tab.4 Experimental results on IMDB dataset unit:%
各個(gè)模型在SST-2 數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果如表5 所示。從表5 可以看出,在SST-2 數(shù)據(jù)集上,CNN 模型卻比LSTM 模型分類(lèi)效果更好,這表明CNN 模型在短文本(SST-2)上對(duì)文本信息特征的提取要比LSTM 模型好。結(jié)合表4的結(jié)果,可以發(fā)現(xiàn)CNN 模型提取局部特征的能力更強(qiáng),LSTM 模型提取單詞上下文的能力更突出。對(duì)比表4 可以看出,雖然數(shù)據(jù)集的語(yǔ)料長(zhǎng)短不同,但本文提出的SLP-ELMo 模型融合了CNN 和LSTM 的優(yōu)點(diǎn),在兩個(gè)數(shù)據(jù)集上各個(gè)性能指標(biāo)方面都表現(xiàn)優(yōu)異,表明本文模型具有很好的泛化能力。
表5 SST-2數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果 單位:%Tab.5 Experimental results on SST-2 dataset unit:%
自然語(yǔ)言處理中情感分析的實(shí)驗(yàn)對(duì)比一般用準(zhǔn)確率的值來(lái)衡量實(shí)驗(yàn)效果,結(jié)合表4 和表5 中數(shù)據(jù)可以看出,本文提出的模型在不同的數(shù)據(jù)集上準(zhǔn)確率都有明顯的優(yōu)勢(shì)。在長(zhǎng)文本特征提取上,由于Bi-LSTM 記憶了前向與后向的語(yǔ)義信息,因此模型效果非常顯著。本文提出的基于Bi-LSTM 的SLPELMo 模型比目前分類(lèi)效果較好W2V-Att-LSTM 準(zhǔn)確率在IMDB 數(shù)據(jù)集上提升了3.2 個(gè)百分點(diǎn),在SST-2 數(shù)據(jù)集上比W2V-Att-LSTM模型準(zhǔn)確率提升了2.4個(gè)百分點(diǎn)。
實(shí)驗(yàn)還從Loss 值與訓(xùn)練輪次的角度進(jìn)行對(duì)比,比較了原始ELMo 模型與本文模型的Loss 值與訓(xùn)練輪數(shù)之間的關(guān)系。實(shí)驗(yàn)分別在IMDB 數(shù)據(jù)集和SST-2數(shù)據(jù)集上進(jìn)行。根據(jù)每150輪的損失值記分,然后輸出打印,實(shí)驗(yàn)一共3 150 輪,記分21次。對(duì)比結(jié)果如圖4和圖5所示。
從圖4 可以看出,本文模型在前600 輪以?xún)?nèi)收斂快于ELMo 模型,模型的準(zhǔn)確率更高;600 輪以后兩個(gè)模型逐漸趨于平穩(wěn),本文模型Loss值較ELMo模型更低,誤差更小。
從圖5 可以看出,兩模型的誤差線(xiàn)要小于圖4 中,表明在短文本數(shù)據(jù)集上兩模型的損失值更接近,也說(shuō)明兩模型更適合于較長(zhǎng)文本。
圖4 IMDB數(shù)據(jù)集上的Loss值訓(xùn)練曲線(xiàn)Fig.4 Training curve of Loss value on IMDB dataset
圖5 SST-2數(shù)據(jù)集上的Loss值訓(xùn)練曲線(xiàn)Fig.5 Training curve of Loss value on SST-2 dataset
對(duì)比圖4 和圖5 可以看出,本文模型都比原始ELMo 模型Loss值更低,這表明本文模型不僅在準(zhǔn)確率上有更好的表現(xiàn),在收斂速度上也有優(yōu)勢(shì)。
另外,本文研究的問(wèn)題是二分類(lèi)問(wèn)題,所對(duì)應(yīng)的損失函數(shù)為0-1 損失,所以L(fǎng)oss 值本身映射的是分類(lèi)準(zhǔn)確度。對(duì)比圖4~5,在SST-2 數(shù)據(jù)集上的Loss 值整體高于IMDB 數(shù)據(jù)集上的Loss值,這表明長(zhǎng)文本中所帶的特征要多于短文本,因此在訓(xùn)練時(shí)模型可以從長(zhǎng)文本中學(xué)習(xí)到更多的特征,分類(lèi)準(zhǔn)確率更高。
本文提出了一種融合情感詞典與上下文語(yǔ)言模型的情感分析模型SLP-ELMo,可以根據(jù)上下文動(dòng)態(tài)調(diào)整單詞的詞嵌入,解決了詞嵌入表示語(yǔ)義單一的問(wèn)題。此外,該模型在詞嵌入層使用了字符卷積,使詞向量變?yōu)樽址?jí)向量,能有效避免產(chǎn)生未登錄詞(Out Of Vocabulary,OOV)的問(wèn)題。在長(zhǎng)短文本數(shù)據(jù)集上分別進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明本文模型有很好的通用性以及收斂性。
本文模型在特征提取能力上有所欠缺,而且ELMo 模型是預(yù)訓(xùn)練模型,需要大量的語(yǔ)料才能訓(xùn)練出好的模型,否則在訓(xùn)練集以及測(cè)試集上就會(huì)出現(xiàn)過(guò)擬合的問(wèn)題。而Transformer模型基于CBOW 的思想提出了Masked 語(yǔ)言模型很好地解決了這個(gè)問(wèn)題,基于自注意力機(jī)制的Transformer 模型在自然語(yǔ)言處理領(lǐng)域打破了多個(gè)任務(wù)的最新記錄。下一步將嘗試把Transformer 模型與Bi-LSTM 模型融合,發(fā)揮各自模型的優(yōu)勢(shì),研究分類(lèi)效果更好的模型。