翟學(xué)明,魏巍
(華北電力大學(xué) 控制與計(jì)算機(jī)工程學(xué)院,河北 保定 071003)
人的發(fā)展與溝通密不可分。有研究表明,人類(lèi)的理性學(xué)習(xí)依賴于情緒[1]。隨著互聯(lián)網(wǎng)的興起,人們開(kāi)始習(xí)慣在網(wǎng)上交流,發(fā)表自己對(duì)某件事情的看法,網(wǎng)絡(luò)的保護(hù)讓人們更加真實(shí)地表達(dá)自己的情感。因此,分析這些包含用戶情感信息的觀點(diǎn)對(duì)于輿情監(jiān)控、營(yíng)銷(xiāo)策略等方面具有非常良好的效果。情感分析,又名意見(jiàn)挖掘、觀點(diǎn)分析等,它是通過(guò)計(jì)算機(jī)來(lái)幫助人們?cè)L問(wèn)和組織在線意見(jiàn),分析、處理、總結(jié)和推理主觀文本的過(guò)程[2]。
在情感分析研究中最重要的就是情感分類(lèi)技術(shù)。情感分類(lèi)主要是針對(duì)文本中表達(dá)的情感進(jìn)行識(shí)別和分類(lèi),如積極、消極等,進(jìn)而得到潛在的信息。目前研究較多的情感分類(lèi)技術(shù)主要分為以下3種:第1種是基于情感詞典的方法[3]?;谇楦性~典的方法主要是將文檔中的句子,找出不同詞性的詞并計(jì)算其相應(yīng)得分。這種方法過(guò)于依賴情感詞典,具有嚴(yán)重的領(lǐng)域特征,效果并不理想[4];第2種是基于人工提取特征分類(lèi)的方法?;谌斯ぬ崛√卣鞣诸?lèi)的方法是一種傳統(tǒng)機(jī)器學(xué)習(xí)的方法,該方法需要大量已經(jīng)被事先標(biāo)注好的數(shù)據(jù),然后再利用支持向量機(jī)[5]、樸素貝葉斯、條件隨機(jī)場(chǎng)等機(jī)器學(xué)習(xí)算法進(jìn)行情感分類(lèi)。其中,條件隨機(jī)場(chǎng)是一種判別式概率學(xué)習(xí)模型,在序列標(biāo)注、命名實(shí)體識(shí)別、中文分詞等方面都具有很好的效果;第3種方法,即基于深度學(xué)習(xí)的方法[6]。深度學(xué)習(xí)模型在不需要人工標(biāo)注的前提下,能夠充分挖掘文本的情感信息,得到良好的分類(lèi)效果。
卷積神經(jīng)網(wǎng)絡(luò)(CNN)最初廣泛應(yīng)用于數(shù)字圖像處理領(lǐng)域,并迅速應(yīng)用于情感分析。Collobert等[7]首次提出將CNN用于解決NLP詞性標(biāo)注等問(wèn)題。Kim[8]提出將CNN應(yīng)用于情感分析任務(wù)并取得了良好的效果。隨著CNN在情感分類(lèi)上的廣泛應(yīng)用,其缺陷也越來(lái)越明顯。CNN只能挖掘文本的局部信息,對(duì)于長(zhǎng)距離依賴的捕捉效果有所欠缺。而循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)彌補(bǔ)了這方面的不足[9]。RNN相較于CNN具有記憶功能,能夠?qū)崿F(xiàn)在序列化數(shù)據(jù)中捕捉動(dòng)態(tài)信息,在情感分類(lèi)任務(wù)中取得了良好的效果。Tang等[10]對(duì)篇章級(jí)文本進(jìn)行建模,提出了一種層次化RNN模型。RNN雖然適用于上下文處理,但在處理長(zhǎng)距離依賴問(wèn)題的情況下,會(huì)產(chǎn)生梯度爆炸的情況。針對(duì)此問(wèn)題,Hochreiter等[11]提出了LSTM模型,對(duì)RNN的內(nèi)部構(gòu)造進(jìn)行了優(yōu)化。Zhu等[12]利用LSTM對(duì)文本進(jìn)行建模,將其劃分為詞序列,進(jìn)而進(jìn)行情感分類(lèi)。傳統(tǒng)的LSTM只能有效地使用上文信息,忽略了向下的信息,這在一定程度上影響了情感分類(lèi)的準(zhǔn)確性。白靜等[13]利用了Bi-LSTM進(jìn)行建模,將詞向量分別通過(guò)Bi-LSTM與CNN,最后再融合注意力機(jī)制,取得了更好的效果,但也存在計(jì)算復(fù)雜度過(guò)大的不足。為了減少計(jì)算量,結(jié)構(gòu)簡(jiǎn)單的GRU被人們提出。劉洋[14]提出將GRU應(yīng)用于時(shí)間序列任務(wù)并取得了良好的效果。
以上學(xué)者在情感分析問(wèn)題上已經(jīng)認(rèn)識(shí)到模型在訓(xùn)練上存在的時(shí)間長(zhǎng),數(shù)據(jù)量大,上下文信息獲取距離短的局限并做出了改進(jìn),但是并沒(méi)有突破深度學(xué)習(xí)的限制。針對(duì)上面發(fā)現(xiàn)的問(wèn)題,本文提出了一種混合神經(jīng)網(wǎng)絡(luò)和CRF相結(jié)合的情感分析模型。本文提出的模型綜合考慮篇章中句子的上下文語(yǔ)境,在保留語(yǔ)序的同時(shí)更快更充分地獲取語(yǔ)義信息。本文模型將一段文本按照句子劃分為不同的區(qū)域,利用CNN與Bi-GRU以并行訓(xùn)練的方式從句子中獲取更多的語(yǔ)義信息和結(jié)構(gòu)特征。同時(shí),采用條件隨機(jī)場(chǎng)作為分類(lèi)器,計(jì)算整個(gè)文本的情感概率分布,從而達(dá)到預(yù)測(cè)情感類(lèi)別的目的。
情感分析早在2000年初就已經(jīng)成為NLP領(lǐng)域的熱門(mén)研究領(lǐng)域[15]。情感分析問(wèn)題是一個(gè)多層面的問(wèn)題,具有一定的復(fù)雜性,它包含很多相互關(guān)聯(lián)的上下文關(guān)系。在同一句中,文章中表達(dá)的情感類(lèi)別可能與僅由句子表達(dá)的情感類(lèi)別有很大不同。傳統(tǒng)情感分析的過(guò)程如圖1所示。
圖 1 情感分析過(guò)程圖Fig. 1 Process diagram of sentiment analysis
情感分析主要應(yīng)用于對(duì)文本評(píng)論或觀點(diǎn)的處理,評(píng)論文本具有篇幅較短、文本格式不規(guī)范等問(wèn)題。例如其中的標(biāo)點(diǎn)符號(hào)、網(wǎng)絡(luò)流行語(yǔ)和用戶昵稱(chēng)等內(nèi)容都會(huì)給情感分析任務(wù)帶來(lái)困難。因此,情感分析首先要減少文本的噪音,對(duì)其進(jìn)行預(yù)處理。本文采用中國(guó)科學(xué)院計(jì)算技術(shù)研究所開(kāi)發(fā)的漢語(yǔ)分詞系統(tǒng)NLPIR對(duì)評(píng)論文本進(jìn)行分詞[16],繼而主要針對(duì)標(biāo)點(diǎn)符號(hào)和用戶昵稱(chēng)等字符串進(jìn)行去除噪聲處理。詞語(yǔ)的向量表示是指從詞語(yǔ)到實(shí)數(shù)維向量空間的復(fù)雜映射。目前,比較常見(jiàn)的單詞向量訓(xùn)練模型有CBOW模型和Skip-gram模型,這兩個(gè)模型在結(jié)構(gòu)上是相似的。Mikolov等[17]針對(duì)這兩種詞向量提取的方法進(jìn)行了深刻的分析,指出了其預(yù)測(cè)范圍受限的不足。
本文將語(yǔ)言模型和情感分析模型聯(lián)合訓(xùn)練,通過(guò)語(yǔ)言模型獲取語(yǔ)義信息,利用混合神經(jīng)網(wǎng)絡(luò)作為語(yǔ)言模型對(duì)分詞后的文本進(jìn)行向量表示和特征提取,對(duì)每一個(gè)經(jīng)過(guò)混合神經(jīng)網(wǎng)絡(luò)的輸出特征實(shí)行打分制。這種方法使訓(xùn)練模型不再依賴詞向量訓(xùn)練模型,而是一個(gè)端到端的整體過(guò)程,是一種數(shù)據(jù)驅(qū)動(dòng)的方法,具有更高的準(zhǔn)確性。
現(xiàn)有文本情感分析研究工作大多存在模型訓(xùn)練時(shí)間長(zhǎng),上下文信息學(xué)習(xí)不充分的問(wèn)題,本文提出將混合神經(jīng)網(wǎng)絡(luò)與條件隨機(jī)場(chǎng)相結(jié)合,首先利用混合神經(jīng)網(wǎng)絡(luò)獲取文本的特征信息,再將其輸入到條件隨機(jī)場(chǎng)分類(lèi)器中。本文模型獲取到的特征更充分,訓(xùn)練速度也比以往模型更快,具有更好的分類(lèi)效果。
本文將進(jìn)行分詞后的句子的離散one-hot表示映射到低維空間形成稠密的詞向量,低維詞向量作為模型的輸入,進(jìn)行卷積池化后,在輸出端融入低維詞向量經(jīng)過(guò)Bi-GRU神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)到的結(jié)構(gòu)特征。模型將分別通過(guò)混合神經(jīng)網(wǎng)絡(luò)得到的句子的特征表示拼接在一起,對(duì)每一個(gè)經(jīng)過(guò)混合神經(jīng)網(wǎng)絡(luò)的輸出特征進(jìn)行打分。針對(duì)詞語(yǔ)在混合神經(jīng)網(wǎng)絡(luò)模型中生成的標(biāo)簽可能存在的非法序列從而導(dǎo)致數(shù)據(jù)失效的問(wèn)題,本文在混合神經(jīng)網(wǎng)絡(luò)模型接入CRF層,將得分輸出特征作為 CRF的發(fā)射概率,并使用維特比算法獲得概率最高的情緒類(lèi)別。本文過(guò)程的示意圖如圖2所示。
圖 2 基本過(guò)程示意Fig. 2 Schematic diagram of basic process
混合神經(jīng)網(wǎng)絡(luò)的構(gòu)造如圖3所示,本文模型將一段文本按照句子劃分為不同的區(qū)域,以每個(gè)區(qū)域的低維詞向量作為輸入。低維詞向量分別經(jīng)過(guò)兩種神經(jīng)網(wǎng)絡(luò),經(jīng)過(guò)CNN輸出的句子特征為fc, 經(jīng)過(guò)Bi-GRU輸出的句子特征為fg,將fc與fg拼接起來(lái)并經(jīng)過(guò)Softmax函數(shù)后的特征向量S′進(jìn)行打分,作為CRF分類(lèi)器的輸入。
本文的思路是將一段文本按照句子劃分為不同的區(qū)域,將每個(gè)句子的低維詞向量作為模型的輸入,通過(guò)CNN模型進(jìn)行卷積池化再輸出。
詞向量映射層:假設(shè)區(qū)域中詞語(yǔ)的個(gè)數(shù)為M,每個(gè)詞向量有k維特征,則所有詞向量都在區(qū)域矩 陣V∈Rk×M中。
圖 3 混合神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)Fig. 3 Structure diagram of Hybrid neural network
卷積層:每個(gè)區(qū)域ri可以表示為矩陣,然后使用過(guò)濾器D進(jìn)行卷積以學(xué)習(xí)Ngram特征。過(guò)濾器Fd(1≤d≤D)在每個(gè)窗口卷積后獲得映射值,即
常用的激活函數(shù)有Relu函數(shù)、Tanh函數(shù)和Sigmoid函數(shù)。由于不同的功能特性,Sigmoid和Tanh函數(shù)在接近飽和區(qū)域時(shí)傾向于梯度消失,從而減慢收斂速度。為了增強(qiáng)網(wǎng)絡(luò)適應(yīng)和加速收斂的能力,該模型應(yīng)用ReLU激活函數(shù)。濾波器逐漸遍歷,可以得到輸出矩陣:
不同區(qū)域的文本長(zhǎng)度不同,對(duì)應(yīng)的yd的維度也不同。因此,本文將語(yǔ)料庫(kù)中CNN輸入最大長(zhǎng)度設(shè)為N。當(dāng)輸入長(zhǎng)度小于N時(shí),將添加幾個(gè)分布均勻的隨機(jī)向量U(-0.25, 0.25)。
池化層:本文中Max-pooling操作的優(yōu)點(diǎn)是Max-pooling可以全局過(guò)濾文本特征,減少參數(shù)數(shù)量,過(guò)濾噪聲,減少信息冗余,并有效地減少過(guò)度擬合的問(wèn)題。其次,Max-pooling還可以提取不同區(qū)域內(nèi)的局部依賴關(guān)系,保留最顯著的信息。通過(guò)pooling操作,每個(gè)過(guò)濾器可以取一個(gè)值,池化層最終產(chǎn)生的文本向量特征為fc,,作為下一層的輸入。
在本文中卷積神經(jīng)網(wǎng)絡(luò)的池化策略為Maxpooling,對(duì)特征具有旋轉(zhuǎn)不變性。然而對(duì)于情感分類(lèi)任務(wù),特征的位置信息至關(guān)重要,Max-pooling卻將其丟棄。為了彌補(bǔ)這個(gè)不足,本文引入雙向GRU神經(jīng)網(wǎng)絡(luò)(Bi-GRU)作為詞向量的另一種特征提取方式來(lái)對(duì)CNN的結(jié)果進(jìn)行補(bǔ)充。
Bi-GRU是GRU的改進(jìn),它可以在前后方向同時(shí)獲取上下文信息,相比GRU能夠獲得更高的準(zhǔn)確率。不僅如此,Bi-GRU還具有復(fù)雜度低,對(duì)字向量依賴性低,響應(yīng)時(shí)間快的優(yōu)點(diǎn)。在Bi-GRU結(jié)構(gòu)中,在每個(gè)訓(xùn)練序列之前和之后都存在循環(huán)神經(jīng)網(wǎng)絡(luò)。在t時(shí)刻,Bi-GRU單元激活值ht同時(shí)受到t-1時(shí)刻激活值ht-1,候選激活值ht和更新門(mén)z的控制。其計(jì)算方式如式(3)、(4),⊙ 表示元素相乘:
對(duì)于序列“我很開(kāi)心”,使用Bi-GRU進(jìn)行特征 獲取的具體過(guò)程如圖4所示。
圖 4 Bi-GRU獲取特征過(guò)程Fig. 4 Process diagram of Bi-GRU obtain feature
在本文中,fc與fg采用 Concatenate方式對(duì)句子的特征進(jìn)行融合處理,Concatenate方法可以將不同的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)生成的句向量進(jìn)行拼接,獲得的特征向量S′用作生成CRF分類(lèi)器的發(fā)射概率的基礎(chǔ)。
S′進(jìn)行線性變換后,得到對(duì)應(yīng)詞語(yǔ)所屬情感類(lèi)別的分?jǐn)?shù)k:
式中:U為權(quán)值矩陣,b為偏置量。當(dāng)前詞語(yǔ)所屬情感類(lèi)別的得分為k1k2···km。k的維度為m,m代表情感的分類(lèi)數(shù)。
將對(duì)應(yīng)詞語(yǔ)所屬情感類(lèi)別的分?jǐn)?shù)k輸入Softmax函數(shù)中,針對(duì)文本中的大量詞匯導(dǎo)致的向量維度過(guò)高,計(jì)算量大的問(wèn)題,本文采用噪聲對(duì)比估計(jì)[18]方法對(duì)Softmax函數(shù)進(jìn)行最大似然估計(jì),運(yùn)用基于采樣的原理使模型得到有效訓(xùn)練,目標(biāo)是使正樣本概率達(dá)到最大值的同時(shí)讓負(fù)樣本的概率盡可能的小。本文雙向網(wǎng)絡(luò)的損失函數(shù)定義為
其中文本wt的詞向量表示為vwt。在本文中,從維度為V的負(fù)樣本集合N中,收集單個(gè)單詞作為負(fù)樣例。
則情感類(lèi)別的分?jǐn)?shù)輸入Softmax函數(shù)后得到概率為
式中:yi代表當(dāng)前序列的情感類(lèi)別為第i維,yi的默認(rèn)值為1。當(dāng)yi不符合條件時(shí),yi默認(rèn)值為0。pw即為CRF分類(lèi)器的發(fā)射概率。
CRF分類(lèi)器模型和神經(jīng)網(wǎng)絡(luò)分類(lèi)器模型各自具有優(yōu)點(diǎn)和不足。CRF模型需要人工提前對(duì)語(yǔ)料信息進(jìn)行標(biāo)注,手動(dòng)設(shè)計(jì)詞的詞性、程度等特征,而神經(jīng)網(wǎng)絡(luò)模型可以學(xué)習(xí)訓(xùn)練數(shù)據(jù)自動(dòng)生成特征向量,取得更好的效果[19]。但是,神經(jīng)網(wǎng)絡(luò)模型往往需要更長(zhǎng)的訓(xùn)練時(shí)間,且神經(jīng)網(wǎng)絡(luò)模型的有些輸出在命名實(shí)體識(shí)別上是不合法的,因此有必要使用 CRF隨后將命名實(shí)體的規(guī)則添加到序列標(biāo)記過(guò)程中。本文根據(jù)CRF與神經(jīng)網(wǎng)絡(luò)模型各自的特點(diǎn)進(jìn)行組合,得到在性能上更具優(yōu)勢(shì)的聯(lián)合模型[20]。
CRF模型的學(xué)習(xí)與預(yù)測(cè)是在樣本的多個(gè)特征上進(jìn)行的。CRF模型本身可以生成特征向量并進(jìn)行分類(lèi),本文使用混合神經(jīng)網(wǎng)絡(luò)提取的特征作為中間量,替換原公式中的向量值。
CRF分類(lèi)器模型中的發(fā)射概率是指序列中的單詞屬于每個(gè)情感分類(lèi)的概率,即為pw。轉(zhuǎn)移概率是從標(biāo)簽類(lèi)到相鄰標(biāo)簽類(lèi)的概率。傳統(tǒng)CRF分類(lèi)器的發(fā)射概率是根據(jù)特征模版生成的,但是本文為了獲得更好的上下文信息,使用混合神經(jīng)網(wǎng)絡(luò)自動(dòng)獲取的特征作為發(fā)射概率。本文CRF分類(lèi)器模型發(fā)射概率計(jì)算公式為
可以獲得單詞的發(fā)射概率乘以轉(zhuǎn)移概率的概率。計(jì)算公式如下:
其中 Φ (ywt-1,ywt) 表示從ywt-1到y(tǒng)wt情感類(lèi)別標(biāo)識(shí) 概率的查找。CRF模型選擇結(jié)果序列中概率最高的類(lèi)別作為最終標(biāo)記結(jié)果。CRF模型訓(xùn)練的目標(biāo)是使預(yù)測(cè)序列的概率盡量接近目標(biāo)序列的概率,兩個(gè)概率之間的差值稱(chēng)為損失值,計(jì)算公式如下:
式中:m ax(ptw) 為預(yù)測(cè)序列中最大概率值;ytw為目標(biāo)序列的概率值。CRF模型的輸出用于通過(guò)維特比算法找到具有最高概率的情緒類(lèi)別,然后判斷 整個(gè)章節(jié)的情緒。
本文選用NLPCC(natural language processing and Chinese computing),即自然語(yǔ)言處理及中文計(jì)算會(huì)議中公開(kāi)的2014年任務(wù)2中的中文文本作為數(shù)據(jù)集,來(lái)驗(yàn)證本文模型的有效性。該數(shù)據(jù)集以商品的評(píng)價(jià)為主,文本長(zhǎng)度適中。為了更好地對(duì)比訓(xùn)練模型的分類(lèi)效果,實(shí)驗(yàn)將數(shù)據(jù)集按照8∶2的比例分為訓(xùn)練集和測(cè)試集。通過(guò)進(jìn)行多次重復(fù)實(shí)驗(yàn),選用實(shí)驗(yàn)的平均值作為最終結(jié)果,以此評(píng)估模型的性能。數(shù)據(jù)集的詳細(xì)信息如表1所示。
表 1 實(shí)驗(yàn)數(shù)據(jù)信息Table 1 Experimental data information
由于本文采用的數(shù)據(jù)集主要是商品評(píng)論,評(píng)論文本具有篇幅較短、文本格式不規(guī)范等問(wèn)題。例如其中的標(biāo)點(diǎn)符號(hào)、網(wǎng)絡(luò)流行語(yǔ)和用戶昵稱(chēng)等內(nèi)容都會(huì)給情感分析任務(wù)帶來(lái)困難。為了有效減少噪音,首先需要對(duì)文本進(jìn)行預(yù)處理。本文采用中國(guó)科學(xué)院計(jì)算技術(shù)研究所開(kāi)發(fā)的漢語(yǔ)分詞系統(tǒng)NLPIR對(duì)評(píng)論文本進(jìn)行分詞,繼而主要針對(duì)標(biāo)點(diǎn)符號(hào)和用戶昵稱(chēng)等字符串進(jìn)行去除噪聲處理。詞語(yǔ)的向量表示是指從詞語(yǔ)到實(shí)數(shù)維向量空間的復(fù)雜映射,本文將進(jìn)行分詞后的句子的離散onehot表示映射到低維空間形成稠密的詞向量,得到文本的詞向量映射,進(jìn)而輸入本文模型進(jìn)行進(jìn)一步的特征提取和情感分類(lèi)工作。
本文選擇準(zhǔn)確率A、召回率R和F值來(lái)當(dāng)作本文實(shí)驗(yàn)的評(píng)價(jià)指標(biāo)。準(zhǔn)確率A表示對(duì)測(cè)試集進(jìn)行分類(lèi)后,在某個(gè)類(lèi)別中被正確分類(lèi)的比例。召回率R代表分類(lèi)后正確判斷某個(gè)類(lèi)別的個(gè)數(shù)占其所有正確數(shù)目的比例。F值是一個(gè)根據(jù)準(zhǔn)確率A與召回率R得到的加權(quán)調(diào)和平均數(shù),通常被用來(lái)綜合評(píng)定模型的性能優(yōu)劣。每個(gè)評(píng)價(jià)指標(biāo)的計(jì)算方式如下:
表2是根據(jù)分類(lèi)結(jié)果建立的判別混淆矩陣,介紹了上述評(píng)價(jià)指標(biāo)中各個(gè)字母所代表的含義。
表 2 分類(lèi)判別混淆矩陣Table 2 Classification discrimination confusion matrix
本文實(shí)驗(yàn)運(yùn)行環(huán)境為Win10系統(tǒng)、8 GB內(nèi)存,本文底層采用TensorFlow架構(gòu),使用Keras來(lái)搭建深度學(xué)習(xí)網(wǎng)絡(luò)模型,上層采用JetBrains PyCharm軟件。網(wǎng)絡(luò)模型所使用的激活函數(shù)為ReLU,采用Adam作為梯度更新方法,學(xué)習(xí)率設(shè)為0.05。
由于神經(jīng)網(wǎng)絡(luò)模型的迭代次數(shù)對(duì)于實(shí)驗(yàn)結(jié)果的影響比較大,迭代次數(shù)越大,模型的擬合程度越好,進(jìn)而會(huì)導(dǎo)致模型的過(guò)擬合問(wèn)題。因此,本文對(duì)迭代次數(shù)進(jìn)行了單因子變量實(shí)驗(yàn)。如圖5所示,當(dāng)?shù)螖?shù)為30時(shí),訓(xùn)練集和測(cè)試集的數(shù)據(jù)上F值都處于一個(gè)較高的水平。因此本文實(shí)驗(yàn)迭代次數(shù)設(shè)為30,同時(shí)將Dropout的參數(shù)設(shè)為0.5以防止過(guò)擬合。
圖 5 基于迭代次數(shù)的F值的變化趨勢(shì)Fig. 5 Trends in F values based on iterations
詞向量維度是實(shí)驗(yàn)的一個(gè)重要參數(shù),維度的高低會(huì)影響模型中參數(shù)的數(shù)目。維度過(guò)高,容易導(dǎo)致過(guò)擬合,達(dá)不到預(yù)期的效果。維度過(guò)低,難以包含所需要的全部信息。本實(shí)驗(yàn)采用單因子變量法確定詞向量維度的最優(yōu)值,實(shí)驗(yàn)結(jié)果如圖6所示,詞向量維度初始值從30開(kāi)始,并不斷增加。在單一變量的情況下,詞向量維度在80的時(shí)候F值達(dá)到最優(yōu)值。因此在神經(jīng)網(wǎng)絡(luò)訓(xùn)練過(guò)程中,選用80作為詞向量維度的設(shè)定值。本文模型訓(xùn)練的參數(shù)和函數(shù)設(shè)置如表3所示。
圖 6 基于詞向量維度的F值的變化趨勢(shì)Fig. 6 Trends in F values based on word vector dimensions
表 3 實(shí)驗(yàn)參數(shù)設(shè)置Table 3 Experimental parameter settings
為了證明本文提出模型的有效性,將本文模型分別與CNN、Bi-GRU、CRF、CNN+Bi-GRU、Bi-GRU+CRF等模型做對(duì)比實(shí)驗(yàn),進(jìn)行情感分析的性能對(duì)比。
CNN:將詞向量作為輸入在CNN中進(jìn)行分類(lèi)。
Bi-GRU:將詞向量作為輸入在雙向門(mén)控循環(huán)單元中進(jìn)行分類(lèi)。
CRF:將詞向量輸入到條件隨機(jī)場(chǎng)中進(jìn)行分類(lèi)。
CNN+Bi-GRU:將CNN與Bi-GRU采用聯(lián)合訓(xùn)練的方式,詞向量分別輸入兩種神經(jīng)網(wǎng)絡(luò)中,得到的輸出進(jìn)行特征融合,利用Softmax進(jìn)行分類(lèi)。
Bi-GRU+CRF:將Bi-GRU模型與CRF模型以鏈?zhǔn)椒绞竭M(jìn)行組合,將訓(xùn)練好的詞向量作為Bi-GRU模型的輸入,其輸出作為CRF模型的輸入,最終輸出情感分析結(jié)果。
C-BG+CRF:本文提出的混合神經(jīng)網(wǎng)絡(luò)與條件隨機(jī)場(chǎng)相結(jié)合的情感分析模型。
實(shí)驗(yàn)結(jié)果如圖7,對(duì)比發(fā)現(xiàn),CRF單模型和神經(jīng)網(wǎng)絡(luò)模型相比,其分類(lèi)的準(zhǔn)確率和F值較低,證明了傳統(tǒng)機(jī)器學(xué)習(xí)方法在情感分析中的表現(xiàn)與深度學(xué)習(xí)確實(shí)存在差距。本文模型的收斂速度跟CRF單模型差距不大,且在準(zhǔn)確率和F值等指標(biāo)上均優(yōu)于其他模型,證明了本文模型的有效性。
圖 7 6種模型F值比較Fig. 7 Comparison of F value in six models
對(duì)比實(shí)驗(yàn)的測(cè)試結(jié)果如表4所示。本文模型與CNN單模型、Bi-GRU單模型和CRF單模型相比在準(zhǔn)確率、召回率和F值等指標(biāo)上均表現(xiàn)出了良好的優(yōu)越性。實(shí)驗(yàn)說(shuō)明本文模型與單個(gè)模型相比,在情感分析任務(wù)上確實(shí)具有更好的效果。
表 4 不同模型的測(cè)試結(jié)果Table 4 Test results of different models
本文模型與CNN+BiGRU模型進(jìn)行對(duì)比,分類(lèi)效果有所提升。因?yàn)楸疚哪P筒捎肅RF作為分類(lèi)器而不是Softmax函數(shù),對(duì)異常標(biāo)簽的處理具有更好的準(zhǔn)確性,可以有效地促進(jìn)情感分類(lèi)器性能上的提升。本文模型與BiGRU+CRF模型相比在F值上有所提升,同時(shí)收斂速度加快。兩種神經(jīng)網(wǎng)絡(luò)共同訓(xùn)練得到的特征比單一網(wǎng)絡(luò)更加充分,在準(zhǔn)確率上有所提升。實(shí)驗(yàn)說(shuō)明本文模型與融合模型相比,在情感分析任務(wù)上確實(shí)具有更好的效果。
本文針對(duì)篇章級(jí)的文本進(jìn)行了分析,提出一種混合神經(jīng)網(wǎng)絡(luò)和CRF相結(jié)合的情感分析模型。將一段文本按照句子劃分為不同的區(qū)域,結(jié)合了CNN與Bi-GRU兩種神經(jīng)網(wǎng)絡(luò)獲得的語(yǔ)義信息和結(jié)構(gòu)特征。同時(shí),將分別通過(guò)神經(jīng)網(wǎng)絡(luò)得到的句子的向量表示拼接在一起,采用條件隨機(jī)場(chǎng)模型作為分類(lèi)器。本文模型充分考慮了上下文信息,使學(xué)習(xí)到的特征更加豐富。在NLPCC 2014數(shù)據(jù)集上進(jìn)行訓(xùn)練和測(cè)試,總體上看,證明了本文的方法能夠有效地對(duì)篇章級(jí)文本進(jìn)行情感分類(lèi),取得了良好的效果。下一步考慮在詞向量中融入主題詞信息,從而更好地針對(duì)篇章中多主題進(jìn)行文本情感分析任務(wù)。