肖 江,丁 星,何榮杰
(江蘇科技大學(xué) 計算機科學(xué)與工程學(xué)院,江蘇 鎮(zhèn)江 212000)
微博是微型博客的簡稱,是一個用于信息分享、信息傳播以及信息獲取的平臺。微博用戶可以通過各種計算機終端或移動終端,實現(xiàn)信息的即時分享,通常中文微博內(nèi)容字?jǐn)?shù)限制在140字左右,而這僅僅140字卻能表達出一個人的情感,觀點和對某個事件的態(tài)度、看法,大大方便了信息的傳遞、獲取與共享,加快了信息的傳播速度,微博已經(jīng)成為一種新興的網(wǎng)絡(luò)媒體。同時,微博給予網(wǎng)絡(luò)用戶更加自由、更便捷的方式來溝通信息、分享心情、表達觀點,所以深受廣大網(wǎng)民朋友的喜愛,一躍成為國內(nèi)最為熱門的互聯(lián)網(wǎng)應(yīng)用之一。
隨之而來的是海量的情感文本信息,而這些海量的情感信息是非常寶貴的信息資源,通過分析這些情感文本信息可以得到網(wǎng)民對某個觀點、某種社會現(xiàn)象的態(tài)度和看法,給政府制定新的政策提供了參考的依據(jù),給企業(yè)規(guī)劃新的發(fā)展方向提供了幫助,同時能夠給廣大消費者購買商品提供參考和依據(jù)。
目前文本情感分析大致分為兩種方法[1]:基于情感詞典和基于機器學(xué)習(xí)的情感分析方法。
基于情感詞典的方法是對文本信息的情感極性進行分析和計算,得到一個情感極性值。Turney[2]等人通過計算基準(zhǔn)詞與待估詞匯的SO-PMI值來分析情感傾向性。在國內(nèi),朱嫣嵐[3]等人則利用 HowNet提出的基于語義相似度的方法和基于語義相關(guān)場的方法分別計算待估詞匯與預(yù)先選好的基準(zhǔn)詞對的相似度,最后得到該詞的傾向性。文獻[4]提出利用表情圖片結(jié)合情感詞語的方法構(gòu)建中文情感詞典,構(gòu)建貝葉斯分類器,并且利用熵的概念對語料庫進行優(yōu)化,提高了分類的準(zhǔn)確性。
基于機器學(xué)習(xí)的方法,常用的分類方法有:支持向量機分類法、中心向量分類法、K近鄰算法分類法、感知器分類法、貝葉斯分類法和最大熵分類法等,通過此類分類器識別出該文本的傾向性。Wang[5]等人構(gòu)建一個 Twitter情感分析系統(tǒng),能夠?qū)崟r地對有關(guān)總統(tǒng)選舉的評論信息進行情感傾向性分析;Jiang[6]等人采用主題相關(guān)和無關(guān)的方式對微博文本進行情感極性分類,將其分為正向情感和負(fù)向情感。在國內(nèi),謝麗星[7]等提出了基于層次結(jié)構(gòu)的多策略中文微博情感分析方法,文中對比了表情符號的規(guī)則方法、情感詞典的規(guī)則方法、基于SVM的層次結(jié)構(gòu)多策略方法。
縱觀以上分析方法,本文通過構(gòu)建情感詞典的方法來構(gòu)建微博輿情情感分析系統(tǒng),從而分析情感傾向,和以往的分析不同,本文構(gòu)建的情感詞典具有領(lǐng)域特性,能自動識別標(biāo)注領(lǐng)域內(nèi)情感詞并且將新詞添加到情感詞庫中,并且考慮情感副詞的影響,綜合分析情感傾向。
文中針對新浪微博做分析,利用新浪微博API抓取特定領(lǐng)域的微博話題,選取#巴西世界杯#,#iphone6#,#NBA總決賽#作為分析語料,根據(jù)分析結(jié)果將其分為正面話題、一般話題、負(fù)面話題。本文分別選取3個特定話題各2 000條微博數(shù)據(jù)作為分析語料,然后對其進行人工標(biāo)注,將該微博數(shù)據(jù)標(biāo)注為正向、負(fù)向、中性情感微博,標(biāo)注的統(tǒng)計結(jié)果如表1所示。
表1 微博數(shù)據(jù)信息Tab.1 Micro-blog data information
微博文本有其自身的特點,表達方式多樣性,且包含網(wǎng)頁鏈接、圖片、英文字母等等,本文需要對其進行預(yù)處理,步驟如下:
1)對微博數(shù)據(jù)進行去重、去噪、標(biāo)簽過濾等操作。
2)去除表情符號,為后面的分詞處理做準(zhǔn)備。
3)對微博進行分詞處理,文中使用中科院ICTCLAS系統(tǒng)[8]進行分詞與詞性標(biāo)注。
4)對分詞后的文本進行粗降維,即將停用詞,低頻詞從文檔中去除。
基準(zhǔn)情感詞是指具有非常明顯褒貶傾向的詞匯,是在某個領(lǐng)域內(nèi)具有明確褒貶意義的基礎(chǔ)詞匯。由于中文表達方式的多樣性,所以詞的褒貶傾向在不同領(lǐng)域并不是完全一致,有些詞情感傾向非常明確,但是在不同領(lǐng)域相關(guān)度就會降低,詞匯的敏感度也會降低,所以在相關(guān)度低的領(lǐng)域分析該類詞匯的意義并不是太大。
基于以上的考慮,構(gòu)建基準(zhǔn)情感詞典,流程如下:
Step1:取特定領(lǐng)域一定數(shù)量的微博數(shù)據(jù)集,進行分析。
Step2:將某領(lǐng)域的微博信息進行預(yù)處理,步驟如2.2節(jié)所示,獲得預(yù)處理后的微博數(shù)據(jù)。
Step4:設(shè)定高頻詞匯的閾值P,并且利用HowNet情感詞匯集對非情感詞匯進行過濾。
Step5:利用HowNet正負(fù)面詞匯集判定高頻詞匯的正負(fù)情感傾向。
圖1 基準(zhǔn)情感詞典生成流程Fig.1 The generation process of the benchmark emotion dictionary
Step6:在此采用基于知網(wǎng)的語義相似度計算方法來計算詞匯之間的Similarity值。
Step7-Step10:正負(fù)基準(zhǔn)詞集相互進行相似度計算是為了獲得該領(lǐng)域情感傾向更為鮮明的詞作為基準(zhǔn)情感詞集,更準(zhǔn)確的識別情感傾向。
Step11:各個基準(zhǔn)詞代表的情感傾向強度不同,所以需要手動標(biāo)注基準(zhǔn)詞的強度值。
在構(gòu)建領(lǐng)域情感詞基準(zhǔn)詞集基礎(chǔ)上構(gòu)建領(lǐng)域相關(guān)情感詞典,再利用基準(zhǔn)詞集自動識別情感詞,實現(xiàn)情感詞的自動擴展。本文情感詞識別及情感詞庫構(gòu)建的整體思路如下圖所示。
圖2 領(lǐng)域情感詞自動識別和標(biāo)注Fig.2 The automatic identification of field of emotional dictionary
如圖2所示此為領(lǐng)域相關(guān)情感詞典的構(gòu)建過程,并且自動將新情感詞加入到情感詞庫,對擴展的詞匯進行強度的標(biāo)注,減少了人工標(biāo)注過程。目標(biāo)詞與基準(zhǔn)詞相似度計算,在此采用基于知網(wǎng)的語義相似度計算方法。
文中計算情感詞相似度是基于知網(wǎng)語義相似度計算方法,對領(lǐng)域內(nèi)情感詞進行相似度計算,以均值作為目標(biāo)詞的Similarity值。
目標(biāo)詞的情感傾向判定規(guī)則如下,當(dāng)正向情感的Similarity值大于負(fù)向情感Similarity值,則為正向情感詞,反之則為負(fù)向情感詞。如若正、負(fù)向Similarity值小于給定的閾值P則為非情感詞。
利用2.3和2.4構(gòu)建如表2所示的領(lǐng)域情感詞典,利用上述計算相似度的方法對詞語集W={w1,w2,w3…}分別計算Similarity值,剔除不含情感詞的詞匯,含情感的詞匯自動加入情感詞庫。最后情感詞匯集的情感傾向表示為W={<w1,o1>,<w2,o2>,<w3,o3>,<w4,o4>…}, 其中 o 表示情感強度值。那么詞語的情感傾向值 O(w)可以用如下的公式來計算:
如下為領(lǐng)域情感詞詞典,以#iphone6為例。
表2 領(lǐng)域情感詞詞典Tab.2 Field of emotional dictionary
和英文微博相比中文的語法非常豐富,詞與詞之間不是獨立存在的,他們之間還存在著一定的依存的關(guān)系,即受前面的修飾詞的影響,最常見的就是否定詞和副詞對情感傾向的影響。目前對于副詞和否定詞等修飾情感詞大多采用的是建立修飾詞典,在判斷句子的情感傾向時,首先檢查情感詞前的詞語是否屬于修飾詞,如果是則根據(jù)詞典中修飾詞的強度值計算出情感傾向值。某個詞的修飾副詞集w={<q1,<at1,at2..>>,<q2,<at1,at2..>>,<q3,<at1,at2..>>…}, 其中 q 表示情感詞,at表示修飾副詞。那么加入情感副詞后的情感值O(at)用如下公式計算:
前一節(jié)完成了情感詞典的構(gòu)建工作,本節(jié)在情感詞典基礎(chǔ)上提出一種分析方法,分析并判定微博情感傾向值。
輸入:中文微博句子S
Step1:對S進行預(yù)處理,得到預(yù)處理后的句子ST(見2.2節(jié)步驟 1、2);
表3 修飾副詞詞典Tab.3 Adverb dictionary
Step2:對ST進行分句處理,將長句分成多個短句,得到短句集ST={S1,S2…Si},并進行詞性標(biāo)注 (見2.2節(jié)步驟3、4),得到處理后的詞語集 Si={<w1,ad1><w2,ad2>…},其中 w表示情感詞語,ad表示修飾副詞;
Step3:計算Si的情感傾向值Oi;
Step3.1:根據(jù)情感詞典中公式(3)計算情感詞的傾向值Oi(w);
Step3.2:在 Oi(w)的基礎(chǔ)上根據(jù)情感副詞詞典計算 Oi(Si);
Step4:得到每個短句的情感傾向值Oi,然后利用加權(quán)平均法得到整個句子的情感傾向值O;
Step5:計算總的情感傾向值,輸出總的情感強度O。
文中利用爬蟲從新浪微博中抓取3個話題各2 000條微博作為數(shù)據(jù)集進行分析,經(jīng)人工篩選后得到正向、負(fù)向、中性微博各650條。利用文中提出的基于領(lǐng)域詞典的情感分析方法進行分析,最終獲得各個微博數(shù)據(jù)的情感強度值,然后通過設(shè)定的閾值判定情感傾向。
本實驗對比基于基礎(chǔ)情感詞典、領(lǐng)域情感詞典的微博情感分析,對比加入情感副詞對整個微博情感分析的影響。實驗采用的評價指標(biāo)有召回率R、準(zhǔn)確率P和F值,如下公式:
其中Ci為實驗分類為c的微博數(shù),Di為實驗總的微博數(shù),Ei為微博分類為c的微博條數(shù),c表示微博類別(正、負(fù)、中性情感類別)。
表4 不同詞典對測試集的分類數(shù)值對比Tab.4 Comparison of different of classification dictionary
由以上數(shù)據(jù)對比可知,基于領(lǐng)域情感詞典的分析系統(tǒng)具有一定的可行性,對微博情感的判定具有一定的準(zhǔn)確率。由表1可以看出,正面情感識別的微博條數(shù)基本維持在600條左右,沒有較明顯的傾倒現(xiàn)象。領(lǐng)域情感詞典效果較基礎(chǔ)詞匯好,在基于領(lǐng)域情感詞典基礎(chǔ)上添加其他詞典,識別效果更佳。表2是測試集召回率、準(zhǔn)確率和F值的對比,更加直觀的顯示出了基于領(lǐng)域詞典和其他詞典的優(yōu)勢所在,比以往的基于一般詞典效果更加顯著,無論是召回率、準(zhǔn)確率和F值基本都維持在了0.7以上。
表5 不同詞典對測試集的評價指標(biāo)對比Tab.5 Comparison of different evaluating indicator of classification dictionary
實驗過程中只使用基礎(chǔ)詞典識別微博情感傾向,明顯識別條數(shù)偏低,這是因為基礎(chǔ)詞典無法準(zhǔn)確判定帶有鮮明領(lǐng)域特色的情感詞匯,例如“大方”,“人性化”等詞,如果僅僅依靠基礎(chǔ)詞匯是無法辨別出這兩個詞所含情感傾向。領(lǐng)域詞典卻能解決這一問題,并且在識別的同時將新詞加入情感詞庫,大大節(jié)省了人工標(biāo)注的時間,同時又提高了識別的準(zhǔn)確度。
通過以上實驗表明本文構(gòu)建的領(lǐng)域情感詞典、情感副詞詞典結(jié)合情感分析策略在分析情感過程中具有一定的可行性,并且取得了一定的效果。
文中為了更好更準(zhǔn)確的分析微博情感構(gòu)建了領(lǐng)域情感詞典、情感副詞詞典,和以往不同的是文中構(gòu)建的領(lǐng)域情感詞典能夠準(zhǔn)確、快速識別和標(biāo)注情感詞匯的強度,并且在標(biāo)注的同時將新詞和其情感強度值自動加入情感詞庫中,為后續(xù)的情感詞匯標(biāo)注做準(zhǔn)備,大大節(jié)約了人工再標(biāo)注的時間,同時又提高了標(biāo)注的準(zhǔn)確度。通過實驗又證明了該方法的可行性,并且取得了一定的效果。
在實驗過程中發(fā)現(xiàn),由于微博數(shù)據(jù)的短小,表達方式多種多樣,上下文關(guān)系銜接不緊密,造成的識別錯誤占據(jù)了一部分,還有現(xiàn)如今越來越多的網(wǎng)絡(luò)詞、變形詞的出現(xiàn)同樣也導(dǎo)致了實驗過程中識別的錯誤。所以在接下來的工作中會把研究的重點放在上下文的關(guān)系、語境和網(wǎng)絡(luò)詞匯發(fā)現(xiàn)上,提出一套更加合理更加全面的新的算法。
[1]周勝臣,瞿文婷.中文微博情感分析研究綜述[J].計算機應(yīng)用與軟件,2013,30(3):162-164.ZHOU Sheng-cheng,QU Wen-ting,et al.The analysis on the Chinese micro-blog emotion[J].Computer Applications and Software,2013,30(3):162-164.
[2]Turney,Peter D,Littman L.Measuring praise and criticism:Inference of semantic orientation from association.In:ACM Transactions on Information Systems[M].New York:ACM Press,2003.
[3]朱嫣嵐,閔錦,周雅倩,等.基于HowNet的詞匯語義傾向計算[J].中文信息學(xué)報,2006(1):140-146.ZHU Yan-lan,MIN Jin,ZHOU Ya-qian,et al.Semantic orientation computing based on HowNet[J].Journal of Chinese Information Process,2006(1):140-146.
[4]張珊,于留寶,胡長軍,等.基于表情圖片與情感詞的中文微博情感分析[J].計算機科學(xué),2012,39(11A):146-148.ZHANG Shan,YU Liu-bao,HU Chang-jun,et al.Sentiment analysis of chinese micro-blog based on emotions and emotional words[J].Computer Science,2012,39(11A):146-148.
[5]WANG Xiao-long,WEI Fu-ru,LIU Xiao-hua,et al.Topic Sentiment Analysis in Twitter:A Graph-based Hashtag Sentiment Classification Approach[C]//Proceeding of 20th ACM Conference on Information and Knowledge Management(CIKM),Glasgow,2011.
[6]JIANG Long,YU Mo,ZHOU Ming,et al.2011.Targetdependent Twitter Sentiment Classifica-tion[C]//ACL 2011.
[7]謝麗星.基于SVM的中文微博情感分析的研究 [D].北京:清華大學(xué),2011.
[8]ICTCLAC漢語分詞系統(tǒng) [EB/OL].[2012-07-02]http://ictclas.org/ictclas_download.aspx.