李壽山,李逸薇,劉歡歡,黃居仁
(1.蘇州大學(xué) 自然語(yǔ)言處理實(shí)驗(yàn)室,江蘇 蘇州215006;2.香港理工大學(xué) 中文及雙語(yǔ)學(xué)系,中國(guó)香港)
隨著Web 2.0技術(shù)的高速發(fā)展,互聯(lián)網(wǎng)已經(jīng)變成社會(huì)各種信息的重要載體,漸漸成為人們生活中不可或缺的重要信息來(lái)源。特別是近年來(lái),隨著博客、電子商務(wù)、社交網(wǎng)站以及微博的興起,互聯(lián)網(wǎng)給廣大用戶提供了豐富的發(fā)表自己觀點(diǎn)的平臺(tái)。為了處理和分析這些海量的網(wǎng)絡(luò)文本信息,情緒分析正漸漸發(fā)展成為自然語(yǔ)言處理中一項(xiàng)越來(lái)越受關(guān)注的研究課題。文本情緒分析旨在對(duì)文本表達(dá)的情緒信息進(jìn)行自動(dòng)分析。此處,情緒具體是指人內(nèi)在的心理反應(yīng)與感受,例如,喜、怒、哀、樂(lè)等感覺(jué)。研究文本的情緒信息有助于幫助了解和分析人們自身的情緒狀態(tài)。同時(shí),文本的情緒分析還有助于幫助分析人們對(duì)事或物的態(tài)度(觀點(diǎn)、看法),因?yàn)槿说膽B(tài)度往往與人的情緒緊密聯(lián)系,也就是說(shuō)可以從人的情緒觀察到人對(duì)事或物的觀點(diǎn)傾向。
情緒分類是情緒分析研究中的一個(gè)基本任務(wù),旨在對(duì)文本表達(dá)的情緒進(jìn)行分類。一種最直接的情緒分類方法可以利用文本包含的情緒關(guān)鍵詞進(jìn)行類別判斷。例如,一般包括“興高采烈”這個(gè)情緒關(guān)鍵詞的文本將被分為“高興”這個(gè)類別。我們稱這種可以通過(guò)情緒關(guān)鍵詞直接表達(dá)的情緒稱為顯性情緒表達(dá)。然而,存在大量文本,文本內(nèi)容不包括情緒關(guān)鍵詞,但是文本明顯表達(dá)某種情緒。我們稱這種沒(méi)有情緒關(guān)鍵詞但是同樣表達(dá)情緒的方式叫做隱性情緒表達(dá)。
本文主要針對(duì)隱含情緒分類。在該任務(wù)中,文本不含情緒詞,這給分類帶來(lái)了一定的難度,具有挑戰(zhàn)性。例如,例1為一般的情緒分類,句中含有明顯的情緒詞“高興”,而例2為本文研究的情況,即句中不含情緒詞,但卻是含有“喜”這一情緒的。
例1.我很高興能有人分享我的心情,能與我產(chǎn)生共鳴。
例2.我要變成大羊了。小山羊不管看見(jiàn)誰(shuí),都說(shuō):你們看,我長(zhǎng)大了。
在語(yǔ)言學(xué)研究方面,大多數(shù)關(guān)于情緒語(yǔ)言學(xué)的模型都將情緒的相關(guān)事件(例如,原因事件)作為一個(gè)重要的組成部分[1-2]。情緒和事件是緊密相連的,事件可能會(huì)引發(fā)某種情緒,情緒也可能導(dǎo)致某個(gè)事件的發(fā)生,這些事件都是情緒相關(guān)事件,和情緒有著引發(fā)和被引發(fā)的關(guān)系。從這點(diǎn)可以看出,這些事件是隱含著某些情緒的。因此,利用情緒的關(guān)聯(lián)事件來(lái)識(shí)別文本的隱含情緒表達(dá)是一種值得探討的方法。例如,例3中雖然沒(méi)有情緒關(guān)鍵詞,但是我們可以通過(guò)文本中發(fā)生的事件“魯班的父親就罵她”判斷出來(lái),這一段話中表達(dá)的是“怒”情緒。
例3.過(guò)些時(shí)候,魯班的妻子懷孕了,肚子一天比一天大。魯班的父親就罵她說(shuō):我兒子在涼州做事,離家那么遠(yuǎn),很久沒(méi)有回來(lái)過(guò),你竟然懷孕了,真是可恥!魯班的妻子受了冤枉,很不甘心,就把魯班每晚乘木鳶回來(lái)的情形告訴他父親。
本文考察利用情緒的關(guān)聯(lián)事件文本幫助識(shí)別情緒分類,并考察能夠幫助到什么程度。具體實(shí)現(xiàn)中,我們?cè)谡Z(yǔ)料中抽取出含有情緒關(guān)鍵詞的文本,然后將情緒關(guān)鍵詞剔除,僅僅使用上下文(我們假設(shè)同情緒關(guān)聯(lián)的事件都出現(xiàn)在上下文文本中)進(jìn)行情緒分類。同以往情緒分類不一樣的是,本文考察的情緒分類主要利用關(guān)聯(lián)事件的文本描述,并不包括直接描述情緒的情緒關(guān)鍵詞。該研究對(duì)于隱性情緒分類有著重要的研究意義,給隱性情緒分類提供充分的語(yǔ)料支持。
本文結(jié)構(gòu)組織如下:第2節(jié)介紹情緒分類的相關(guān)研究工作;第3節(jié)提出隱含情緒分類的研究方法;第4節(jié)給出實(shí)驗(yàn)結(jié)果及分析;第5節(jié)給出結(jié)論。
隨著網(wǎng)絡(luò)上具有主觀性評(píng)價(jià)的文本不斷增多,文本情緒分析漸漸成為自然語(yǔ)言處理領(lǐng)域中的一個(gè)研究熱點(diǎn),而且先前的研究可以大致分為粗粒度和細(xì)粒度兩種情緒分類。
粗粒度的情緒分類,也稱為情感分類,僅僅考慮兩種情緒類別,即“喜歡”或“討厭”和“積極”或“消極”。Pang等首次將機(jī)器學(xué)習(xí)方法(貝葉斯、最大熵、支持向量機(jī))用于情感分析,使用關(guān)鍵詞作為特征來(lái)識(shí)別電影評(píng)論中的積極和消極情感[3]。Cui等對(duì)在線產(chǎn)品評(píng)論進(jìn)行了情感分類的實(shí)驗(yàn)[4]。Dasgupta和Ng研究了一種半監(jiān)督方法進(jìn)行自動(dòng)情緒分類[5]。Li等將主觀的和客觀的觀點(diǎn)應(yīng)用到監(jiān)督和半監(jiān)督的情緒分類中[6]。Li等應(yīng)用半監(jiān)督的學(xué)習(xí)方法對(duì)不平衡的數(shù)據(jù)進(jìn)行情感分類[7-8]。Neviarouskaya研究了文本通信中的情感識(shí)別和分析[9]。
相比之下,細(xì)粒度情緒分類致力于多情緒類別的文本分類,例如,高興、生氣、悲傷等。此類任務(wù)中的一個(gè)主要的相關(guān)研究是關(guān)于情緒資源的創(chuàng)建,例如情緒詞典的創(chuàng)建。Xu等應(yīng)用一種基于圖的算法和多類資源來(lái)創(chuàng)建中文情緒詞典[10]。Volkova等介紹了一個(gè)用于探索語(yǔ)言色彩、觀念和情緒關(guān)聯(lián)的詞典[11]。而且,大部分的相關(guān)研究都集中使用監(jiān)督學(xué)習(xí)方法。Alm等使用機(jī)器學(xué)習(xí)的方法實(shí)現(xiàn)了基于文本的情緒預(yù)測(cè)[12]。Aman和Szpakowicz通過(guò)一種基于知識(shí)的方法實(shí)現(xiàn)句子級(jí)的細(xì)粒度情緒識(shí)別[13]。Chen等通過(guò)分析語(yǔ)言架構(gòu)實(shí)現(xiàn)情緒引發(fā)事件的檢測(cè)[14]。在沒(méi)有人工干預(yù)的情況下,Purver和Battersby通過(guò)使用自動(dòng)標(biāo)注的數(shù)據(jù)訓(xùn)練全監(jiān)督分類器,來(lái)實(shí)現(xiàn)多類情緒預(yù)測(cè)工作[15]。Lin等首先描述了新聞文本中讀者的情緒分類任務(wù),然后應(yīng)用一些標(biāo)準(zhǔn)的機(jī)器學(xué)習(xí)方法訓(xùn)練了一個(gè)識(shí)別讀者情緒的分類器[16]。在后期的研究中,通過(guò)探索更多的特征,其獲得了相對(duì)更好的分類結(jié)果[17]。
與上述研究不同的是,我們的研究致力于探索基于情緒相關(guān)事件內(nèi)容的隱含情緒分類方法研究。
本文使用的語(yǔ)料是中文情緒事件語(yǔ)料庫(kù)。該語(yǔ)料是從Sinica語(yǔ)料庫(kù)中使用一系列情緒關(guān)鍵詞匹配得到的5 629條語(yǔ)料,每條語(yǔ)料包含三個(gè)句子,即情緒關(guān)鍵詞所在的句子,以及前一句和后一句。該語(yǔ)料中的情緒關(guān)鍵詞主要表達(dá)五種情緒:喜、怒、哀、驚、恐。然后根據(jù)表1中情緒關(guān)鍵詞所屬的類別,對(duì)語(yǔ)料進(jìn)行歸類,例如,“高興”屬于喜,“傷心”屬于哀等。表1中的情緒關(guān)鍵詞為我們自己收集標(biāo)注。
由于含有兩種以上情緒的語(yǔ)料很少,因此,我們確保每條語(yǔ)料只含有一種情緒。然后,根據(jù)情緒關(guān)鍵詞的歸類,對(duì)語(yǔ)料進(jìn)行處理,分成五大類。考慮到該任務(wù)是研究隱含情緒分類,故將語(yǔ)料中含有的相關(guān)情緒詞刪除,使語(yǔ)料中不含相應(yīng)情緒所對(duì)應(yīng)的情緒關(guān)鍵詞。例如,對(duì)于例4,我們首先刪除句子中的情緒關(guān)鍵詞“得意”,然后把其他文本作為分類這種情緒的上下文信息。
例4.沒(méi)多久,爸爸媽媽回來(lái)了,看滿屋子都是泡泡,笑呵呵的稱贊我真能干!我聽(tīng)了很得意,被稱贊的滋味舒服極了!
表1 各類情緒所包含的情緒關(guān)鍵詞
為了保證該研究的可靠性,我們從上述處理過(guò)后的語(yǔ)料中,每類語(yǔ)料抽取出200條,共1 000條進(jìn)行標(biāo)注,分別由標(biāo)注者A1和A2同時(shí)進(jìn)行標(biāo)注,分別標(biāo)注其含有哪種情緒。表2分別給出了標(biāo)注者和自動(dòng)分類情緒(單個(gè)情緒和所有情緒)的一致性,以及A1和A2兩個(gè)標(biāo)注者的標(biāo)注結(jié)果的一致性,其中一致性的測(cè)量是通過(guò)kappa(k)值來(lái)計(jì)算的。
表2 標(biāo)注者和情緒標(biāo)注的一致性分析結(jié)果
從表中可以看出,各類情緒的標(biāo)注一致性都挺高的,而且兩個(gè)標(biāo)注者的標(biāo)注一致性也很高。此結(jié)果說(shuō)明隱含情緒確實(shí)存在,而且可以從相關(guān)事件中識(shí)別出隱含的情緒。不過(guò),從數(shù)據(jù)中看出“怒”和“恐”兩種情緒的一致性與其他情緒相比稍微低了。這是因?yàn)樵凇芭鳖惽榫w中,當(dāng)出現(xiàn)“懷疑”等這些情緒關(guān)鍵詞時(shí),與上下文所表達(dá)的情緒有所不同,如例5所示,上下文不含有情緒;在“恐”類情緒中,當(dāng)出現(xiàn)“擔(dān)心”等這些情緒關(guān)鍵詞時(shí),與上下文所表達(dá)的情緒可能不同,如例6所示,上下文并沒(méi)有表達(dá)出情緒“恐”。而且,對(duì)于同一上下文信息,不同的標(biāo)注者可能會(huì)產(chǎn)生不同的情緒,如根據(jù)例7中的上下文信息,標(biāo)注者A1所產(chǎn)生的情緒為“恐”,標(biāo)注者A2所產(chǎn)生的情緒為“哀”。
例5.如果科學(xué)少不了信念的成分,那么科學(xué)是不是就是另外一種宗教呢?宗教必須建立在信仰之上,信仰要求信徒全心全意的接受,不應(yīng)該有任何(懷疑)。信仰的鞏固不是依靠證據(jù),至少不是科學(xué)所理解的證據(jù),也許是傳統(tǒng)、權(quán)威、啟示帶來(lái)的保障。
例6.他們又到一個(gè)平凡的家庭中,這家的長(zhǎng)輩形容月亮是光明而皎潔的星球,小孩都喜歡賞月、看星星,月亮也漸漸了解自己的重要性。月亮覺(jué)得,不管科學(xué)家是以什么眼光欣賞自己,至少還有人喜歡他,所以用不著(擔(dān)心)。此時(shí),太陽(yáng)公公出來(lái)接班了,月亮、星星兩兄弟也高興的回家了。
例7.∥ 回來(lái)啦﹖∥ 媽,害您(擔(dān)心),真是對(duì)不起。∥傻孩子,吃飯了沒(méi)有啊﹖
在本小節(jié)中,我們簡(jiǎn)述在后續(xù)實(shí)驗(yàn)中所使用的相關(guān)機(jī)器學(xué)習(xí)方法,即最大熵(ME)分類方法。
最大熵分類方法是基于最大熵信息理論,其基本思想是為所有已知的因素建立模型,而把所有未知的因素排除在外。也就是說(shuō),要找到一種概率分布,滿足所有已知的事實(shí),但是讓未知的因素最隨機(jī)化[11]。在最大熵模型下,預(yù)測(cè)條件概率P(c|d)的公式如式(1)所示。
其中Z(d)是歸一化因子。Fi,c是特征函數(shù),定義為式(2)。
實(shí)驗(yàn)使用的語(yǔ)料是根據(jù)情緒關(guān)鍵詞分類的,一共有五類:喜,怒,哀,驚,恐。但考慮到該任務(wù)是研究隱含情緒分類,故將語(yǔ)料中含有的相關(guān)情緒詞刪除后作為最終使用的語(yǔ)料。
為了便于處理文檔中的信息,首要的任務(wù)就是對(duì)文本進(jìn)行科學(xué)的抽象,建立數(shù)學(xué)模型,將文檔表示成計(jì)算機(jī)能夠處理的形式,用以描述和代替文本。文本表示首先要確定的問(wèn)題是如何表示文本的基本單位,即文本的特征或特征項(xiàng)。對(duì)于特征,我們提取了詞、詞+詞兩種特征,由于語(yǔ)料中已經(jīng)實(shí)現(xiàn)了文本分詞,我們可以方便地提取出這兩種特征,并統(tǒng)計(jì)出詞頻。在此基礎(chǔ)上,我們分別構(gòu)建了兩種空間向量模型對(duì)文本進(jìn)行情緒識(shí)別。例如,“我要變成大羊了 。小山羊不管看見(jiàn)誰(shuí),都說(shuō):你們看,我長(zhǎng)大了 ?!?/p>
此例句含有隱含情緒“喜”,提取的詞特征有:我、要、變成、大、羊、了、。、小、山羊、不、管、看見(jiàn)…;詞+詞特征為在詞特征的基礎(chǔ)上添加以下特征:我_要、要_變成、變成_大、大_羊、羊_了、了_。、。_小、?。呱窖颉⑸窖颍卟?、不_管、管_看見(jiàn)…。
實(shí)驗(yàn)中我們使用了基于Mallet工具包的最大熵分類方法。針對(duì)衡量識(shí)別的性能,本文采用召回率(Recall,Rec.),精確率(Precision,Pre.),F(xiàn)-值(F-score,F(xiàn)_s.)和準(zhǔn)確率(Accuracy,Acc.)作為分類效果的衡量標(biāo)準(zhǔn),計(jì)算公式如式(3)、式(4)、式(5)、式(6)所示。
其中,A表示正確地分配到該類別的文本數(shù);B表示不正確地分配到該類別的文本數(shù);C表示被該類別不正確拒絕的文本數(shù);D表示正確地分配到其他類別的文本數(shù)。為了便于理解,我們?cè)诒?中給出了A,B,C,D之間的關(guān)系。
表3 A,B,C,D關(guān)系表
4.2.1 情緒分類結(jié)果
本實(shí)驗(yàn)中,我們從語(yǔ)料中分別選取各類情緒樣本1 000條作為訓(xùn)練數(shù)據(jù),各類分別選取200條語(yǔ)料作為測(cè)試數(shù)據(jù),然后我們對(duì)這一測(cè)試數(shù)據(jù)進(jìn)行不同的處理,即分別用自動(dòng)標(biāo)注和人工標(biāo)注兩種方式得到兩種語(yǔ)料進(jìn)行實(shí)驗(yàn)。通過(guò)基于詞(Unigram)的特征,采用最大熵分類方法進(jìn)行情緒識(shí)別。
圖1是本文上下文方法在自動(dòng)標(biāo)注測(cè)試語(yǔ)料上面對(duì)于各個(gè)類別的分類結(jié)果。從圖中可以看出“怒”和“哀”的精確率相對(duì)比較低,特別是“怒”類,只達(dá)到了0.278,說(shuō)明這兩類相對(duì)不容易被識(shí)別。
圖2是本文上下文方法在人工標(biāo)注測(cè)試語(yǔ)料上面對(duì)于各個(gè)類別的分類結(jié)果。從圖中可以看出“怒”和“哀”的精確率相對(duì)較低,其中,“怒”類僅達(dá)到了0.260 2,比其他類別低了很多。對(duì)比圖1的結(jié)果,可以看出,我們的方法在人工標(biāo)注語(yǔ)料上面的結(jié)果要明顯優(yōu)于在自動(dòng)標(biāo)注語(yǔ)料上面的結(jié)果。這個(gè)主要是由于自動(dòng)標(biāo)注的語(yǔ)料里面存在很多噪聲,即很多類別標(biāo)簽并不是上下文表達(dá)的實(shí)際情緒。
除了詞的Unigram,我們還選取了結(jié)合詞的Bigram進(jìn)行實(shí)驗(yàn),相關(guān)結(jié)果顯示在圖3中(注:圖中僅給出F-score)。從圖中可以看出,基于詞的Bigram特征得到的實(shí)驗(yàn)結(jié)果比基于詞的Unigram特征的結(jié)果要好,平均提高2個(gè)點(diǎn)左右。4.2.2 訓(xùn)練樣本規(guī)模對(duì)分類結(jié)果的影響
接下來(lái),我們使用自動(dòng)標(biāo)注和人工標(biāo)注的測(cè)試語(yǔ)料分別進(jìn)行實(shí)驗(yàn)。為了說(shuō)明訓(xùn)練語(yǔ)料的數(shù)量對(duì)實(shí)驗(yàn)結(jié)果的影響,我們分別取訓(xùn)練語(yǔ)料各類樣本數(shù)為200,400,600,800,1 000。實(shí)驗(yàn)中我們使用基于詞的Unigram+Bigram特征來(lái)進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果使用準(zhǔn)確率(Acc.)作為衡量標(biāo)準(zhǔn)。
圖4給出使用不同訓(xùn)練樣本規(guī)模的情緒分類結(jié)果。從圖中可以看出隨著訓(xùn)練數(shù)據(jù)在一定范圍內(nèi)(小于600)樣本量的增加,分類結(jié)果呈上升趨勢(shì)。但是,當(dāng)數(shù)據(jù)規(guī)模達(dá)到一定程度后,結(jié)果就不會(huì)再提高了。從自動(dòng)標(biāo)注的樣本和人工標(biāo)注的樣本的分類結(jié)果可以看出,人工標(biāo)注語(yǔ)料的結(jié)果會(huì)更好,但是沒(méi)有提高很多,大致達(dá)到3個(gè)點(diǎn)左右??傮w而言,使用本文提出的上下文隱含情緒分類方法獲得的分類性能達(dá)到了40%左右,遠(yuǎn)遠(yuǎn)好于隨機(jī)結(jié)果(20%),說(shuō)明了本文方法的有效性。
本文針對(duì)隱含情緒分類提出了一種基于情緒相關(guān)事件上下文的情緒分類方法。具體來(lái)說(shuō),是將包含情緒相關(guān)的事件上下文作為情緒分類的主要依據(jù)。實(shí)驗(yàn)結(jié)果表明,本文提出的上下文情緒分類方法能夠很好的捕捉隱含情緒。準(zhǔn)確率分類性能達(dá)到了40%左右,遠(yuǎn)遠(yuǎn)好于隨機(jī)的分類結(jié)果。此外,我們利用這種方法獲得的語(yǔ)料可以為隱含情緒提供資源基礎(chǔ)。
圖4 使用不同訓(xùn)練樣本規(guī)模的情緒分類結(jié)果
目前關(guān)于隱含情緒分類的研究才剛剛起步。在下一步研究工作中,我們將人工標(biāo)注詞語(yǔ)的隱含情緒表達(dá),例如,“陽(yáng)光”這個(gè)詞的隱含情緒可能是“高興”,標(biāo)注隱含情緒的詞典資源,用于幫助文本的隱含情緒分類。
[1]Descartes R.The Passions of the Soul[M].The Philosophical Writings of Descartes.1649,1:325-404.
[2]James W.What is an Emotion?Mind[M],1884,9(34):188-205.
[3]Pang B,L Lee,S.Vaithyanathan.Thumbs up?Sentiment Classification using Machine Learning Techniques[C]//Proceedings of EMNLP:79-86.
[4]Cui H,V Mittal,M Datar.Comparative Experiments on Sentiment Classification for Online Product Comments[C]//Proceedings of AAAI,2006:1265-1270.
[5]Dasgupta S,V Ng.Mine the Easy,Classify the Hard:A Semi-Supervised Approach to Automatic Sentiment Classification[C]//Proceedings of ACL-IJCNLP,2009:701-709.
[6]Li S,C Huang,G Zhou,S Lee.Employing Personal/Impersonal Views in Supervised and Semi-supervised Sentiment Classification[C]//Proceedings of ACL,2010:414-423.
[7]Li S,Z Wang,G Zhou,S Lee.Semi-supervised Learning for Imbalanced Sentiment Classification[C]//Proceeding of IJCAI,2011:826-1831.
[8]王中卿,李壽山,朱巧明,等.基于不平衡數(shù)據(jù)的中文情感分類[J].中文信息學(xué)報(bào),2012,26(3):33-37,64.
[9]Neviarouskaya A,H Prendinger,M Ishizuka.Textual Affect Sensing for Social and Expressive Online Communication[C]//Proceedings of the 2nd International Conference on Affective Computing and Intelligent Interaction,218-229.
[10]Xu G,X Meng,H Wang.Build Chinese Emotion Lexicons Using A Graph-based Algorithm and Multiple Resources[C]//Proceeding of COLING-10,2010:1209-1217.
[11]Volkova S,W Dolan,T Wilson.CLex:A Lexicon for Exploring Color,Concept and Emotion Associations in Language[C]//Proceedings of EACL-12,2012:306-314.
[12]Alm C,D Roth,R Sproat.Emotions from Text:Machine Learning for Text-based Emotion Prediction[C]//Proceedings of EMNLP,2005:579-586.
[13]Aman S.,S Szpakowiczm.Identifying Expressions of Emotion in Text[C]//Proceedings of Lecture Notes in Computer Science,2007:196-205.
[14]Chen Y,S Lee,S Li,C Huang.Emotion Cause Detection with Linguistic Constructions[C]//Proceedings of COLING-10,2010:179-187.
[15]Purver M,S Battersby.Experimenting with Distant Supervision for Emotion Classification[C]//Proceedings of EACL-12,2012:482-491.
[16]Lin K,C Yang,H Chen.What Emotions do News Articles Trigger in Their Readers[C]//Proceeding of SIGIR-07,poster,2007:733-734.
[17]Lin K,C Yang,H Chen.Emotion Classification of Online News Articles from the Reader's Perspective[C]//Proceeding of the International Conference on Web Intelligence and Intelligent Agent Technology,2008:220-226.
[18]劉挺,車萬(wàn)翔,李生.基于最大熵分類器的語(yǔ)義角色標(biāo)注[J].軟件學(xué)報(bào),2007,(3):565-573.
[19]宗成慶.統(tǒng)計(jì)自然語(yǔ)言處理[M].清華大學(xué)出版社:北京,2008.