姜伶伶,何中市,張航
(重慶大學計算機學院,重慶 400044)
互聯(lián)網(wǎng)時代的快速發(fā)展,尤其是Web2.0的蓬勃發(fā)展,加強了網(wǎng)站與用戶之間的互動,為人們獲取信息、發(fā)表意見和交流情感提供了新的渠道。自然語言處理領域中的一個重要的研究分支是文本情感分析,在微博盛行的今天,大量的學者致力于微博文本情感分析的研究。
微博文本情感分析的質(zhì)量取決于情感詞典的質(zhì)量,好的情感詞典需要包含最新的情感詞語,因此必須保證情感詞典的實時更新。在構(gòu)建情感詞典時,情感詞典[1-2]的自動擴充有著巨大的研究意義。
在微博情感分析中,微博情感詞典的構(gòu)建具有重要的研究意義和使用價值。在情感詞典的自動擴充中,對候選情感詞的傾向性判斷是重點也是難點。在計算情感詞的傾向性時,目前通用的兩種方法分別是基于語義相似度的計算方法[3]與基于統(tǒng)計的計算方法[4]。文獻[5]將HowNet和NTUSD兩種詞典進行合并從而構(gòu)建了一個帶有情感傾向性程度的情感詞典。文獻[6]在構(gòu)建情感詞典時考慮了上下文相關性。文獻[7]提出了一種在HowNet的基礎上使用PMI計算詞語極性擴展詞典的方法。文獻[8]提出了一種拉普拉斯平滑的SO-PMI算法計算候選情感詞與種子詞的互信息?;贖owNet的語義相似度計算方法[9]以及基于SO-PMI的情感傾向性計算方法[10]首先選取若干正面種子詞和若干負面種子詞,基于HowNet的語義相似度計算方法[9]需要計算上述選取的正、負面種子詞與待分類詞語的相似度,基于SO-PMI的情感傾向性計算方法[10]需要計算上述選取的正、負面種子詞與待分類詞語的互信息。中文微博中存在大量的新詞無法在HowNet中找到義原,從而也無法計算詞語與義原的相似度。因此基于HowNet的語義相似度計算方法不適用于中文微博的候選情感詞傾向性判斷。
基于SO-PMI的方法[11]需要計算候選情感詞與正、負種子詞的互信息,由于微博是短文本,因此微博中候選情感詞與正、負種子詞的共現(xiàn)頻次為0的概率較大,在出現(xiàn)零概率問題時無法計算候選情感詞與正、負種子詞間的互信息,從而無法判斷候選情感詞的極性。針對這一問題,本文在已有情感詞典資源的基礎上,提出了一種基于Good-Turing平滑SO-PMI算法的微博情感詞典構(gòu)建方法。
Good-Turing基本思想:通過用高頻計數(shù)的N元語法重新估計0計數(shù)或者低頻計數(shù)的N元語法發(fā)生的概率。對于任何發(fā)生r次數(shù)的N元語法,都假設它發(fā)生了r*次。
式中:
Nr是訓練語料中正好發(fā)生r次的N元組的個數(shù);
Nr+1是訓練語料中正好發(fā)生r+1次的N元組的個數(shù)。
即,發(fā)生r次的N元組的調(diào)整由發(fā)生r次的N元組與發(fā)生r+1次的N元組兩個類別共同決定,統(tǒng)計數(shù)為r*詞的N元組。
通常用點互信息(PMI)這個指標來衡量兩個事物之間的相關性,兩個事物同時出現(xiàn)的概率越大,其相關性越大。
兩個詞語word1與word2的PMI值計算公式為:
p(w ord1word2)表示兩個詞語word1與word2共同出現(xiàn)的概率,可轉(zhuǎn)化為word1與word2共同出現(xiàn)的文檔數(shù)與總文檔數(shù)的比值,如式:
p(w ord1)與p(w ord2)分別表示兩個詞語單獨出現(xiàn)的概率,可轉(zhuǎn)化為word1和word2出現(xiàn)的文檔數(shù)與總文檔數(shù)的比值,如式:
式(3)~(5)中:
count(w ord1,word2)為詞word1與詞word2共同出現(xiàn)的文檔數(shù);
count(w ord1)為詞word1出現(xiàn)的文檔數(shù);
count(w ord2)為詞word2出現(xiàn)的文檔數(shù);
q為總文檔數(shù)。
word1與word2共現(xiàn)的概率越大,兩者關聯(lián)度越大,反之,關聯(lián)度越小。
其值可以轉(zhuǎn)化為以下3種狀態(tài):
p(w ord1word2)>0,兩個詞語是相關的;
p(w ord1word2)=0,兩個詞語是統(tǒng)計獨立的,不相關也不互斥;
p(w ord1word2)<0,兩個詞語是互斥的。
情感傾向點互信息算法(SO-PMI)是將PMI方法引入計算詞語的情感傾向中。SO-PMI算法的基本思想是:分別選取一組正向種子詞Pwords和一組負向種子詞Nwords。每個種子詞必須具有明顯的傾向性。計算候選情感詞word跟Pwords的點間互信息與word跟Nwords的點間互信息的差值,根據(jù)該差值判斷詞語word的情感傾向。計算公式如式(6)所示。
將0作為閾值,得到以下三種情況:
SO-PMI(word)>0,為正面傾向,即 word是褒義詞;
SO-PMI(word)=0,為中性傾向,即 word是中性詞;
SO-PMI(word)<0,為負面傾向,即 word是貶義詞。
情感詞典是詞的集合,包含一組情感詞以及對應的情感傾向性程度值。目前常用的公共情感詞典有知網(wǎng)(HowNet)發(fā)布的情感詞典、大連理工大學情感本體、臺灣大學自然語言處理實驗室提供的簡體中文情感詞典(National Taiwan University Sentiment Dictionary,NTUSD)、《學生褒貶義詞典》等,這些公共的情感詞典是情感分類研究的重要基礎。但已有的公共情感詞典對中文微博中涌現(xiàn)出的大量網(wǎng)絡新詞覆蓋率較低,已經(jīng)無法滿足我們的需求,因此,本文提出一種基于Good-Turing平滑的SO-PMI算法用于微博情感詞典的構(gòu)建。
本文首先將現(xiàn)有情感詞典《大連理工大學情感本體》和《知網(wǎng)》進行合并,并去除重復的情感詞得到微博技術(shù)情感詞典,如表1所示。
表1 微博基礎情感詞典
表1中,HowNet為知網(wǎng)情感詞典,Dalian為大連理工大學情感本體,Base為整理后組成的微博基礎情感詞典。
候選微博情感詞指微博中可能含有情感傾向的詞語,主要以名詞、動詞、形容詞、副詞的形式存在。首先,使用ICTCLAS對COAE2014任務四的測評語料中隨機抽取的200條微博進行切詞處理,提取詞性為noun、verb、adjective、adverb的詞;人工篩選出帶有情感的待入選候選微博情感詞;然后過濾掉微博基礎情感詞典Base中已有的正、負極情感詞;則剩下的詞即為候選微博情感詞,將該類詞存入dic_w,記為dic_w={C1,C2,…,Cn}。
使用基于SO-PMI的方法判斷候選情感詞傾向性時,需要計算候選情感詞與正、負種子詞的互信息,因此需要選取正、負情感種子詞。由于微博屬于短文本,詞頻較高的情感詞文檔頻率不一定高。若種子詞在微博文檔中出現(xiàn)的頻率很低會導致微博候選情感詞與種子詞共現(xiàn)的頻次較低,此時出現(xiàn)零概率事件,無法計算候選情感詞的互信息。因此,本文提出選取文檔頻次較高的情感詞作為種子詞。
當微博候選情感詞和種子詞在整個語料中共現(xiàn)的頻次為0時,根據(jù)公式(2)無法計算候選情感詞和種子詞的互信息,此時無法對候選情感詞的傾向性進行判斷?;诖藛栴},本文對SO-PMI算法進行了如下改進:
選取m個正面情感種子詞,正面情感種子詞集為P={ p1,p2,…,pm},m個負面情感種子詞,負面情感種子詞 集 為R={r1,r2,…,rm} ,對 候 選 微 博 情 感 詞dic_w={c1,c1,…,cn}中的每個詞ci(i =1,2,…,n ),其與正面情感種子詞pj( j=1,2,…,m )的互信息為:
式中:
p(ci,pj)為詞ci與pj在訓練語料中共現(xiàn)的概率;
p(ci)為詞ci在訓練語料中出現(xiàn)的概率;
p(pj)為詞pj在訓練語料中出現(xiàn)的概率。
在實際計算過程中,上述概率值可用頻率進行估計,即:
式(8)~(10)中:
count(ci,pj)為詞ci與pj在訓練語料中共現(xiàn)的微博條數(shù);
count(ci)為詞ci在訓練語料中出現(xiàn)的微博條數(shù);
count(pi)為詞pj在訓練語料中出現(xiàn)的微博條數(shù);
q 為訓練語料集中總的微博條數(shù)。
將式(8)~(10)代入式(2)后得到式(11):
由于在實際計算過程中,count( )ci,pj的值可能為0,此時 PMI( )
ci,pj無意義,本文對式(8)引入Good-Turing平滑技術(shù):
式中:
count*(ci,pj)為count(ci,pj)的Good-Turing平 滑計數(shù)
將其代入式(1)得:
式中:
是訓練語料中正好發(fā)生count(ci,pj)次的N元組的個數(shù);
是訓練語料中正好發(fā)生count(ci,pj)+1次
的N元組的個數(shù)。
則式(11)可改進為:
同理,可計算詞ci(i =1,2,…,n)與負面情感種子詞rj( j=1,2,…,m )的互信息,則詞ci的SO-PMI值計算公式如下:
將式(15)化簡后得:
式中:
在封閉的語料庫中,出現(xiàn)正、負面種子情感詞的微博條數(shù)是固定的,因此αj可以看作常數(shù),在訓練語料中,如果:
則詞ci可視為中性詞,為便于計算,將αj賦值為1,改進后的SO-PMI計算公式為:
最終,候選微博情感詞的情感傾向可以通過式(19)進行判斷:
SO-PMI(ci)>0,ci為正面情感詞,將其加入微博正面情感詞典;
SO-PMI(ci)=0,ci為中性詞;
SO-PMI(ci)<0,ci為負面情感詞,將其加入微博負面情感詞典;
從而組成微博領域情感詞典。
實驗選取COAE2014任務四的測評語料,共40000條微博(含干擾數(shù)據(jù)),隨機選取數(shù)據(jù)對其進行人工標注,得到正向、負向情感微博各3000條用于實驗。首先對測評語料進行數(shù)據(jù)預處理,如分詞、去除非法字符、數(shù)據(jù)格式規(guī)范化處理。使用3.2節(jié)中的方法從隨機抽取出的200條微博中提取出400個待入選候選微博情感詞,過濾掉微博基礎情感詞典已有的詞169個,得到候選微博情感詞共231個;然后選取TF-IDF值最高的正、負面情感種子詞各25個,針對231個候選微博情感詞使用公式(19)計算其極性如表2所示。
表2 候選微博情感詞極性
最后,組成微博領域情感詞典如表3所示。
表3 微博領域情感詞典
本文用準確率(Precision)、召回率(Recall)和 F1值(F1Score)作為評價分類結(jié)果的指標,準確率和召回率計算公式如下。
實驗在上述構(gòu)建的微博領域情感詞典的基礎上,采用基于規(guī)則的方法[12]對實驗數(shù)據(jù)進行情感傾向性判斷,首先按照3.1小節(jié)中的方法得到微博基礎情感詞典Co,再通過3.2/3.3小節(jié)中的方法構(gòu)建微博領域情感詞典,同時將本文提出的算法與文獻[8]中提出的拉普拉斯平滑算法進行對比。
準確率計算所有“正確檢索的(T P )”占所有“實際被檢索到的(T P+FP )”的比例。
召回率計算所有“正確被檢索的(T P )”占所有“應該檢索到的(T P+FN )”的比例。
F1值被定義為準確率和召回率的調(diào)和平均數(shù),它認為召回率和準確率同等重要:
表4中,PosP、PosR、PosF1分別為正面準確率、召回率和F1值,NegP、NegR、NegF1分別為負面準確率、召回率和F1值。從實驗結(jié)果可以看出,本文提出的方法相對于另兩種方法,針對正、負面情感微博都有較高的準確率和召回率,證實了本文提出的方法在判別微博情感傾向上的可行性。
表4 微博傾向性分析結(jié)果
本文基于平滑SO-PMI算法對微博基礎情感詞典進行擴展,針對微博候選情感詞和種子詞共現(xiàn)頻次為0時無法計算其互信息的問題,引入Good-Turing平滑技術(shù)。以COAE2014任務四的測評語料作為實驗數(shù)據(jù),采用改進后的SO-PMI算法構(gòu)建了微博領域情感詞典,利用此微博領域情感詞典對微博進行情感傾向性分析。實驗結(jié)果表面,本文提出的方法取得了較好的效果。
由于在分詞過程中,采用現(xiàn)有的ICTCLAS分詞系統(tǒng),導致部分網(wǎng)絡詞匯沒有被正確切分,因此對微博候選情感詞的提取率不高?;谝?guī)則的方法依賴于使用的情感詞典,這造成一定的局限性。因此使用基于規(guī)則和機器學習融合的方法進行情感傾向性的判斷將是下一步研究工作的重點。
參考文獻:
[1]陳曉東.基于情感詞典的中文微博情感傾向分析研究[D].華中科技大學,2012.
[2]陳國蘭.基于情感詞典與語義規(guī)則的微博情感分析[J].情報探索,2016(2):1-6.
[3]金博,史彥軍,滕弘飛.基于語義理解的文本相似度算法[J].大連理工大學學報,2005,45(2):291-297.
[4]張彬.文本情感傾向性分析與研究[D].河南工業(yè)大學,2011.
[5]楊超.基于情感詞典擴展技術(shù)的網(wǎng)絡輿情傾向性分析[D].東北大學,2009.
[6]Lu Y,Castellanos M,Dayal U,et al.Automatic Construction of a Context-Aware Sentiment Lexicon:an Optimization Approach[C].International Conference on World Wide Web,WWW 2011,Hyderabad,India,March 28-April.DBLP,2011:347-356.
[7]王振宇,吳澤衡,胡方濤.基于HowNet和PMI的詞語情感極性計算[J].計算機工程,2012,38(15):187-189.
[8]杜銳,朱艷輝,田海龍,等.基于平滑SO-PMI算法的微博情感詞典構(gòu)建方法研究[J].湖南工業(yè)大學學報,2015(5):77-81.
[9]朱嫣嵐,閔錦,周雅倩,等.基于 HowNet的詞匯語義傾向計算[J].中文信息學報,2006,20(1):14-20.
[10]Wiebe J,Riloff E.Creating Subjective and Objective Sentence Classifiers from Unannotated Texts[M].Computational Linguistics and Intelligent Text Processing.Springer Berlin Heidelberg,2005:486-497.
[11]Yang A M,Lin J H,Zhou Y M,et al.Research on Building a Chinese Sentiment Lexicon Based on SO-PMI[J].Applied Mechanics&Materials,2013,263-266:1688-1693.
[12]Raaijmakers S,Kraaij W.A Shallow Approach to Subjectivity Classification[C].International Conference on Weblogs and Social Media,Icwsm 2008,Seattle,Washington,Usa,March 30-April.DBLP,2008.