梁一鳴,申 瑩,趙永翼
(1.沈陽師范大學(xué)軟件學(xué)院,遼寧 沈陽 110034;2.沈陽市藝術(shù)幼兒師范學(xué)校,遼寧 沈陽 110000)
互聯(lián)網(wǎng)的迅速發(fā)展以及通信工具的興起,導(dǎo)致網(wǎng)絡(luò)用戶的信息交互渠道大量增加。網(wǎng)絡(luò)用戶通過各種方式來表達(dá)自己對熱點(diǎn)事件的觀點(diǎn),這使得在互聯(lián)網(wǎng)上充斥著大批的由網(wǎng)民所參與的,對于事物、事件等有重大研究性的評論。但是這些觀點(diǎn)以及評論信息大多數(shù)都基于個(gè)人的主觀意見,因此,情感分析的主要目的就是研究如何可以提取與情感相關(guān)的信息。伴隨著生活水平的逐漸提高以及群眾對自己身心的放松,極大多數(shù)的人會選擇在閑暇時(shí)間去觀看一場自己喜歡的電影。然而,面對逐漸擴(kuò)大的電影市場以及眾多但質(zhì)量參差不齊的電影,消費(fèi)者們通常難以抉擇,他們對影片的期望值越大往往失望值也越大,花錢看“爛片”的現(xiàn)象不在少數(shù)。因此,在選擇電影之前,消費(fèi)者們通常會關(guān)注已經(jīng)看過該影片觀眾的評論,這些評論主要涉及到評論者對電影本身表達(dá)的情感信息,以及評論者對電影中的人物態(tài)度觀點(diǎn)等。但是由于每個(gè)人的喜好不同,過度的自我觀點(diǎn)會對其他消費(fèi)者造成潛移默化的影響,極大地提高了對有價(jià)值信息的獲取難度。所以快速并且有效地獲取、處理這些電影的評論是極其重要的。
情感分析又稱作觀點(diǎn)發(fā)掘,隸屬于數(shù)據(jù)挖掘,因其當(dāng)前的巨大數(shù)字量形式記錄,文本情感分析的研究工作發(fā)展十分迅速。情感分析屬于自然語言處理中的一個(gè)子領(lǐng)域,且通常是對攜帶主觀性的文本進(jìn)行處理,并且分析其中所包含的主觀意見或者個(gè)人態(tài)度等。對于情感分析,國外研究起源較早,Riloff等通過構(gòu)建了一些情感詞典為之后的情感分析建立了良好的基礎(chǔ)。國內(nèi)對于情感分析也做了眾多的研究,常曉龍等通過融合中文語義特點(diǎn)來構(gòu)建中文的情感詞典;梁軍等人嘗試使用機(jī)器學(xué)習(xí)的方法進(jìn)行特征提取,在降低了人工成本的同時(shí)也極大地提高了準(zhǔn)確率。群眾對于各種熱點(diǎn)事件有著各自的觀點(diǎn),對其進(jìn)行情感分析可以有效解決所帶來的問題,尤其當(dāng)前的互聯(lián)網(wǎng)環(huán)境當(dāng)中充斥著大量的文本數(shù)據(jù),對其進(jìn)行情感分析是十分重要的工作。
訓(xùn)練詞向量的模型稱作為 Word2vec(word to vector)。訓(xùn)練詞向量的主要目的就是將詞語從高維空間映射到低維空間當(dāng)中,良好的詞向量可以通過在詞向量的空間里聚集語義近似詞的方式來提高文本分類的效果。Word2vec依賴于 CBOW和Skip-gram兩個(gè)模型來建立神經(jīng)詞嵌入,其兩個(gè)模型是根據(jù)3層的神經(jīng)網(wǎng)絡(luò)語言模型 NNML的基礎(chǔ)上提出來的。 CBOW主要是根據(jù)前后文來推測當(dāng)前詞,Skip-gram模型和 CBOW模型思路是相侼的,是通過當(dāng)前的文本來推測前后文,但當(dāng)兩者的前后文相似的同時(shí),目標(biāo)詞匯也是相似的。因 Skip-gram模型不利于大規(guī)模數(shù)據(jù)模型的訓(xùn)練,因此本文采用的是CBOW模型。 CBOW模型結(jié)構(gòu)示意圖如圖 1所示。
圖1 CBOW模型結(jié)構(gòu)示意圖
在分析極性之前,通過對數(shù)據(jù)進(jìn)行預(yù)處理可以去除掉對我們判別極性沒有幫助的噪聲。數(shù)據(jù)預(yù)處理是自然語言處理技術(shù),數(shù)據(jù)預(yù)處理方法可以劃分為數(shù)據(jù)清理、數(shù)據(jù)集成、數(shù)據(jù)變換以及數(shù)據(jù)規(guī)約。數(shù)據(jù)預(yù)處理主要將原始的文本數(shù)據(jù)進(jìn)行清洗,再去除掉文本數(shù)據(jù)中的停用詞,之后將文本進(jìn)行分詞并且轉(zhuǎn)換成詞序列,轉(zhuǎn)換后的詞序列轉(zhuǎn)換成為數(shù)字序列并且將詞的編號序列中每一個(gè)詞表示成為詞向量。信息抽取則是一個(gè)標(biāo)注問題,主要是從文本數(shù)據(jù)當(dāng)中使用提取算法來提取信息。
LSTM(Long Short Term Memory)是長短期記憶網(wǎng)絡(luò),主要由三個(gè)門來控制,分別為遺忘門(Forget Gate)、輸入門(Input Gate)以及輸出門(Output Gate)。門(Gate)是一種可選的可以讓信息通過的方式,LSTM三個(gè)門對記憶單元進(jìn)行更新以及控制細(xì)胞的狀態(tài)。遺忘門可以丟棄無用的信息,主要通過一個(gè)遺忘門層完成。遺忘門會讀取前一時(shí)刻的輸入單元 ht-1和當(dāng)前的輸入向量 xt,給每個(gè)前一時(shí)刻的細(xì)胞狀態(tài) Ct-1輸出一個(gè) 0到1之間的數(shù),其中,1代表的是完全保留,而 0代表的是完全舍棄。輸入門在被遺忘部分之后,從當(dāng)前的輸入當(dāng)中添加新記憶,當(dāng)前的輸入向量 xt、前一時(shí)刻的細(xì)胞狀態(tài)Ct-1和前一時(shí)刻的輸入單元 ht-1決定了當(dāng)前的細(xì)胞狀態(tài)Ct。輸出門通過計(jì)算后得到一個(gè)新的細(xì)胞狀態(tài)Ct,且當(dāng)前的細(xì)胞狀態(tài) Ct和前一時(shí)刻的輸入單元 ht-1以及當(dāng)前輸入向量 xt決定了當(dāng)前單元的輸出 ht。 LSTM單元結(jié)構(gòu)示意圖如圖 2所示。
圖2 LSTM單元結(jié)構(gòu)示意圖
LSTM在實(shí)踐中存在著大量的變動,GERS提出了增加了“peephole connection”,讓門也接受當(dāng)前狀態(tài)的輸入。LSTM單元的計(jì)算公式如下:
式中,Ct為前一時(shí)刻的細(xì)胞狀態(tài);ft為遺忘門,用于來決定哪兒些信息要增加到LSTM的記憶細(xì)胞狀態(tài);it為輸入門,用于來決定哪兒些信息從LSTM的記憶細(xì)胞狀態(tài)刪掉;ot為輸出門,用于來決定哪兒些信息從LSTM的記憶細(xì)胞狀態(tài)輸出;Wf、Wi、Wo為各自的鏈接;bf、bi、bo為各自輸入鏈接的權(quán)重。
本文采用了大規(guī)模的電影評論數(shù)據(jù)集IMDB,該電影評論數(shù)據(jù)集 IMDB中包含了 5萬條電影評論。將 5萬條電影評論平等地劃分為訓(xùn)練數(shù)據(jù)以及測試數(shù)據(jù),表 1統(tǒng)計(jì)了訓(xùn)練數(shù)據(jù)以及測試數(shù)據(jù)的劃分分布。將其劃分為“positive”和“negative”兩個(gè)標(biāo)準(zhǔn),表 2展示出了“positive”和“negative”兩個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)集樣例。因?qū)⒅行栽u論去掉,所以劃分的準(zhǔn)確率為一半。
表1 訓(xùn)練數(shù)據(jù)以及測試數(shù)據(jù)統(tǒng)計(jì)結(jié)果
表2 數(shù)據(jù)集樣例
本文使用了Keras,通過Word 2vec將詞語轉(zhuǎn)換成為詞向量并進(jìn)行特征提取之后,再將提取到的特征添加到LSTM的模型當(dāng)中,其輸出是經(jīng)過Softmax層計(jì)算得到的。將 IMDB劃分為訓(xùn)練數(shù)據(jù)以及測試數(shù)據(jù),然后把訓(xùn)練數(shù)據(jù)分批次輸入到模型中,再將訓(xùn)練好的模型以及參數(shù)保存下來并且輸入到已經(jīng)完成訓(xùn)練的模型當(dāng)中,得到準(zhǔn)確率。準(zhǔn)確率如圖3所示。
圖3 模型準(zhǔn)確率
由圖3可知,模型的準(zhǔn)確率隨著迭代次數(shù)增長而增長,在達(dá)到最高點(diǎn) 86.94%之后開始下降。本文使用同一個(gè)數(shù)據(jù)集,與不同的模型進(jìn)行實(shí)驗(yàn)對比,實(shí)驗(yàn)結(jié)果如表 3所示。
表3 實(shí)驗(yàn)結(jié)果對比
由表3可知,LSTM模型實(shí)驗(yàn)效果較好。
本文通過基于 LSTM模型對電影評論文本實(shí)行情感分析,通過實(shí)驗(yàn)結(jié)果我們發(fā)現(xiàn),LSTM模型在對電影評論文本的情感分析中的可行性以及有效性,望之后可以進(jìn)一步研究如何構(gòu)建更為復(fù)雜的模型對情感進(jìn)行分析。