李井輝 孫麗娜 李晶
摘 要:長短時記憶神經(jīng)網(wǎng)絡(luò)(long short-term memory,LSTM)是一種特殊形式的循環(huán)神經(jīng)網(wǎng)絡(luò)。是為了解決基于長文本序列的模型訓(xùn)練過程中的梯度消失和梯度爆炸等問題而提出的。相對于傳統(tǒng)的循環(huán)神經(jīng)網(wǎng)絡(luò),LSTM在長序列上有更好的表現(xiàn)。LSTM是一種包含重復(fù)神經(jīng)網(wǎng)絡(luò)模塊的鏈?zhǔn)叫问?,在該鏈?zhǔn)侥J街校貜?fù)的模塊有著不同的結(jié)構(gòu),其中包括輸入門、遺忘門和輸出門。介紹了LSTM的工作原理并將其應(yīng)用到文本情感分析領(lǐng)域,然后,結(jié)合Word2Vec詞嵌入技術(shù)在大規(guī)模文本情感分析數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),將LSTM與基于卷積神經(jīng)網(wǎng)絡(luò)(CNN)的方法進(jìn)行實(shí)驗(yàn)對比,最終發(fā)現(xiàn)LSTM相較于傳統(tǒng)的CNN方法在文本情感分類的準(zhǔn)確率方面取得了更好的表現(xiàn)。
關(guān)鍵詞:文本情感分析;LSTM長短時記憶神經(jīng)網(wǎng)絡(luò);卷積神經(jīng)網(wǎng)絡(luò);詞嵌入技術(shù)
Abstract:Long short-term memory (LSTM) is a special form of recurrent neural network. It was proposed to solve the problems of gradient vanish and gradient explosion in the training of long text sequences. Compared with the traditional recurrent neural network, it has better performance on long sequences. LSTM is a chained form that contains repetitive neural network modules which have different structures including input gates, forgetting gates, and output gates. This paper introduces the main theory of LSTM and applies it to the field of text sentiment analysis. Then, we combine the word embedding technique Word2Vec and conduct experiments on large-scale text sentiment analysis dataset, compare the LSTM with convolutional neural network (CNN). We finally find that LSTM performs better in terms of the accuracy on the task of text sentiment classification compared with the traditional CNN method.
Key words:text sentiment analysis;long-term memory neural network;convolutional neural network;word embedding technology
0 引言
情感分析是自然語言處理NLP領(lǐng)域最受歡迎的應(yīng)用之一[1],由于其應(yīng)用的廣泛性及重要性,近年來,越來越多的研究者專注于分析從公司調(diào)查到電影評論等各種數(shù)據(jù)集的情感。情感分析的關(guān)鍵是分析一組文本以理解其所表達(dá)的觀點(diǎn)。通常,我們用正值或負(fù)值量化這種情緒,稱為情感極性。從極性分?jǐn)?shù)的符號來看,總體情緒通常被推斷為正面及負(fù)面[2-3]。本文主要是將LSTM[4]應(yīng)用于情感分析領(lǐng)域,結(jié)合Word2Vec詞嵌入技術(shù)[5]來進(jìn)行實(shí)驗(yàn),并與傳統(tǒng)的基于CNN的情感分類方法[6]進(jìn)行對比。
1 相關(guān)研究現(xiàn)狀
1.1 情感分析
文本情感分析致力于將單詞、句子和文檔映射到一組相對應(yīng)的情感類別上,繼而得到一個可用于劃分情感狀態(tài)的心理學(xué)模型。近十年來,深度神經(jīng)網(wǎng)絡(luò)取得了極大的進(jìn)展,各個主流領(lǐng)域,包括圖像分類、機(jī)器翻譯、自然語言處理、語音識別等,均依賴于深度學(xué)習(xí)技術(shù)提供的高層語義特征及分類方法。其中,卷積神經(jīng)網(wǎng)絡(luò)(CNN)和和以長短期記憶網(wǎng)絡(luò)(LSTM)為代表的循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)由于強(qiáng)大的建模能力而被廣泛使用。
1.2 Word2vec詞嵌入技術(shù)
自然語言是一套用來表達(dá)語句含義的復(fù)雜系統(tǒng)。在該系統(tǒng)中,詞(以及中文中的字)是表達(dá)含義的基本單元。顧名思義,詞向量是用來表示詞的向量,也可以被認(rèn)為是詞的特征向量或表征。把詞映射為實(shí)數(shù)域向量的技術(shù)也叫詞嵌入技術(shù)。
假設(shè)詞典中不同詞的數(shù)量(詞典大小)為N,每個詞可以和從0到N-1的連續(xù)整數(shù)一一對應(yīng)。這些與詞對應(yīng)的整數(shù)叫作詞的索引。假設(shè)一個詞的索引為i,為了得到該詞的獨(dú)熱編碼向量表示,我們創(chuàng)建一個全0的長為N的向量,并將其第i位設(shè)成1。這樣一來,每個詞就表示成了一個長度為N的向量,可以直接被神經(jīng)網(wǎng)絡(luò)使用。
詞嵌入模型的訓(xùn)練目標(biāo)是找到對預(yù)測句子或文檔中的周圍單詞有用的單詞表示。更正式地說,給定一系列訓(xùn)練單詞w1,w2,w3,…,wT,其目標(biāo)是最大化以下平均對數(shù)概率(度量了單詞間的相關(guān)性),如式(1)所示。
其中c是訓(xùn)練上下文的大小(可以是中心詞wt的函數(shù))。 較大的c帶來更多訓(xùn)練示例,因此,可以以訓(xùn)練時間為代價帶來更高的準(zhǔn)確性。
1.3 長短時記憶LSTM
在90年代中期,德國研究人員Sepp Hochreiter和Juergen Schmidhuber提出了一種帶有所謂長短時記憶(LSTMs)的循環(huán)神經(jīng)網(wǎng)絡(luò)的變體,作為解決消失梯度問題的方法。LSTM[7-8]有助于保留可以通過時間和層反向傳播的梯度。通過保持更加穩(wěn)定的梯度,它們允許循環(huán)網(wǎng)絡(luò)繼續(xù)學(xué)習(xí)多個時間步長(超過1 000),從而建立一個通道以在較遠(yuǎn)的時間步長范圍內(nèi)連接原因和結(jié)果。
LSTM包含門控單元中循環(huán)網(wǎng)絡(luò)正常輸入輸出流之外的信息。信息可以存儲在單元中,可以寫入單元或從單元讀取,就像計(jì)算機(jī)存儲器中的數(shù)據(jù)一樣。單元通過打開和關(guān)閉的門來決定存儲什么,何時允許讀,寫或擦除。然而,與計(jì)算機(jī)上的數(shù)字存儲不同,這些門是模擬的,通過sigmoid[9]的乘法實(shí)現(xiàn),它們都在從0到1的范圍內(nèi)。由于是模擬的,因此具有可微分性,適用于反向傳播。
這些門對它們接收的信號起作用,并且類似于神經(jīng)網(wǎng)絡(luò)的節(jié)點(diǎn),它們根據(jù)其強(qiáng)度和導(dǎo)入來阻止或傳遞信息,它們使用它們自己的權(quán)重集進(jìn)行過濾。這些權(quán)重,如調(diào)整輸入和隱藏狀態(tài)的權(quán)重,通過循環(huán)網(wǎng)絡(luò)學(xué)習(xí)過程進(jìn)行調(diào)整。也就是說,網(wǎng)絡(luò)模塊學(xué)習(xí)何時允許數(shù)據(jù)進(jìn)入、離開或刪除,學(xué)習(xí)反向傳播梯度并通過梯度下降方法調(diào)整權(quán)重的迭代過程。
在分類過程中,以LSTM為代表的循環(huán)神經(jīng)網(wǎng)絡(luò)有自己的記憶。具體的數(shù)學(xué)形式,如式(2)所示。
2 實(shí)驗(yàn)
2.1 數(shù)據(jù)集選取
使用斯坦福的大規(guī)模電影評論數(shù)據(jù)集(Stanfords Large Movie Review Dataset,IMDb[1])作為文本情感分析實(shí)驗(yàn)的數(shù)據(jù)集。該數(shù)據(jù)集從IMDB電影評論網(wǎng)站收集了50 000條評論,每部電影不超過30條評論。在該數(shù)據(jù)集中,標(biāo)簽為“正面情感”和“負(fù)面情感”的評論數(shù)量相等,因此隨機(jī)猜測將產(chǎn)生50%的準(zhǔn)確性。 該數(shù)據(jù)集只保留了高度兩極化的評論,負(fù)面評價的得分≤4分,總分為10分,正面評價的評分為≥7分。中性評價不包括在數(shù)據(jù)集中。該數(shù)據(jù)集分為訓(xùn)練和測試兩個集合,分別包含25 000條評論。數(shù)據(jù)來源:http://www.andrew-maas.net/data/sentiment。
2.2 LSTM網(wǎng)絡(luò)搭建
對于選取的數(shù)據(jù)集,我們搭建的LSTM模型結(jié)構(gòu)如下:
第一層,特征提取層,利用word2vec將詞語映射成128維向量;
第二層,循環(huán)神經(jīng)網(wǎng)絡(luò)中的長短時記憶模塊。在一條時間序列上,首先將提取到的特征送入輸入單元,在這之后,一條數(shù)據(jù)流從輸入單元送到隱含單元,另一條則從隱含單元送到輸出單元。這里的隱含單元便是神經(jīng)網(wǎng)絡(luò)的記憶單元。對于某一個隱含單元,以xt表示當(dāng)前第t步的輸入,神經(jīng)網(wǎng)絡(luò)根據(jù)當(dāng)前輸入層的輸出和上一步隱含層的輸出計(jì)算目前單元的激活值:s=f(Uxt+Wst-1)。這里的f為非線性的激活函數(shù),本文選擇ReLU。最后,第t步的輸出由softmax層計(jì)算得出;
3)反向傳播。本文利用基于時間步的反向傳播技術(shù)對網(wǎng)絡(luò)進(jìn)行迭代更新。
4)訓(xùn)練完成后,保存模型參數(shù),并使用測試集對模型能力進(jìn)行評估。測試方法與訓(xùn)練過程類似,將用于測試的評論樣本作為輸入,過訓(xùn)練好的LSTM一次得到最終的預(yù)測標(biāo)簽,與數(shù)據(jù)集中給定的真實(shí)標(biāo)注(Ground Truth)進(jìn)行比較得到準(zhǔn)確率。
2.3 CNN網(wǎng)絡(luò)搭建
本文設(shè)計(jì)的CNN模型結(jié)構(gòu),如圖1所示。
第一層,特征提取層,利用word2vec將詞語映射成128維向量;
第二層,卷積層,設(shè)計(jì)了多個尺寸的濾波器可以在每次訓(xùn)練過程中分別劃分3、4、5等不同數(shù)量的字詞;
第三層,池化層,本文采用的是最大池化,該層將所有卷積層的結(jié)果映射到了一個一維的特征向量上;
第四層,隨機(jī)舍棄神經(jīng)元,即dropout正則化層,這樣做可以使神經(jīng)網(wǎng)絡(luò)有更好的泛化能力。
最后一層,全連接及softmax層,給出模型預(yù)測的結(jié)果。
3)使用交叉熵?fù)p失作為本文模型的損失函數(shù),通過梯度下降、反向傳播等技術(shù)迭代更新模型參數(shù)。
4)訓(xùn)練完成后,保存模型參數(shù),并使用測試集對模型能力進(jìn)行評估。測試方法與訓(xùn)練過程類似,將用于測試的評論樣本作為輸入,過訓(xùn)練好的CNN一次得到最終的預(yù)測標(biāo)簽,與數(shù)據(jù)集中給定的真實(shí)標(biāo)注(Ground Truth)進(jìn)行比較得到準(zhǔn)確率。
3 預(yù)測結(jié)果與分析
本文按照第2章中所描述的網(wǎng)絡(luò)搭建方式在大規(guī)模電影評論數(shù)據(jù)集上進(jìn)行了對比實(shí)驗(yàn)。模型參數(shù)如下:對于LSTM,我們設(shè)置學(xué)習(xí)率為0.01,設(shè)置訓(xùn)練批次大小為64(每次梯度的更新根據(jù)隨機(jī)選取的64張文本進(jìn)行計(jì)算),詞向量長度為100,隱藏層單元數(shù)為100,隱藏層層數(shù)為2;對于CNN,我們設(shè)置其學(xué)習(xí)率為0.01,設(shè)置其訓(xùn)練批次大小為64,詞向量長度為100,每個層的神經(jīng)元數(shù)量均為100,卷積核大小為3。本文共進(jìn)行600次迭代(每次迭代均按批次遍歷數(shù)據(jù)集所有文本)。詳細(xì)實(shí)驗(yàn)結(jié)果,如表1所示。
表1給出了本文對比實(shí)驗(yàn)的結(jié)果。其中,分別給出了LSTM和CNN在特定迭代步驟處的訓(xùn)練損失值、訓(xùn)練準(zhǔn)確率和測試準(zhǔn)確率??梢钥闯觯珻NN模型收斂較快但是達(dá)到的最高測試準(zhǔn)確率遠(yuǎn)低于LSTM(CNN最高為82.8%,LSTM在600次迭代內(nèi)最高準(zhǔn)確率為86.9%,且仍有可能上升)。對于CNN模型,其訓(xùn)練損失及訓(xùn)練準(zhǔn)確率在第5次迭代后便分別達(dá)到0.05及97.4%,說明模型已經(jīng)出現(xiàn)了過擬合的現(xiàn)象,產(chǎn)生了梯度消失且后續(xù)訓(xùn)練中模型準(zhǔn)確率并未上升。對于LSTM,其訓(xùn)練損失及訓(xùn)練準(zhǔn)確率一直保持在正常值,說明LSTM模型有效地解決了梯度消失及過擬合的問題。
綜合以上結(jié)果可以看出,LSTM模型相比CNN模型更適合文本情感分析任務(wù)的處理。
4 總結(jié)
本文首先對情感分析研究現(xiàn)狀和文本特征提取、基于LSTM的文本情感分類技術(shù)做了概述,然后通過實(shí)驗(yàn)驗(yàn)證了在大規(guī)模電影評論數(shù)據(jù)集上,LSTM方法相對于傳統(tǒng)CNN方法的有效性,證明了長短時記憶模塊的加入以及LSTM網(wǎng)絡(luò)特有的循環(huán)處理文本特征的方式在分析文本情感特征問題上的有效性。本文采用控制變量的方式對比兩種分類方法,采用相同的word2vec詞嵌入技術(shù)提取文本特征,保證了實(shí)驗(yàn)的公平性。本文對于評論文本情感分析領(lǐng)域的研究,特別是對基于深度神經(jīng)網(wǎng)絡(luò)(包括CNN和RNN)的方法的選取,有一定的指導(dǎo)意義。
參考文獻(xiàn)
[1] 唐慧豐,譚松波,程學(xué)旗.基于監(jiān)督學(xué)習(xí)的中文情感分析技術(shù)比較研究[J].中文信息學(xué)報(bào),2007,21(6):88-95.
[2] Maas A L, Daly R E, Pham P T, et al. Learning word vectors for sentiment analysis[C]// Proceedings of the 49th annual meeting of the association for computational linguistics:Human language technologies. Association for Computational Linguistics (USA. 2017):142-150. (2011, June).
[3] Siegelmann, Hava T, Sontag Eduardo D. On the Computational Power of Neural Nets. ACM. COLT '92:440–449. doi:10.1145/130385.130432.
[4] Hochreiter S, Schmidhuber J. Long short-term memory[J]. Neural computation, 1997,9(8):1735-1780.
[5] Mikolov Tomas, Kai Chen, Greg Coeeado, et al. Efficient Estimation of Word Representations in Vector Space[J]. arXiv, 2013:1301.3781 [cs.CL].
[6] Kim Y. Convolutional neural networks for sentence classification. arXiv, 2014:1408.5882.
[7] Klaus Greff, Rupesh Kumar Srivastava, Jan Koutník, et al. LSTM:A Search Space Odyssey[J]. IEEE Transactions on Neural Networks and Learning Systems, 2015, 28 (10):2222–2232.
[8] Felix Gers, Jürgen Schmidhuber, Fred Cummins. Learning to Forget:Continual Prediction with LSTM[C]// Proc. ICANN'99. IEE, London, 1999:850–855.
[9] Rafferty J, Shellito P, Hyman N H, et al.. Practice parameters for sigmoid diverticulitis[J]. Diseases of the colon & rectum, 2006,49(7):939-944.
[10] Green P J. Reversible Jump Markov chain Monte Carlo Computation and Bayesian Model Determination[J]. Biometrika, 1995, 82(4):711-732.
[11] Malfliet W, Hereman W. The tanh method:I. Exact solutions of nonlinear evolution and wave equations[J]. Physica Scripta, 1996,54(6):563.
(收稿日期:2019.03.18)