王康靜, 錢江海,2
(1.上海電力大學 數(shù)理學院, 上海 200090;2.華東師范大學 軟硬件協(xié)同設計技術與應用教育部工程研究中心, 上海 200062)
隨著網(wǎng)絡與社交媒體的不斷發(fā)展,網(wǎng)絡用戶可以自由且隨時發(fā)表自己對某一實體的主觀意見,各大媒體便需要分析人們對于某一特定實體的反應,并依據(jù)其表達的情感采取有針對性的措施[1],因此情感分析對于政策措施的制定與經(jīng)營策略的實施具有重大研究意義。目前常用的情感文本分析模型主要包含無監(jiān)督詞典模型[2]和有監(jiān)督分類模型[3-4]。無監(jiān)督詞典模型通過預定義情感詞典中的特定詞匯來計算文本的情感得分,并結合其他因素決定最終情感分數(shù)。文獻[5]利用情感詞典優(yōu)化特征詞權重,并與文本語義特征相融合,有效提高了情感特征詞的強度和情感分類精度。文獻[6]通過分析WordNet詞典的相似性,評估同類別的情感詞匯具備同質相似性特征,為情感文本分析提供基礎。文獻[7]利用詞性標注、情緒詞典和通用情感詞典作為情感分類流程中特征提取的外部資源,顯著改善了情感分類效果。雖然詞典模型在無標簽數(shù)據(jù)下可作為一種優(yōu)選的情感分類方法,但由于其理論基礎依賴于特定領域詞典和專家知識,所以詞典模型的魯棒性和適用性有限。有監(jiān)督分類模型的首要工作是非結構化文本數(shù)據(jù)的結構化,包含應用最為廣泛的詞頻-逆文本頻率(Term Frequency-Inverse Document Frequency,TF-IDF)模型[8]和詞嵌入模型。詞嵌入模型主要包含Word2Vec模型[9]和GloVe模型[10]兩類。文獻[11]通過實義詞語抽取分析,并利用支持向量機(Support Vector Machine,SVM)分類算法對藏文微博進行積極、客觀與消極分類。文獻[12]提出通過卡方統(tǒng)計提取訓練文本特征詞,并由TF-IWF賦予其特征權重,有效擴大了特征詞權重值的范圍。文獻[13]通過改進TF-IDF加權,對類別區(qū)分能力不同的詞語賦予不同的權重。雖然有監(jiān)督分類模型相比無監(jiān)督詞典模型具有更好的分類表現(xiàn),但是其前提條件必須是針對標簽數(shù)據(jù),且對于訓練文本的數(shù)據(jù)質量要求較高。TF-IDF模型是一種經(jīng)典文本特征表示方法,其主要思想是通過計算詞項的頻率和逆文檔頻率來衡量其重要性。TF-IDF模型能夠準確反映文本中各個詞項的重要性,可以將其應用于多語言文本的特征表示、圖像文本的聯(lián)合表示及知識圖譜的構建等。
通過綜合分析無監(jiān)督詞典模型和基于TF-IDF特征提取的有監(jiān)督分類模型在情感分類方面的優(yōu)缺點和適用性可知,這兩種方法本質上具有互補性,適當結合可滿足不同領域情感分類的適用性。
TF-IDF模型主要用于識別不常出現(xiàn)的詞匯,是構建結構化文本最為成熟的模型之一。它是基于兩個度量指標的組合:詞頻和逆文本頻率。詞頻表示一個特征詞在對應文本中的出現(xiàn)次數(shù),逆文本頻率表示包含某特征詞的文本數(shù)與總文本數(shù)的比率。詞頻與逆文本頻率的計算公式為
(1)
(2)
式中:Tf(w,D)——文本D中詞w的頻率;
fwD——文本D中詞w的出現(xiàn)次數(shù);
ND——文本D總詞數(shù);
Idf(w,D)——文本D中詞w的逆文本頻率;
N——文本集合總篇數(shù);
df(w)——存在詞w的文本數(shù)。
在實際模型中,為了避免因誤差為零導致計算量出現(xiàn)無窮大情況,需要對每個詞項增加1的文檔頻率,即將Idf計算結果加1。
通過將文本的詞頻向量和詞的逆文本頻率相乘,并進行L2規(guī)范化,可以得到最終特征向量Tfidf為
(3)
式中:‖·‖——歐幾里得L2范數(shù)。
無監(jiān)督詞典模型是出現(xiàn)較早的情感分類模型,適用于互聯(lián)網(wǎng)中大量未經(jīng)標注的情感文本數(shù)據(jù)分類。該模型的附加資源是情緒詞典。情緒詞典中包含正面情感和負面情感、極性(正面或負面分數(shù)的大小)、詞性標簽等相關聯(lián)的單詞列表,可以用來計算情感文本中的情緒得分,并結合其他參數(shù),修正情緒得分。無監(jiān)督詞典模型的算法邏輯描述如下。
第1步:加載情感文本數(shù)據(jù),以特定標識符進行分句預處理。
第2步:加載第三方情緒詞典資源,可將多個情緒詞典進行融合。
第3步:依據(jù)情緒詞典匹配各情感文本分句所包含的情感詞,并記錄其極性與位置。
第4步:依據(jù)分句情感詞定位向前搜索程度副詞,并依據(jù)程度副詞的權重對情感極性進行加權。
第5步:依據(jù)分句情感詞定位向前查找否定詞。若否定詞數(shù)量為奇數(shù),則情感極性取反;若否定詞數(shù)量為偶數(shù),則情感極性不變。
第6步:搜尋分句結尾感嘆詞。若分句結尾存在感嘆號,則分句相應情感詞極性加2;若分句結尾存在問號,則分句相應情感詞極性加負2。
第7步:計算各分句情感詞極性之和,即正極性與負極性之和。
第8步:計算各分句情感詞正極性和負極性均值,并計算正極性均值和負極性均值與該分句極性之和的距離。距離較近的極性,則為該分句的情感傾向。
傳統(tǒng)的TF-IDF模型通過逆文本頻率計算每個特征詞的權重與文本語料的特征向量。首先,通過中文分詞或英文詞根還原;然后,經(jīng)過去停用詞預處理;最后,使用TF-IDF模型,得到文本語料的特征向量表示。雖然此種方式可以適用大多數(shù)文本特征向量構建場景,但在情感文本領域卻有很大的局限性,因為情感文本所含的某些特征詞具有不同程度的情感極性。這些具有更大權重的特征詞,需要在原始TF-IDF模型構成的特征詞向量基礎上融合特征詞的情感極性。
當前情感詞匯的極性研究主要包含情感詞匯的極性偏好和極性程度。前者用于評價特征詞的正面情感和負面情感傾向,后者用于評價特征詞的正面情感和負面情感程度。情感詞匯的極性偏好和極性程度共同構成了該特征詞的情感區(qū)分度。在計算特征詞的情感區(qū)分度時,可以采用該特征詞在不同情感語料中的分布頻率表示。如果一個詞匯在正面情感文本中出現(xiàn)的頻率較高,則有理由相信該詞匯具有正極性的可能性更高;反之亦然。因此,通過計算一個詞匯在正面情感文本的頻率和在負面情感文本的頻率并進行比較,可以得出該詞匯的情感區(qū)分度。詞匯的情感區(qū)分度計算公式為
(4)
式中:ηw——特征詞w的情感區(qū)分度;
Nwp——特征詞w在正面情感文本中的出現(xiàn)次數(shù);
Np——正面情感文本總篇數(shù);
Nn——負面情感文本總篇數(shù);
Nwn——特征詞w在負面情感文本中的出現(xiàn)次數(shù)。
為了避免詞匯在正面情感文本或負面情感文本中出現(xiàn)零次而不滿足對數(shù)運算,故分別加1。詞匯的情感區(qū)分度模型如圖1所示。
圖1 詞匯的情感區(qū)分度模型
當特征詞w在正面情感文本或負面情感文本出現(xiàn)次數(shù)相等時,ηw=0,表示該特征詞無任何情感區(qū)分度;當特征詞w在正面情感文本的出現(xiàn)次數(shù)大于在負面情感文本的出現(xiàn)次數(shù)時,ηw>0,表示該特征詞的情感傾向為正,且情感程度等于η;當特征詞w在正面情感文本的出現(xiàn)次數(shù)小于在負面情感文本的出現(xiàn)次數(shù)時,ηw<0,表示該特征詞的情感傾向為負,且情感程度等于η。
式(4)雖然可以通過度量每個特征詞在不同情感類型文本中的分布頻率計算其情感區(qū)分度,但由于其僅統(tǒng)計每個特征詞在情感文本中是否出現(xiàn),并沒有考慮該特征詞在各文本中的出現(xiàn)次數(shù),因此可能會導致由于惡意差評和虛假好評而引發(fā)的詞匯情感區(qū)分度失真,即詞匯情感區(qū)分度穩(wěn)定性較差。
現(xiàn)假設存在10組情感文本數(shù)據(jù)D,其中5組為正面情感文本,5組為負面情感文本。某一特征詞w在正面情感文本中出現(xiàn)2次,在負面情感文本中出現(xiàn)3次,依據(jù)式(4)可以計算得出ηw=-0.29,那么可以判定w的情感傾向為負面,且傾向程度等于|ηw|。但若w在2篇正面情感文本出現(xiàn)的次數(shù)分別為(2,5),在3篇負面情感文本出現(xiàn)的次數(shù)分別為(1,1,9),此時若僅依據(jù)ηw判斷w的情感區(qū)分度便會失真,因為雖然w在負面情感文本中多出現(xiàn)了1次,但在某一負面情感文本中出現(xiàn)了9次,相比同為負面情感文本的其他情況差異極大,因此可能屬于惡意差評。如果該條文本不納入w的負面情感文本統(tǒng)計范圍,那么w的情感區(qū)分度ηw=0,且根據(jù)其在正面情感文本其中的出現(xiàn)次數(shù),可以判斷w更有可能偏向正面。
因此,除了通過度量每個特征詞在不同情感類型文本中的分布頻率計算其情感區(qū)分度之外,還需要更為深入的度量每個特征詞在同一情感類型文本中的出現(xiàn)次數(shù)。為此,本文引入離散系數(shù)這一統(tǒng)計指標來評估特征詞在正面情感文本或負面情感文本中的分布情況,以判定其情感偏好的穩(wěn)定性,避免惡意差評或虛假好評情況的發(fā)生。離散系數(shù)可以用以衡量不同水平高低的數(shù)據(jù)組別的離散情況,有效避免正面情感文本組別與負面情感文本組別的數(shù)據(jù)水平差異。其計算公式為
(5)
式中:λ——特征詞w在正面情感文本或負面情感文本中的離散系數(shù);
n——特征詞w在正面情感文本或負面情感文本中的出現(xiàn)次數(shù);
xi——特征詞w在第i篇正面情感文本或負面情感文本中的出現(xiàn)次數(shù);
在情感文本數(shù)據(jù)D中,w在2篇正面情感文本出現(xiàn)的次數(shù)分別為(2,5),則其正面離散系數(shù)為λp=0.43;在3篇負面情感文本出現(xiàn)的次數(shù)分別為(1,1,9),則其負面離散系數(shù)為λn=1.03。若λ越大,表示特征詞w在正面情感文本或負面情感文本的不穩(wěn)定性越高,則需要對特征詞w的正面情感或負面情感傾向加以懲罰。懲罰計算公式為
(6)
λp——特征詞w的正面離散系數(shù);
λn——特征詞w的負面離散系數(shù)。
在對特征詞的情感極性偏好和程度做出完備評估后,便可以將其作為特征詞的情感表征權重融入到TF-IDF模型中?,F(xiàn)假設某情感文本的原始TF-IDF為矩陣V,由n篇情感文本的m個特征詞構成,特征詞集合為{w1,w2,w3,…,wm},第i篇情感文本的第j個特征詞的Tfidf值為vi·j,V表示為
(7)
式中:Tfidffinal——改進后的TF-IDF模型;
NTUSD——情緒詞典集合;
k——情緒詞典中的特征詞w應賦予的權值,一般取2。
通過無監(jiān)督詞典模型可以在情感文本無標簽的情況下,對情感文本做出初步的情感評分,且通過某些有監(jiān)督的機器學習算法。基于改進的TF-IDF模型也可以通過其決策函數(shù)評估情感文本具體屬于某一類別的得分,并將此得分視為情感評分。為綜合考量兩種情感文本評分模式,參考分類指標查準率和查全率的融合得到F1綜合評價指標的思想,對兩類評分模式進行調(diào)和平均。計算公式為
(8)
式中:sf——情感文本綜合情感得分;
stfidf——基于改進TF-IDF模型的有監(jiān)督分類模型決策得分;
sdict——基于詞典模型的情感得分。
融合改進TF-IDF與無監(jiān)督詞典模型的情感分類算法計算流程如圖2所示。
圖2 情感分類算法計算流程
由圖2可知:首先,對情感文本語料分別進行結構化預處理,將通過分句預處理的文本語料輸入詞典模型進行評估,便可以得到各分句的情感得分;其次,將結構化預處理后的文本數(shù)據(jù)通過改進TF-IDF模型進行文本特征向量化,并將其特征矩陣輸入有監(jiān)督的機器學習模型,評估其決策函數(shù)的得分,作為情感得分;最后,對兩類情感得分進行調(diào)和平均,得到情感文本的綜合情感得分。計算完成情感文本的綜合得分后,便可以根據(jù)決定決策邊界對綜合得分進行分類。
本文實驗采用一個中文旅館評論數(shù)據(jù)集和一個英文電影評論數(shù)據(jù)集。中文旅館評論數(shù)據(jù)集來自文獻[14],共選取5 000條記錄,包含正面評論2 500條,負面評論2 500條,且在正面評論和負面評論中分別含有與旅館居住環(huán)境不符的虛假好評200條和惡意差評300條,用以測驗本文模型在二者之間的鑒別力。英文電影評論數(shù)據(jù)集來自文獻[15],共選取50 000條記錄,包含正面評論25 000條,負面評論25 000條。此外,英文情緒詞典采用AFINN詞典和VADER詞典,AFINN詞典包括3 300個單詞及其情感極性分數(shù);VADER詞典包含7 500個帶有正確驗證分數(shù)的詞匯特征。中文情緒詞典采用臺灣大學情緒詞典,包含8 276個負面詞匯和2 810個正面詞匯。實驗過程中,均取整體數(shù)據(jù)集的80%作為訓練集,20%作為測試集。對于無監(jiān)督詞典模型僅使用20%的測試集。
情感分類的整體效能可采用分類準確率衡量,即正確分類的情感文本占所有情感文本的比例。準確率越高,分類模型效能越好。分類準確率計算公式為
(9)
式中:TP——實際類標簽等于預測類標簽的正類實例總數(shù);
TN——實際類標簽等于預測類標簽的負類實例總數(shù);
FP——模型錯誤地將負類預測為正類的實例總數(shù);
FN——模型錯誤地將正類預測為負類的實例總數(shù)。
準確率一般用于數(shù)據(jù)類別較為平衡的情況。如果數(shù)據(jù)類別分布偏差較大,將使用精度Precision、召回率Recall和F1分數(shù)這3個指標衡量模型分類效能。精度表示正類中正確預測的數(shù)量占所有預測正類數(shù)量的比例,召回率表示正類中正確預測的數(shù)量占正確預測和錯誤預測數(shù)量的比例,而F1分數(shù)則是精度和召回率的諧波平均值,用以平衡二者的度量值及評估模型的整體分類效能。3個指標計算公式為
(10)
(11)
(12)
為驗證本文所提模型在情感分類方面的提升效果,將采用上述兩種不同的數(shù)據(jù)集分別針對原始TF-IDF模型、詞典模型、結合情緒詞典的TF-IDF模型、卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network,CNN)模型和本文模型進行分析對比。情緒詞典模型采用AFINN,該模型可以預測情感文本的正負情感得分;有監(jiān)督分類模型采用梯度提升機,該模型是一種常用的集成學習模型,相比傳統(tǒng)的單一機器學習分類模型,具有更好的分類精度和穩(wěn)定性,且該模型通過其決策函數(shù)可以評估某一樣本屬于某一類別的得分。
中文旅館評論數(shù)據(jù)集測試過程中,有監(jiān)督分類模型采用5層交叉驗證方式,無監(jiān)督詞典模型采用5次測試均值。實驗結果如表1所示。
表1 旅館評論數(shù)據(jù)集對比分析
由表1可知,在中文情感文本語料測試條件下,本文模型顯著優(yōu)于其他模型分類表現(xiàn)。由于無監(jiān)督詞典模型屬于無監(jiān)督情感分類模型,僅依靠情感文本與情緒詞典的匹配關系計算情感得分,所以其分類表現(xiàn)最差,綜合分類精度為0.726。TF-IDF模型考慮了特征詞匯的統(tǒng)計特性,并利用有監(jiān)督分類模型進行訓練,所以分類精度較無監(jiān)督詞典模型有明顯提升。融入情感詞典的TF-IDF模型,不僅考慮了特征詞匯的統(tǒng)計特性,還對這些特征詞是否在情感詞典出現(xiàn)或根據(jù)其情感詞典中的極性,賦予不同的權重,所以相比TF-IDF模型,綜合分類精度略有提升,但由于情感特征詞的數(shù)量限制和具體分布信息欠缺,所以提升效果不太顯著。CNN模型在兩項指標均表現(xiàn)良好,但對于文本語料的數(shù)量和質量要求較高,且訓練時間較長。本文所提模型綜合分類精度及準確率都表現(xiàn)優(yōu)異。
英文電影評論數(shù)據(jù)集測試過程中,有監(jiān)督分類模型采用5層交叉驗證的方式,無監(jiān)督詞典模型采用5次測試均值。實驗結果如表2所示。
表2 電影評論數(shù)據(jù)集對比分析
表3 旅館評論數(shù)據(jù)集詞匯分析
針對基于TF-IDF模型的傳統(tǒng)情感文本分類算法存在情感詞匯極性偏好區(qū)分度和穩(wěn)定性較低的問題,本文提出改進TF-IDF模型加權的方式,并融合有監(jiān)督分類模型與無監(jiān)督詞典模型的綜合評分。通過對比實驗可知,本文模型可以提高情感分類的精確度。