陳鄭淏 馮翱 何嘉
摘 要:針對情感分類中傳統(tǒng)二維卷積模型對特征語義信息的損耗以及時序特征表達能力匱乏的問題,提出了一種基于一維卷積神經(jīng)網(wǎng)絡(CNN)和循環(huán)神經(jīng)網(wǎng)絡(RNN)的混合模型。首先,使用一維卷積替換二維卷積以保留更豐富的局部語義特征;再由池化層降維后進入循環(huán)神經(jīng)網(wǎng)絡層,整合特征之間的時序關系;最后,經(jīng)過softmax層實現(xiàn)情感分類。在多個標準英文數(shù)據(jù)集上的實驗結果表明,所提模型在SST和MR數(shù)據(jù)集上的分類準確率與傳統(tǒng)統(tǒng)計方法和端到端深度學習方法相比有1至3個百分點的提升,而對網(wǎng)絡各組成部分的分析驗證了一維卷積和循環(huán)神經(jīng)網(wǎng)絡的引入有助于提升分類準確率。
關鍵詞:情感分類;卷積神經(jīng)網(wǎng)絡;循環(huán)神經(jīng)網(wǎng)絡;詞向量;深度學習
Abstract:Traditional 2D convolutional models suffer from loss of semantic information and lack of sequential feature expression ability in sentiment classification. Aiming at these problems, a hybrid model based on 1D Convolutional Neural Network (CNN) and Recurrent Neural Network (RNN) was proposed. Firstly, 2D convolution was replaced by 1D convolution to retain richer local semantic features. Then, a pooling layer was used to reduce data dimension and the output was put into the recurrent neural network layer to extract sequential information between the features. Finally, softmax layer was used to realize the sentiment classification. The experimental results on multiple standard English datasets show that the proposed model has 1-3 percentage points improvement in classification accuracy compared with traditional statistical method and end-to-end deep learning method. Analysis of each component of network verifies the value of introduction of 1D convolution and recurrent neural network for better classification accuracy.
Key words: sentiment classification; Convolutional Neural Network (CNN); Recurrent Neural Network (RNN); word embedding中文關鍵詞為詞矢量,此處是否應該為word vector?請明確?;貜停涸~向量是word embedding的常用翻譯,可不做修改; deep learning
0 引言
隨著互聯(lián)網(wǎng)和社交媒體的蓬勃發(fā)展,網(wǎng)絡用戶不再局限于瀏覽信息,更多的人開始表達自己的觀點,分享知識并創(chuàng)作內(nèi)容。互聯(lián)網(wǎng)中出現(xiàn)了大量用戶產(chǎn)生的信息,例如對熱點新聞事件的討論、對特定商品的評價、對電影的評分等,這些評論信息都包含了各種復雜的情感色彩或情感傾向,如贊同、否定和喜怒哀樂等,企業(yè)、機構或個人希望整合這些帶有主觀色彩的評論,來解析和跟蹤大眾輿論對于某一對象或某一事件的看法。對主觀評論的分析在業(yè)界被廣泛應用于股票價格預測、產(chǎn)品分析、商品推薦等領域,在政府部門常常被應用于輿情監(jiān)測、民意調(diào)研、異常檢測等方面。
由于網(wǎng)絡上這類評論信息激增,僅靠人工難以在海量的非結構文本數(shù)據(jù)中收集和挖掘出有價值的情感信息,因此需要設計情感分析算法,利用計算機來幫助用戶快速、有效地獲取對于某一對象的情感傾向,這就是情感分析(Sentiment Analysis)的主要任務[1-2]。本文研究的是語句級情感分析,即通過算法判斷給定句子的情感傾向,對應于機器學習領域的文本分類問題。
深度學習逐漸成為一種性能優(yōu)異的主流機器學習方法,它通過學習數(shù)據(jù)的多層特征表示,在很多領域取得優(yōu)于傳統(tǒng)方法的結果。近年來,隨著深度學習在圖像處理、機器翻譯等領域的成功,深度學習也被用于文本情感分類任務中。卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network, CNN)是一種常見的多層神經(jīng)網(wǎng)絡,由于能夠有效地捕獲時間和空間結構的相關性,被廣泛應用于計算機視覺和自然語言處理等領域。在文本情感分類任務中,CNN逐漸取代傳統(tǒng)基于文本統(tǒng)計信息的機器學習方法,成為主流模型之一。
目前,基于CNN的文本情感分類方法大多是利用文本局部的最大語義特征進行情感極性判別[3]。Kim[4]提出的CNN模型是較為經(jīng)典的一種,它通過二維卷積獲取文本N-grams特征,再經(jīng)過最大池化層篩選出最顯著的語義特征,使用全連接層組合多個特征來判斷情感傾向。然而,對輸入文本使用二維卷積會壓縮特征圖(Feature Map)的維度,損失大量原始文本中的語義信息。從語言學的角度理解,該模型僅從文本中挖掘出包含情感的關鍵詞或詞組,對關鍵詞或詞組賦予不同的權重來判斷情感傾向,并未考慮文本的語序結構。
針對上述CNN模型的缺陷,本文提出了一種基于一維卷積神經(jīng)網(wǎng)絡和循環(huán)神經(jīng)網(wǎng)絡(Recurrent Neural Network,RNN)的混合模型。首先,使用一維卷積替換二維卷積來提取文本特征,在獲取文本N-grams特征的過程中保持特征維度不變,將語義信息的損失降到最低。其次,通過RNN獲取高層特征之間的時序關系,理解文本的全局語義。相比文獻[4]的CNN模型,該混合模型具有更強的特征提取能力,且提取到的特征維度更高,種類更豐富。實驗結果表明,該模型在多個標準數(shù)據(jù)集上的情感分類性能相比傳統(tǒng)統(tǒng)計方法和主流端到端深度學習模型均有明顯的提升。本文還在該模型的基礎上,對不同網(wǎng)絡層的特征提取模式進行改進,對比多種網(wǎng)絡結構的效果,驗證了一維卷積在文本情感分類任務上的有效性。
1 相關工作
1.1 傳統(tǒng)情感分類方法
傳統(tǒng)的情感分類方法主要分為基于情感詞典和基于機器學習的方法[5]。
1.1.1 基于情感詞典的分類方法
該方法主要通過構建情感詞典以及一系列的規(guī)則來判斷文本的情感極性。Kim等[6]使用已有的情感詞典,根據(jù)詞語的情感得分加和的方法來判斷文本的情感極性。Turney[7]利用點互信息方法擴展正面和負面的種子詞匯,使用形容詞種子集作為語句中詞的評分,根據(jù)多個固定的句式結構來判斷語句情感傾向。Hu等[8]通過詞匯語義網(wǎng)WordNet的同義詞、反義詞關系,得到形容詞情感詞典,并根據(jù)該詞典與一些簡單規(guī)則判斷語句的情感極性。這類方法嚴重依賴情感詞典的質量,并且詞典的維護需要耗費大量的人力物力,隨著新詞的不斷涌現(xiàn),己經(jīng)不能滿足應用需求。
1.1.2 基于機器學習的分類方法
該方法首先從文本中篩選出一組具有統(tǒng)計意義的特征,然后使用機器學習算法構建分類模型判斷文本的情感極性。Pang等[9]最早使用機器學習方法對電影評論進行情感極性判別,對比了樸素貝葉斯(Nave Bayes, NB)、最大熵(Maximum Entropy, ME)和支持向量機(Support Vector Machine, SVM)這三種機器學習算法在情感分類中的效果。Mohammad等[10]在Pang等[9]的方法基礎上,加入通過情感詞典構建的特征,取得了更高的分類準確度。Kim等[11]引入詞匯、位置和評價詞作為特征,使用SVM作為分類模型進行情感極性判別。這類方法對不同的數(shù)據(jù)集選取不同的人工特征,模型泛化能力差,而且特征大多來自于文本的個別詞匯統(tǒng)計數(shù)據(jù),無法體現(xiàn)詞語間的關系以及上下文信息[12]。
1.2 基于深度學習的情感分類方法
在文本表示方面,Bengio等[13]最早提出用神經(jīng)網(wǎng)絡學習語言模型,訓練得到詞在同一個向量空間上的表示,與one-hot表示方式相比維數(shù)大幅度降低。由于該模型參數(shù)較多,訓練效率低下,Mikolov等[14]在此基礎上使用層次化Softmax進行優(yōu)化,提出了Word2vec框架,使訓練時間大幅度縮短的同時,學習得到的詞向量在一定程度上可體現(xiàn)深層的語法和語義特征。
隨著Word2vec[14]和GloVe[15]等詞的分布式表示方法的出現(xiàn),詞向量表示維度大幅度降低,且包含更多明確的語義信息,這使深度學習方法逐漸成為情感分類任務的主流方法。深度學習相比傳統(tǒng)算法,具有更強的語義表達能力,在不需要人工進行特征選擇的情況下取得了較好的性能。
基于深度學習的分類方法是一種多層表示學習方法。該方法可以利用深層神經(jīng)網(wǎng)絡,從低層的文本表示中自動學習高層的文本語義特征。基于深度學習的方法主要包含如下幾種。
1.2.1 基于遞歸神經(jīng)網(wǎng)絡
Socher等[16-17]提出了多個遞歸神經(jīng)網(wǎng)絡(Recursive Neural Network)模型,將文本的句法結構加入到神經(jīng)網(wǎng)絡模型中。Qian等[18]提出兩種基于短語詞性標簽的遞歸網(wǎng)絡模型:標簽引導遞歸神經(jīng)網(wǎng)絡(Tag-Guided Recursive Neural Network, TG-RNN)和標簽嵌入遞歸神經(jīng)網(wǎng)絡(Tag Embedded Recursive Neural Network, TE-RNN),前者根據(jù)詞性標簽選擇一個用于子節(jié)點詞嵌入的合成函數(shù),后者學習詞性標簽的詞嵌入,并與子節(jié)點的詞嵌入結合。Tai等[19]將長短期記憶(Long Short-Term Memory, LSTM)網(wǎng)絡改造為樹狀結構,相比線性的LSTM結構效果有明顯提升。
1.2.2 基于循環(huán)神經(jīng)網(wǎng)絡
Irsoy等[20]利用循環(huán)神經(jīng)網(wǎng)絡獲取文本序列特征,對比了不同層數(shù)RNN對性能的影響;Liu等[21]提出了3種可用于多種數(shù)據(jù)集共同訓練的RNN模型,將分布相似的數(shù)據(jù)集同時作為輸入,提高了模型的泛化能力;Qian等[22]在LSTM的基礎上對情感詞添加了正則化,不同類型情感詞的出現(xiàn)會調(diào)整當前時刻情感表示的概率分布。
1.2.3 基于卷積神經(jīng)網(wǎng)絡
Kim[4]使用CNN捕獲文本的局部語義特征,結合靜態(tài)或微調(diào)的詞向量實現(xiàn)句子級情感分類;Kalchbrenner等[23]使用一維CNN獲取文本的N-grams特征,盡可能保留了原文本的語義信息,再經(jīng)過動態(tài)K-Max池化篩選出最顯著的k個特征;Zhou等[24]提出了一種結合CNN和RNN的混合模型,利用CNN提取文本的N-grams特征,RNN整合文本的全局信息。
2 模型介紹
2.1 詞嵌入向量和N-grams特征
自然語言處理任務中大多數(shù)深度學習模型都需要詞向量作為神經(jīng)網(wǎng)絡的輸入特征[25]。詞嵌入(Word Embedding)是一種用于語言建模和特征學習的技術,它將詞匯表中的單詞轉換成連續(xù)的實數(shù)向量。例如,單詞“cat”在一個5維詞嵌入模型中可表示為向量(0.15,0.23,0.41,0.63,0.45)。該技術能將高維稀疏的向量空間(例如one-hot向量空間,只有一個維度的值取1,其他全取0)轉換為低維稠密的向量空間。詞向量可編碼一定的語言學規(guī)則和模式,包含語義特征。
詞嵌入向量僅僅涵蓋了詞級別(word level)的特征表示,無法表達固定短語和詞組的語義,對文本的表示能力不足。在傳統(tǒng)統(tǒng)計模型中,N-grams特征常被用于解決此類問題。神經(jīng)網(wǎng)絡模型中的卷積操作也能達到類似的效果,用于提升文本的語義表達能力。例如,“I get up early”這句話通過大小為2的卷積核處理后會得到Bigram特征:“I get”“get up”“up early”,其中“get up”為固定的短語搭配,經(jīng)過反向傳播后該特征能分配到更高的權重。
2.2 長短期記憶網(wǎng)絡
由于原始的循環(huán)神經(jīng)網(wǎng)絡存在嚴重的梯度消失或梯度爆炸問題,對于較長距離的特征處理能力弱,網(wǎng)絡的處理單元出現(xiàn)了若干的變體,其中長短期記憶(Long Short-Term Memory, LSTM)網(wǎng)絡[26]已被廣泛應用于自然語言處理領域。簡單地說,在LSTM中,隱含狀態(tài)ht和存儲單元ct是它們前一時刻的狀態(tài)ct-1、ht-1和當前時刻輸入向量xt的函數(shù),其表達式如下:
隱含狀態(tài)ht∈Rd是隱含層t時刻的向量表示,同時也編碼該時刻之前的上下文信息。
在單向LSTM中,每個位置ht的隱藏狀態(tài)只保留了前向的上下文信息,而沒有考慮反向的上下文信息。雙向長短期記憶(Bi-directional Long Short-Term Memory, BiLSTM)網(wǎng)絡[27]利用兩個并行通道(前向和后向)和兩個LSTM的隱藏狀態(tài)級聯(lián)作為每個位置的表示。前向和后向LSTM分別表述如下:
其中,g(LSTM)與式(1)中的相同,但分別使用不同的參數(shù),在每個位置t,隱含狀態(tài)表示為ht=[t,t],它是前向LSTM和后向LSTM隱含狀態(tài)的聯(lián)結。以這種方式,可以同時考慮到向前和向后上下文信息,從而更有效地從文本中提取特征。
2.3 基于卷積神經(jīng)網(wǎng)絡的文本情感分類
卷積神經(jīng)網(wǎng)絡是一種多層神經(jīng)網(wǎng)絡,由卷積層、池化層、全連接層等組成。由于能夠提取空間或時間結構的局部相關性,CNN在計算機視覺、語音識別和自然語言處理等方面都取得了優(yōu)異的表現(xiàn)。對于句子建模,CNN通過卷積核在句子不同位置提取N-grams特征,并通過池化操作學習短、長程的上下文關系。其中,Kim[4]提出了經(jīng)典的基于卷積神經(jīng)網(wǎng)絡的文本情感分析算法,本文采用其中的CNN-non-static作為對照算法(后文簡稱為Kim-CNN),其結構如圖1所示。
其中:xi:i+h-1∈Rkh表示從輸入文本第i個詞(第i列)開始鄰接的h個詞向量拼接而成的矩陣;b∈R表示偏置; f使用非線性激活函數(shù)ReLU(Rectified Linear Unit請補充ReLU的英文全稱);ci表示卷積核在文本第i個位置的特征值。
卷積核wc作用于句子中每一個可能的窗口{x1:h,x2:h+1,…,xn-h+1:n},獲得特征圖:
3)池化層。池化操作可改變句子的長度,其主要目標是獲取特征圖中最重要的特征,即最大的特征值=max{c},然后將得到的所有最大特征值拼接,生成文本的高層特征向量v=[1,2,…,m],其中m為卷積核數(shù)量。
4)Softmax層。以特征向量v作為輸入,使用Softmax分類,輸出當前文本在各個類別上的概率:
其中:y∈Rs;ws為權重;bs為偏置,s為類別數(shù)目。預測出概率后,使用交叉熵形式的損失函數(shù)并反向傳播,進行權值更新和詞向量微調(diào)(fine tuning),多次迭代后,取最優(yōu)的模型參數(shù)。
目前,基于CNN的情感分類方法大多使用二維卷積結構,但通過這種方式獲得的N-grams特征,相比輸入文本的詞向量,特征維度降低,特征包含的語法和語義信息較少。Kim-CNN模型可以理解為使用二維卷積從文本中捕獲對應情感標簽下語義特征最顯著的“關鍵詞”,通過全連接對多個“關鍵詞”加權求和,判斷情感類別。然而,使用二維卷積會壓縮獲取N-grams特征的維度,損耗特征的大量語義信息,無法實現(xiàn)多層神經(jīng)網(wǎng)絡來提取高層次的語義特征,而且CNN只能獲取文本的局部特征,對時序信息和全局特征不能有效地識別與表示。
2.4 基于一維卷積的混合網(wǎng)絡模型
由于Kim-CNN模型存在二維卷積損失特征語義信息以及CNN無法有效地識別和表達時序信息的問題,本文在該算法的基礎上進行改進,在網(wǎng)絡結構中加入一維卷積結構和BiLSTM,提出了一種應用于文本情感分類的神經(jīng)網(wǎng)絡結構:1D-CLSTM。具體改變?yōu)椋簩⒕矸e層的二維卷積操作替換成詞向量每個維度上的一維卷積操作,并在池化層和Softmax層之間增加一個循環(huán)神經(jīng)網(wǎng)絡層,其結構如圖2所示。
從圖2可以看出,該網(wǎng)絡自底向上由5層結構組成,分別如下。
1)輸入層。從文本D查找詞wi,得到對應的詞向量xi∈Rk,k為詞向量的維度。在文本開始和末尾分別添加全0的Padding,以保證卷積后句子長度不變。
2)一維卷積層。詞向量每一維(每一行)分別使用不同的一維卷積。一組一維卷積核表示為wc∈Rhk,可生成一個特征圖c,h為滑動窗口大小。經(jīng)過卷積,文本第i個詞的第j維得到的特征值為:
其中,wcj∈Rh表示詞向量第j維上的一維卷積核。
3)池化層。池化操作的目標是選取文本各個位置最重要的特征,對于每一個特征圖c,第i列的最大特征值i=max{ci},經(jīng)過池化層得到其中一個特征向量v=[1,2,…,L]。其中,ci∈Rk,L為文本長度。
4)循環(huán)神經(jīng)網(wǎng)絡層。經(jīng)過池化層得到矩陣V=[v1,v2,…,vN],將其按列展開為[α1,α2,…,αL],N表示特征向量v的數(shù)量。向量αt作為BiLSTM網(wǎng)絡t時刻的輸入,由式(2)和式(3)分別求得t時刻前向和后向的隱藏狀態(tài)t和t,輸出為:
5)Softmax層。用Softmax作為分類器,輸出當前文本在各個情感類別下的概率。
本文選用一維卷積替換二維卷積有兩點考慮:其一,通過一維卷積得到的特征圖可以保持與輸入文本相同的維度,將語義信息的損失降到最小;其二,詞向量可以認為是神經(jīng)網(wǎng)絡訓練語言模型的副產(chǎn)物[28],詞向量各維的值可以看作隱含層各個神經(jīng)元的輸出,詞向量的各個維度之間相互獨立,卷積應該分別進行,而不是將它們簡單地進行加權求和。
卷積操作雖然可以將相鄰詞或特征的語義進行組合,但無法有效地識別和表示時序信息。為解決這一問題,本文采用BiLSTM將一維卷積提取出的N-grams特征按時間順序整合,挖掘特征之間的時序關系以及全局語義信息。
如上分析,本文提出的1D-CLSTM模型相對Kim-CNN模型來說,較好地避免了在二維卷積中損失語義信息,無法識別和表達時序信息等問題,第3章將用實驗結果驗證它在情感判別領域的應用效果。
3 實驗及結果分析
為了檢驗1D-CLSTM模型的性能以及證明一維卷積在情感分類任務上的優(yōu)越性,將其與近年來一些經(jīng)典的文本情感分類算法進行實驗對比。在基本模型之外,還對一些其他的變體進行實驗,以分析各種網(wǎng)絡結構對于分類效果的影響。
3.1 情感分類數(shù)據(jù)集
本文在多個標準英文數(shù)據(jù)集上測試了上述模型,數(shù)據(jù)集的統(tǒng)計信息如表1所示。SST-1和SST-2[16]分別為五分類和二分類的影評情感分類數(shù)據(jù)集,來自Stanford Sentiment Treebank。MR是二分類的影評數(shù)據(jù)集,目標是判斷評論的情感為正面還是負面。IMDB由100000條二分類的影評數(shù)據(jù)組成,每一條影評包含多個句子,屬于文檔級的情感分類數(shù)據(jù)集[29]。
由于IMDB數(shù)據(jù)集沒有明確的訓練集、驗證集劃分,采用10折交叉驗證(10-fold cross-validation),將訓練集隨機分成10組,每次使用訓練數(shù)據(jù)的90%訓練模型參數(shù),剩下10%作為驗證集,驗證模型優(yōu)劣,選取驗證結果最優(yōu)的模型參數(shù),用于計算測試集上的情感分類準確度。MR數(shù)據(jù)集使用81%作為訓練集,9%作為驗證集,10%作為測試集。SST-1和SST-2數(shù)據(jù)集有固定的驗證集劃分,因此每輪實驗隨機初始化參數(shù),重復訓練10次,取這10次實驗結果的平均值作為最終的情感分類準確度。
3.2 參數(shù)設置
實驗使用GloVe預訓練的詞嵌入向量作為初始的輸入[3],維度為300。對于一維卷積層,采用1、2、3這三種尺寸的卷積核,每種尺寸的卷積核數(shù)量均設置為4,確保卷積網(wǎng)絡從不同維度不同位置提取多種文本特征。循環(huán)神經(jīng)網(wǎng)絡層使用BiLSTM,記憶單元的維度為150,詞向量和BiLSTM后均設置0.5的dropout。訓練批次大?。╞atch size)為50,學習率為5E-4,進行反向傳播的參數(shù)增加0.001的L2正則約束,選擇Adam作為優(yōu)化器(optimizer),訓練階段最大迭代次數(shù)(epoch)為100。輸入的詞向量會根據(jù)反向傳播微調(diào),在1000個批次(batch)內(nèi)驗證集上的準確度沒有提升會提前停止訓練(early stop),設置梯度截斷(gradient clipping)為3。
3.3 結果對比
為測試模型性能,本文將1D-CLSTM模型與主流的情感分類模型進行對比。實驗采用分類準確度(Accuracy)作為情感分類算法的評價指標,結果以百分比為單位。實驗結果如表2所示。
其中,SST-1和SST-2數(shù)據(jù)集下的短語和句子分別代表訓練時使用短語級或句子級的標注數(shù)據(jù),而驗證和測試階段均使用句子級的標注數(shù)據(jù)[16]。前5個模型的結果引用自Socher[16]。NB和BiNB均為樸素貝葉斯模型,前者僅使用unigram特征,后者同時使用unigram和bigram。SVM是使用unigram和bigram特征的支持向量機模型。RNN和RNTN(Recursive Neural Tensor Network)均是基于文本句法解析樹的遞歸神經(jīng)網(wǎng)絡模型。DCNN(Dynamic Convolutional Neural Network)[23]同樣采用一維卷積,但經(jīng)過動態(tài)k-max池化后文本長度會減小,僅保留了最顯著的k個N-grams特征。BiLSTM是以詞向量為輸入的雙向長短期記憶網(wǎng)絡,去掉了1D-CLSTM中的一維卷積層,其余參數(shù)設置相同。Kim-CNN[4]是根據(jù)原論文的參數(shù)設置和開源代碼復現(xiàn),將詞向量由Word2vec換作GloVe,由于文獻[4]對于數(shù)據(jù)集劃分、參數(shù)選擇和優(yōu)化的細節(jié)沒有說明,導致復現(xiàn)結果相比原文略差。文獻[4]匯報了SST-1短語、SST-2短語和MR的結果,分別為48.0%、87.2%和81.5%此處的三個數(shù)字后面,是否應該加個百分號?即48.0%、87.2%和81.5%,請明確。
從表2可以看出,基于深度學習的情感分類方法性能明顯優(yōu)于傳統(tǒng)機器學習方法,1D-CLSTM在各個數(shù)據(jù)集上的結果均優(yōu)于其他模型。對比BiLSTM,1D-CLSTM增加了一維卷積,使得各數(shù)據(jù)集的結果均有明顯提升。這表明,經(jīng)過一維卷積提取的N-grams特征,相比初始詞向量,包含了更有價值的語義信息,適合后續(xù)的池化和循環(huán)神經(jīng)網(wǎng)絡處理。對比Kim-CNN的重現(xiàn)模型,用一維卷積替換二維卷積并增加BiLSTM后,在各數(shù)據(jù)集上的結果都有一定的提升,最高達到2.9%。
為了進一步驗證一維卷積相對于二維卷積的優(yōu)勢,本文在1D-CLSTM的基礎上修改了部分結構,提出了兩種變體:1D-2D-CNN與1D-2D-CLSTM,并通過實驗對比了改進前和改進后分類準確度的變化。
其中,1D-2D-CNN是在Kim-CNN的基礎上,輸入層和卷積層之間增加一個一維卷積層,其他參數(shù)與Kim-CNN一致。1D-2D-CLSTM是在1D-2D-CNN的基礎上,在池化層前添加一個BiLSTM網(wǎng)絡。
從表3可以看出,在SST-1數(shù)據(jù)集中,額外的一維卷積層為Kim-CNN模型帶來了1至2個百分點的提升。相比原始輸入的詞向量,經(jīng)過一維卷積的特征包含了更多額外的語義信息,說明一維卷積在提取N-grams特征方面具有一定的優(yōu)勢,但是IMDB數(shù)據(jù)集上增加一維卷積反而讓準確度有所下降,可能原因是該數(shù)據(jù)集屬于文檔級的情感分類,輸入文本的平均長度為294,僅使用卷積神經(jīng)網(wǎng)絡無法表征足夠的全局語義信息。
從表4可以看出,將最大池化層改為BiLSTM后,1D-2D-CLSTM模型相比1D-2D-CNN分類準確度有1個百分點左右的提升。這表明使用LSTM的循環(huán)神經(jīng)網(wǎng)絡相對簡單的池化操作具有更強的表達力,能夠提取和表達更復雜的語法和語義特征,適合情感分類任務。
1D-2D-CLSTM模型和1D-CLSTM模型的差別在,將池化層換成了二維卷積層,通過卷積來實現(xiàn)特征降維。從表4可以看到,1D-2D-CLSTM模型仍有微弱的提升。這說明,在情感分類任務上,二維卷積層或許是比池化層更好的降維特征提取方式,當然其代價是更大的網(wǎng)絡參數(shù)和更高的訓練成本。
4 結語
本文針對文本情感分類任務提出了一種基于一維卷積和循環(huán)神經(jīng)網(wǎng)絡的混合網(wǎng)絡模型。該模型使用一維卷積替代二維卷積提取N-grams特征,通過BiLSTM挖掘特征之間的時序關系,解決了Kim-CNN模型中卷積損失特征語義以及無法表示時序信息的問題。實驗結果表明,該模型的情感分類性能相比同類主流算法有明顯的提升,并通過進一步的對比實驗驗證了引入一維卷積和循環(huán)神經(jīng)網(wǎng)絡對分類性能的正面影響。
從現(xiàn)有實驗結果來看,在詞嵌入向量的基礎上使用卷積和循環(huán)神經(jīng)網(wǎng)絡進行情感分類,對于最終分類性能的提升是有一定限度的,其中尤其是原始詞嵌入向量的質量對于最終模型的分類效果有很大影響。傳統(tǒng)詞嵌入向量是在較大的無標注文本集中通過計算各個關鍵詞共同出現(xiàn)的統(tǒng)計指標得到的[14-15],Kim-CNN[4]的實驗已經(jīng)證明這些原始向量并不適合情感分析任務,一個重要證據(jù)是具有相似統(tǒng)計關系的反義詞會被表達為類似的嵌入向量,因此,最近的一些研究工作嘗試在另一個有監(jiān)督場景下訓練上下文相關的嵌入向量[30],或者借用卷積神經(jīng)網(wǎng)絡逐層特征提取的思路來設計一個多層LSTM網(wǎng)絡以表達語言不同粒度的特征[31],將這些額外的關鍵詞表達與原始詞嵌入向量結合帶來了顯著提升的分類精度。
在計算機視覺領域使用遷移學習的方法可以最大限度地利用大規(guī)模數(shù)據(jù)集上預訓練的模型參數(shù),使得在一個相似場景下進行學習的效率大幅度提高,但是對于自然語言處理來說,大多數(shù)場景下除了詞嵌入向量可以重用以外,都需要從頭開始訓練,這對于訓練效率和最終效果都造成了較大影響。Howard等[32]提出了一個ULMFiT(Universal Language Model Fine-Tuning)模型,建立了自然語言處理領域中遷移學習的完整應用框架。Radford等[33]則將遷移學習過程建立在一個深層的Transformer網(wǎng)絡[34]上,使用該框架預訓練的模型通常在3次迭代左右就可以完成細調(diào)。同樣基于Transformer網(wǎng)絡,BERT[35]設計了一個填空(Cloze)任務,同時利用前向和后向的上下文,比之前的單向語言模型或者相互獨立的雙向LSTM都有明顯優(yōu)勢,該模型在11個不同的公開任務中,都在之前最好的結果基礎上明顯提高。
未來的工作將會集中在以下幾個方面:首先是基于對現(xiàn)有詞嵌入向量及其在情感分析任務中的表達能力分析,嘗試運用其他包含更豐富語義信息的特征表達方式;其次是進一步比較卷積神經(jīng)網(wǎng)絡、循環(huán)神經(jīng)網(wǎng)絡及Transformer網(wǎng)絡等不同的網(wǎng)絡結構在該場景不同任務中的性能,選擇適當?shù)木W(wǎng)絡結構進行組合和優(yōu)化;最后是充分利用以BERT為代表的預訓練模型,使用其網(wǎng)絡結構和預訓練參數(shù),結合其他網(wǎng)絡模型,該模型即使在不進行原始參數(shù)細調(diào)的前提下也能取得接近最優(yōu)的效果。
參考文獻 (References)
[1] 周立柱,賀宇凱,王建勇.情感分析研究綜述[J].計算機應用,2008,28(11):2725-2728.(ZHOU L Z, HE Y K, WANG J Y. Survey on research of sentiment analysis [J]. Journal of Computer Applications, 2008,28(11): 2725-2728.)
[2] 趙妍妍,秦兵,劉挺.文本情感分析[J].軟件學報,2010,21(8):1834-1848.(ZHAO Y Y, QIN B, LIU T. Sentiment analysis [J]. Journal of Software, 2010, 21(8): 1834-1848.)
[3] ZHANG Y, WALLACE B. A sensitivity analysis of (and practitioners guide to) convolutional neural networks for sentence classification[EB/OL]. (2016-04-06)[2018-06-07]. https://arxiv.org/abs/1510.03820.
[4] KIM Y. Convolutional neural networks for sentence classification [EB/OL]. (2014-09-03)[2018-06-01]. https://arxiv.org/abs/1408.5882.
[5] ZHANG L, WANG S, LIU B. Deep learning for sentiment analysis: a survey[J]. Wiley Interdisciplinary Reviews: Data Mining and Knowledge Discovery, 2018, 8(4): e1253.
[6] KIM S-M, HOVY E. Extracting opinions, opinion holders, and topics expressed in online news media text[C]// Proceedings of the 2006 Workshop on Sentiment and Subjectivity in Text. Stroudsburg, PA: Association for Computational Linguistics, 2006: 1-8.
[7] TURNEY P D. Thumbs up or thumbs down?: semantic orientation applied to unsupervised classification of reviews[C]// Proceedings of the 40th Annual Meeting on Association for Computational Linguistics. Stroudsburg, PA: Association for Computational Linguistics, 2002: 417-424.
[8] HU M, LIU B. Mining and summarizing customer reviews[C]// Proceedings of the Tenth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York: ACM, 2004: 168-177.
[9] PANG B, LEE L, VAITHYANATHAN S. Thumbs up?: sentiment classification using machine learning techniques[C]// Proceedings of the ACL-02 Conference on Empirical Methods in Natural Language Processing-Volume 10. Stroudsburg, PA: Association for Computational Linguistics, 2002: 79-86.
[10] MOHAMMAD S M, KIRITCHENKO S, ZHU X. NRC-Canada: building the state-of-the-art in sentiment analysis of tweets[EB/OL]. (2013-08-28)[2018-07-02]. https://arxiv.org/abs/1308.6242.
[11] KIM S-M, HOVY E. Automatic identification of pro and con reasons in online reviews[C]// Proceedings of the 2006 COLING/ACL on Main Conference Poster Sessions. Stroudsburg, PA: Association for Computational Linguistics, 2006: 483-490.
[12] MEDHAT W, HASSAN A, KORASHY H. Sentiment analysis algorithms and applications: a survey [J]. Ain Shams Engineering Journal, 2014, 5(4): 1093-1113.
[13] BENGIO Y, DUCHARME R, VINCENT P, et al. A neural probabilistic language model[J]. Journal of Machine Learning Research, 2003, 3: 1137-1155.
[14] MIKOLOV T, SUTSKEVER I, CHEN K, et al. Distributed representations of words and phrases and their compositionality[C]// NIPS13: Proceedings of the 26th International Conference on Neural Information Processing Systems. North Miami Beach, FL: Curran Associates Inc., 2013: 3111-3119.
[15] PENNINGTON J, SOCHER R, MANNING C. GloVe: global vectors for word representation[C]// Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing. Stroudsburg, PA: Association for Computational Linguistics, 2014: 1532-1543.
[16] SOCHER R, PERELYGIN A, WU J, et al. Recursive deep models for semantic compositionality over a sentiment treebank[C]// Proceedings of the 2013 Conference on Empirical Methods in Natural Language Processing. Stroudsburg, PA: Association for Computational Linguistics, 2013: 1631-1642.
[17] SOCHER R, PENNINGTON J, HUANG E H, et al. Semi-supervised recursive autoencoders for predicting sentiment distributions[C]// Proceedings of the 2011 Conference on Empirical Methods in Natural Language Processing. Stroudsburg, PA: Association for Computational Linguistics, 2011: 151-161.
[18] QIAN Q, TIAN B, HUANG M, et al. Learning tag embeddings and tag-specific composition functions in recursive neural network[C]// Proceedings of the 53rd Annual Meeting of the Association for Computational Linguistics and the 7th International Joint Conference on Natural Language Processing. Stroudsburg, PA: Association for Computational Linguistics, 2015: 1365-1374.
[19] TAI K S, SOCHER R, MANNING C D. Improved semantic representations from tree-structured long short-term memory networks[EB/OL]. (2015-05-30)[2018-08-10]. https://arxiv.org/abs/1503.00075.
[20] IRSOY O, CARDIE C. Opinion mining with deep recurrent neural networks[C]// Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing. Stroudsburg, PA: Association for Computational Linguistics, 2014: 720-728.
[21] LIU P, QIU X, HUANG X. Recurrent neural network for text classification with multi-task learning[EB/OL]. (2016-05-17)[2018-08-01]. https://arxiv.org/abs/1605.05101.
[22] QIAN Q, HUANG M, LEI J, et al. Linguistically regularized LSTMs for sentiment classification [EB/OL]. (2017-04-25)[2018-08-15]. https://arxiv.org/abs/1611.03949.
[23] KALCHBRENNER N, GREFENSTETTE E, BLUNSOM P. A convolutional neural network for modelling sentences [EB/OL]. (2014-04-08)[2018-07-16]. https://arxiv.org/abs/1404.2188.
[24] ZHOU C, SUN C, LIU Z, et al. A C-LSTM neural network for text classification[EB/OL]. (2015-11-30)[2018-08-22]. https://arxiv.org/abs/1511.08630.
[25] COLLOBERT R, WESTON J, BOTTOU L, et al. Natural lan-guage processing (almost) from scratch[J]. Journal of Machine Learning Research, 2011, 12: 2493-2537.
[26] HOCHREITER S, SCHMIDHUBER J. Long short-term memory[J]. Neural Computation, 1997, 9(8): 1735-1780.
[27] GRAVES A, JAITLY N, MOHAMED A. Hybrid speech recognition with deep bidirectional LSTM[C]// Proceedings of the 2013 IEEE Workshop on Automatic Speech Recognition and Understanding. Piscataway, NJ: IEEE, 2013: 273-278.
[28] MIKOLOV T, CHEN K, CORRADO G, et al. Efficient estimation of word representations in vector space[EB/OL]. (2013-09-07)[2018-09-02]. https://arxiv.org/abs/1301.3781.
[29] LIU B. Sentiment Analysis and Opinion Mining[M]. San Rafael, CA: Morgan and Claypool Publishers, 2012: 1-167.
[30] McCANN B, BRADBURY J, XIONG C, et al. Learned in translation: contextualized word vectors[C]// NIPS 2017: Proceedings of the 31st Annual Conference on Neural Information Processing Systems. North Miami Beach, FL: Curran Associates Inc., 2017: 6297-6308.
[31] PETERS M E, NEUMANN M, IYYER M et al. Deep contextualized word representations[EB/OL]. (2018-03-22)[2018-10-21]. https://arxiv.org/abs/1802.05365.
[32] HOWARD J, RUDER S. Universal language model fine-tuning for text classification[C]// Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics. Stroudsburg, PA: Association for Computational Linguistics, 2018: 328-339.
[33] RADFORD A, NARASIMHAN K, SALIMANS T, et al. Improving language understanding by generative pre-training[EB/OL]. (2018-06-11)[2018-10-22]. https://blog.openai.com/language-unsupervised/.
[34] VASWANI A, SHAZEER N, PARMAR N, et al. Attention is all you need[C]// NIPS 2017: Proceedings of the 31st Annual Conference on Neural Information Processing Systems. North Miami Beach, FL: Curran Associates Inc., 2017: 5998-6008.
[35] DEVLIN J, CHANG M-W, LEE K, et al. BERT: pre-training of deep bidirectional transformers for language understanding[EB/OL]. (2018-10-11)[2018-11-13]. https://arxiv.org/abs/1810.04805.