季旺 夏振宇
(江蘇科技大學計算機學院 鎮江 212003)
隨著互聯網的普及和電商行業的發展,人們的生活發生了巨大的改變,電子商務成為人們最主要的消費方式。大量的消費者在電商網站上購買商品、發表評論,留下了大量數據,這些網絡數據是消費者表達對產品感受和態度的一種方式。因此對消費者評論的挖掘與分析十分重要,這不僅可以幫助消費者提高購物體驗,還能幫助企業改進產品提高產品質量。因此,如何高效快速準確地對商品評論進行情感分析[1]成為電商領域發展亟待解決的問題之一,同時也是自然語言處理[2]和數據挖掘[3]的熱門話題。
在電子商務平臺上挖掘在線評論是產品改進和營銷策略的重要工具。傳統的對消費者評論的挖掘方法是企業相關人員依靠手工方法從海量的商品評論中提取有用的信息,這種方法耗時耗力且收效甚微,因此利用信息技術進行數據挖掘和分析成為企業發展的迫切需求。基于情感詞典[4]和基于機器學習[5]是目前應用于情感分析研究的兩種主要方法。情感詞典主要包括能夠反映情感傾向的兩類詞語,這兩類詞語必須極性相反,并且每一種類詞語的數量要廣泛,因此一個好的情感詞典首先是一個巨大的語言文字庫。如何構建情感詞典,怎樣利用構建好的情感詞典實現情感分析一般由以下四個步驟組成:文本預處理[6]、中文分詞[7]、訓練情感詞典、情感分類。Python+機器學習的情感分析方法,通常是選取帶有情感極性的詞語作為特征詞,然后對評論的文本向量化,最后利用樸素貝葉斯[8]等方法進行情感分析。21世紀以來,由于深度學習的崛起,國內外的很多學者逐步將深度學習的相關技術運用在智能信息處理領域。深度學習相關的模型例如有循環神經網絡[9]、遞歸神經網絡[10]、長短內存網絡(LSTM)[11]、卷積神經網絡[12]等在情感分析領域應用十分廣泛。
論文介紹了情感分析的傳統算法和模型,詳細分析了改進的TF-IDF[13~14]算法和改進原理,利用Word2vec[15]模型進行詞向量轉換,通過改進的算法優化權重計算,結合深度神經網絡模型CNN[16]進行訓練,并與各種傳統評價模型進行實驗對比分析,最終結果表明本文構建的分類模型實現了對電商領域商品評價較為準確的情感定位。
Word2vec 是一種廣泛應用于訓練詞向量的模型。在大量的文本語料庫中,Word2vec 以無監督的方式學習語義信息,使語義相似的單詞在嵌入空間內距離很近,并且可以更好地比較不同單詞之間的相似性和類比關系。Word2vec 本質上是一個淺層神經網絡,它通過將每個單詞映射到向量來測量單詞之間的相似性。Word2vec主要有Skip-Gram[17]和CBOW[18]兩種模型。Skip-Gram方法每次都使用中心詞來預測周圍的詞,時間復雜度是CBOW 的n倍(n 是窗口大小)。跳轉語法比CBOW 更耗時,但分類準確率更高,因此我們使用跳轉語法模型來訓練詞向量。Skip-Gram 模型包括三層:輸入層、投影層、輸出層,基礎形式如圖1所示。

圖1 Skip-Gram 模型
Skip-Gram 模型訓練的目標函數是:

其中,c是窗口的大小,c越大,得到的訓練樣本T就越多,獲得的結果就越準確。基本的Skip-Gram 模型計算條件概率如下式:

其中,vw和分別是詞w 的輸入和輸出向量。
TF-IDF,詞頻-逆文件頻率。是一種常用的數據挖掘技術,其中TF(Term Frequency)表示文本中特定單詞的出現頻率;IDF(Inverse Document Frequency)則用于衡量單詞的普遍性。傳統的TF 可以用式(3)來概括:

分子是關鍵字t 在文檔d 中出現的次數,分母表示文檔d中所有關鍵字的數量。傳統的IDF可以用式(4)來概括:

|D|表示一個文檔集中的文本總數,||表示某個文本包含特征詞的個數,分母加1 以防止特征詞在文檔集中缺失而導致分母為零。
TF-IDF 的本質實際上是TF 和IDF 的產物,它反映了單詞對整個文檔集的重要性。TF-IDF 是文本特征提取[22]的經典方法之一。計算公式如下:

卷積神經網絡,簡稱CNN[19],是一種前饋神經網絡[20],通常由輸入層、卷積層、池化層、全連接層、softmax層構成。其基本結構如圖2所示。

圖2 CNN模型結構
基于CNN 的文本分類流程主要為文本表示、卷積處理、池化處理、特征組合。具體步驟如下:
Step1:訓練詞向量,對詞向量表示的單詞級聯后表示出句子的語義特征,轉化為文本矩陣,作為卷積神經網絡的輸入來提取文本的特征值;
實現過程:w是卷積核,w∈irhk,h是窗口高度,k代表詞向量維度,wi:h 是長度為h 的詞序列(wi,wi+1,…,wi+h),wi代表一個單詞;每通過一個高為h,寬為k 的窗口即生成一個新的特征值,特征值ci的計算公式如下:

式中b表示卷積層的偏置項,f是激活函數。
Step2:對文本窗口中的詞序列(w1:h,w2:h,…,wn-h+1:n)進行卷積得到特征圖,特征圖的計算公式如下:

其中,n 是單詞數目,h 代表卷積核窗口高度,c是卷積得到的特征圖。
Step3:掃描取樣。先是將輸入的特征圖分成數個w×h大小的子區域,每個子區域經池化輸出對應的值,然后提取每個池化區域的最大特征值。最大特征值的計算公式如下:

式中ci是一個卷積核對文本卷積后形成的特征圖,m代表特征圖數量,采用1-maxpooling,池化后一個特征圖獲取一個值。
Step4:從文本中提取出含有更多信息的特征值,把全部的特征值拼接成一個向量,此向量即為經過CNN處理后對應的特征向量;
Step5:將Step4中的特征值組成n維向量,將該n維向量輸入到分類器中進行分類。
由于傳統的TFIDF 算法在文本特征提取中存在的不足,特別是在關鍵詞權重計算方面有著不小的缺陷。于是,我們在關鍵詞提取中對TF-IDF 算法進行改進,具體辦法如下:
提出一種基于訓練的改進方法,通過使用無關評價文本訓練出新的權重來修正傳統算法計算出來的權重。需要注意的是,無關評價文本的選取越多越好。這樣可以使得數據量龐大,計算結果也相對較好。
改進后的計算公式如下所示:

其中TF 和IDF 的計算方法都與傳統的TFIDF 算法一樣,算法靠公式的最后一項來修正傳統TFIDF算法的不足,其中m 為增進文本訓練出來的值,m 越大代表該特征詞越能代表評論文本主題,k 為該特征項在約束文本中訓練出來的值,k 越高計算出來的重要性就越低。pi為基于手機領域的情感詞典訓練的關鍵詞的權重。
算法中的訓練部分要遵循的原則:首先將訓練文本分為增進文本和約束文本,在增進文本選擇上,選取帶有情感詞或者評價詞的評論文本來進行訓練,訓練的結果就是公式中的權值w。約束文本的選擇就是一些不帶情感傾向的評論文本,訓練的結果是公式里面的權值k,這樣就完成了訓練工作。
情感分類模型主要由以下幾個部分組成:1)數據預處理。對重復文本數據、停用詞、無關評論進行清理;2)分詞。Jieba 主要進行分詞、詞性標注、關鍵詞提取等操作;3)Word2vec 模型訓練詞向量;4)利用改進的TFIDF算法進行優化權重的計算;5)最后經過CNN 進行分類預測。算法流程如圖3 所示。

圖3 情感分類模型構建流程圖
1)實驗環境和實驗數據集
本文實驗環境如下:
操作系統:Windows 10 64位操作系統。
CPU:Intel Core i5-8265U 1.80GHz。
內存容量:8GB。
IDE:Pycharm及Python2.7。
本文所使用的數據集是來自某手機品牌在天貓旗艦店上的評價數據。
2)評價指標
對構建的模型進行評估非常關鍵,主要是來檢測所使用的算法的準確性和穩定性能。準確率(Precision)、召回率(Recall)和F1 值[21](F-Measure)是主要的三種評價指標。

3)實驗參數設置
本文構建的模型運行所需要設置的參數如表1所示。

表1 實驗參數設置
4)結果分析
本文采用Word2vec 模型+改進后的TFIDF 模型+CNN 深度學習模型,對每條評論文本進行情感極性分析。最后對本文構建的評價模型進行實驗,通過與不同組合的分類模型對比,得到以下試驗結果。

表2 不同模型的測試結果對比
從實驗結果可以看出,本文算法相較于其他算法在總體上獲得的效果是最好的。基于訓練的改進方法對關鍵詞權重進行優化后要比傳統的TF-IDF 測試效果好,分類的準確性也相對更高。TF-IDF 與Word2vec 結合分類,要比TFIDF 模型獨立分類效果要好。同時,較利用一般的CNN 模型進行情感分析相比,Word2vec 結合改進后的TF-IDF 再利用CNN 深度神經網絡進行情感分類,在準確率和召回度上都相對提升了5 個百分點,分類效果非常可觀。實驗總結可以得出本文提出的模型分類質量較高。
本文針對TFIDF 算法在自然語言處理領域文本特征提取中存在的不足,對關鍵詞權重的計算進行了優化和改進,改進后的算法提升了分類的效果,更適合于短文本情感分析。在深度學習背景下,利用改進后的TF-IDF 算法結合CNN 構建商品評價模型,對電商商品評論文本進行情感分類,進一步提高了算法的準確率和召回率,為商家不斷提高商品質量滿足客戶需求提供了有效的幫助。