陳自巖 黃 宇 王 洋 傅興玉 付 琨
1(中國(guó)科學(xué)院大學(xué) 北京 100049)2(中國(guó)科學(xué)院空間信息處理與應(yīng)用系統(tǒng)重點(diǎn)實(shí)驗(yàn)室 北京 100190)
一種利用語(yǔ)義相似特征提升細(xì)粒度情感分析方法
陳自巖1,2黃 宇2王 洋2傅興玉2付 琨2
1(中國(guó)科學(xué)院大學(xué) 北京 100049)2(中國(guó)科學(xué)院空間信息處理與應(yīng)用系統(tǒng)重點(diǎn)實(shí)驗(yàn)室 北京 100190)
情感分析主要研究人們正面或負(fù)面情感的表達(dá)。隨著網(wǎng)頁(yè)文本的爆炸式增長(zhǎng),情感分析在學(xué)術(shù)研究和實(shí)際應(yīng)用中都成了熱門話題。細(xì)粒度的情感分析方法通常采用兩步策略,從而極易產(chǎn)生自底向上的層疊錯(cuò)誤問(wèn)題。為了解決這個(gè)問(wèn)題,研究者們提出了一種基于馬爾科夫邏輯的細(xì)粒度的情感分析聯(lián)合框架。其中最常用的傳統(tǒng)全局特征是自底向上和自頂向下特征。為了更好地提升細(xì)粒度情感分析的聯(lián)合學(xué)習(xí)能力,一種新的語(yǔ)義相似特征被提了出來(lái),中文情感分析數(shù)據(jù)集上的實(shí)驗(yàn)證明,此特征能對(duì)情感分析聯(lián)合框架帶來(lái)極大的改進(jìn)。
細(xì)粒度的情感分析 馬爾科夫邏輯 語(yǔ)義相似特征
情感分析也叫觀點(diǎn)挖掘,主要用來(lái)分析人們?cè)趥鬟_(dá)信息時(shí)所含的情緒觀點(diǎn),以及對(duì)人們的態(tài)度、感情色彩進(jìn)行判別或者評(píng)估[1]。隨著互聯(lián)網(wǎng)技術(shù)的進(jìn)步,情感分析自2000年以來(lái)呈現(xiàn)出蓬勃發(fā)展的趨勢(shì),支持向量機(jī)(SVM)、條件隨機(jī)場(chǎng)(CRF)和基于詞典等方法的提出,使得情感分析在輿情監(jiān)控、異常事件監(jiān)測(cè)、金融預(yù)測(cè)等領(lǐng)域得到廣泛應(yīng)用。
通常,情感分析按粒度可以分為文檔級(jí)、句子級(jí)、子句級(jí)和短語(yǔ)級(jí)。文檔級(jí)的情感分析旨在對(duì)整個(gè)文檔分成正面、負(fù)面及中立,其主要應(yīng)用在微博等短文本中[2-3],但在長(zhǎng)文本中則顯得比較粗糙,因此細(xì)粒度的情感分析應(yīng)運(yùn)而生。例如,文獻(xiàn)[4]針對(duì)句子級(jí)的情感分析提出了一系列的方法來(lái)挖掘產(chǎn)品評(píng)論;文獻(xiàn)[5]采用兩步策略分析短語(yǔ)的情感傾向。由于一個(gè)句子中可能表達(dá)不止一種情感傾向,因此本文選擇子句級(jí)的情感分析粒度。子句級(jí)的情感分析最重要的預(yù)處理工作是子句分隔,文獻(xiàn)[6]選擇語(yǔ)篇分隔理論作為基本的分類單元;文獻(xiàn)[7]則粗略地用漢語(yǔ)逗號(hào)進(jìn)行子句分隔。
傳統(tǒng)的細(xì)粒度情感分析方法經(jīng)常采用鏈?zhǔn)浇Y(jié)構(gòu)的兩步策略,即主觀分類和極性分類。前者旨在識(shí)別出具有主觀性的句子或者短語(yǔ),后者則對(duì)識(shí)別出的主觀性句子或短語(yǔ)進(jìn)行正面或負(fù)面的分類。這種鏈?zhǔn)浇Y(jié)構(gòu)極易產(chǎn)生層疊錯(cuò)誤問(wèn)題,如果一個(gè)沒(méi)有情感傾向的句子或者短語(yǔ)在主觀分類中被誤判成主觀的,其不可避免地影響極性分類的性能。因此文獻(xiàn)[7]提出了一種基于馬爾科夫邏輯[8]的細(xì)粒度情感分析聯(lián)合框架,使用自底向上和自頂向下的全局特征將主觀分類和極性分類進(jìn)行聯(lián)合學(xué)習(xí),從而減少了鏈?zhǔn)浇Y(jié)構(gòu)帶來(lái)的層疊錯(cuò)誤。此文獻(xiàn)中還引入了一種二元結(jié)構(gòu)特征,認(rèn)為同一句子中相鄰的子句很有可能具有相似的情感極性,但這種假設(shè)在相互轉(zhuǎn)折的子句中就不再成立,如“這本書(shū)很貴,但內(nèi)容確實(shí)很精彩”中,兩個(gè)子句具有相反的極性。
針對(duì)以上問(wèn)題,本文提出了一種新的語(yǔ)義相似特征,認(rèn)為兩個(gè)子句在語(yǔ)義上的相似度越高,越具有相同的極性。為了度量?jī)蓚€(gè)子句的語(yǔ)義相似度,本文提出了一種基于全局向量GloVe(Global Vectors)[9]模型的相似度計(jì)算方法。首先利用全局向量模型在大規(guī)模未標(biāo)注數(shù)據(jù)上訓(xùn)練詞向量,然后采用加權(quán)和的方法計(jì)算子句向量,最后計(jì)算子句向量之間的余弦相似度作為子句間的語(yǔ)義相似度。馬爾科夫邏輯是一種統(tǒng)計(jì)關(guān)系表征語(yǔ)言,其將一階邏輯融入到無(wú)向圖模型中,從而能使豐富的特征或領(lǐng)域知識(shí)融合在一起聯(lián)合學(xué)習(xí)推導(dǎo)。語(yǔ)義相似特征是一種全局特征,可以用馬爾科夫邏輯的全局表達(dá)式進(jìn)行表示,從而提升子句間情感分類的聯(lián)合學(xué)習(xí)能力。最后本文在譚松波的中文情感分析語(yǔ)料集(ChnSentiCorp)上進(jìn)行實(shí)驗(yàn),為了滿足本文的子句級(jí)的情感分析,我們引入了一種人工標(biāo)注計(jì)劃對(duì)數(shù)據(jù)進(jìn)行再加工,從而獲得子句級(jí)上的標(biāo)注。
本節(jié)將簡(jiǎn)要介紹基于馬爾科夫邏輯的子句級(jí)情感分析的聯(lián)合學(xué)習(xí)框架,其基本思想是將主觀分類和極性分類進(jìn)行隔離,并分別用不同的局部特征集進(jìn)行獨(dú)立學(xué)習(xí)。然后利用全局特征再將主觀分類和極性分類整合到一個(gè)完整的網(wǎng)絡(luò)中統(tǒng)一學(xué)習(xí),其基本原理可以用圖1表示。
圖1 子句級(jí)情感分析的聯(lián)合框架
1.1 馬爾科夫邏輯網(wǎng)
馬爾科夫邏輯網(wǎng)是一種強(qiáng)大的統(tǒng)計(jì)關(guān)系表征語(yǔ)言,其能將一階邏輯和馬爾科夫隨機(jī)場(chǎng)進(jìn)行結(jié)合。在一階邏輯中,一個(gè)表達(dá)式只代表一個(gè)布爾值,即成立與不成立。而馬爾科夫邏輯放松了這一限制,其對(duì)每個(gè)一階邏輯表達(dá)式賦一個(gè)權(quán)重,在訓(xùn)練階段,越多的數(shù)據(jù)滿足某一表達(dá)式,則其對(duì)應(yīng)的權(quán)重越大,對(duì)于不滿足的則通過(guò)懲罰減小權(quán)重。一個(gè)馬爾科夫邏輯網(wǎng)由一系列的(Fi,wi)對(duì)組成,其中Fi是一階邏輯表達(dá)式,而wi是此一階邏輯表達(dá)式對(duì)應(yīng)的權(quán)重值,其聯(lián)合概率可以表示為:
(1)
其中,F(xiàn)是一階邏輯表達(dá)式的數(shù)目,ni(x)是滿足表達(dá)式Fi成立的數(shù)目。
每個(gè)表達(dá)式由一系列的一階變量,謂詞和邏輯連接符組成,如:
wicontainadj(s)?subjective(s)
此表達(dá)式隱含的意義是如果一個(gè)子句中存在形容詞,那么這個(gè)子句很有可能帶有主觀性,權(quán)重wi代表了表達(dá)式成立的可信度。表達(dá)式中s是一個(gè)變量,代表每個(gè)子句,containadj是已知謂詞,而subjective是隱含謂詞,需要從已知謂詞中推導(dǎo)出來(lái)。
1.2 局部表達(dá)式
局部表達(dá)式用來(lái)由已知謂詞推導(dǎo)隱含謂詞,本節(jié)通過(guò)定義一系列的局部特征來(lái)設(shè)計(jì)局部表達(dá)式,從而實(shí)現(xiàn)主觀分類和極性分類的分別訓(xùn)練。表1列出了所用到的謂詞,其中已知謂詞描述了所抽取的特征。極性分?jǐn)?shù)的計(jì)算方法可以參考文獻(xiàn)[10]。
表1 所用到的謂詞
表2和表3分別列出了主觀分類和極性分類中的局部表達(dá)式,其中加號(hào)“+”表示對(duì)于變量的不同取值賦以不同的權(quán)重值。從兩個(gè)表中看出分成兩個(gè)獨(dú)立步驟的好處是能根據(jù)具體的分類任務(wù)設(shè)計(jì)有效的局部特征。
表2 主觀分類中的局部表達(dá)式
表3 極性分類中的局部表達(dá)式
1.3 全局表達(dá)式
上節(jié)采用局部表達(dá)式分別學(xué)習(xí)了主觀分類和極性分類,而這兩個(gè)步驟之間存在著相輔相成的聯(lián)系,馬爾科夫邏輯通過(guò)定義全局表達(dá)式,可以使兩個(gè)獨(dú)立的局部分類器融入到統(tǒng)一的網(wǎng)絡(luò)框架中,其中最常用的兩個(gè)全局特征是自底向上(式(2))和自頂向下(式(3))。
sentiment(s,sen+)?polarity(s,″non″)sentiment(s,sen+)?!polarity(s,″non″)
(2)
polarity(s,po+)?sentiment(s,sen+)
(3)
在自底向上的推導(dǎo)過(guò)程中,我們給主觀分類的變量賦予分離的權(quán)重,從而使主觀與客觀的子句都能進(jìn)入到極性分類階段。而自頂向下的推導(dǎo)為主觀分類提供了反饋信息,減少了因主觀分類傳播下來(lái)的層疊錯(cuò)誤問(wèn)題。
除了以上兩個(gè)全局特征,文獻(xiàn)[7]還引入了一種二元結(jié)構(gòu)特征,其認(rèn)為相鄰的子句之間具有相同的情感極性,相應(yīng)的表達(dá)式為:
bigram(s1,s2)∧polarity(s1,″pos″)?polarity(s2,″pos″)bigram(s1,s2)∧polarity(s1,″neg″)?polarity(s2,″neg″)
(4)
其中已知謂詞bigram(s1,s2)表示兩個(gè)子句之間的相鄰性。這種二元結(jié)構(gòu)特征只是單純地依賴結(jié)構(gòu)上的相鄰性,并沒(méi)有充分考慮子句間的語(yǔ)義描述,因此在遇到語(yǔ)義表達(dá)相反的子句時(shí)就會(huì)出現(xiàn)問(wèn)題。
馬爾科夫邏輯依靠全局表達(dá)式將各個(gè)子任務(wù)整合到一個(gè)完整的框架中,好的全局特征可以提升模型的聯(lián)合學(xué)習(xí)能力,本節(jié)將詳細(xì)介紹一種有效的全局特征,其能充分利用子句間的語(yǔ)義相似信息,提升各個(gè)子句間的相互推導(dǎo)能力。本節(jié)首先介紹怎樣利用全局向量模型獲得詞在語(yǔ)義空間上的線性表征(即詞向量),然后根據(jù)詞向量來(lái)獲得子句向量,繼而計(jì)算子句之間的余弦相似度,并將其作為子句間的語(yǔ)義相似信息。
2.1 全局向量模型
在大規(guī)模未標(biāo)注數(shù)據(jù)中,詞與詞之間的共現(xiàn)統(tǒng)計(jì)是非監(jiān)督學(xué)習(xí)詞向量的最直接也是最重要的特征。全局向量模型是一種能直接捕獲這種特征來(lái)訓(xùn)練詞向量的有效方法,其基本原理是首先通過(guò)詞的共現(xiàn)統(tǒng)計(jì)形成一個(gè)共現(xiàn)矩陣Xij,其中每個(gè)元素代表詞i和j之間的共現(xiàn)程度,然后設(shè)計(jì)一系列的函數(shù)去近似共現(xiàn)概率,由于詞向量空間具有內(nèi)在的線性結(jié)構(gòu),因此這些函數(shù)可以用下式表示:
(5)
其中,w∈d表示詞向量,Pik表示詞與詞之間的共現(xiàn)概率。為了訓(xùn)練詞向量,文獻(xiàn)[9]中提出了一種最小方差回歸模型作為代價(jià)函數(shù),并用AdaGrad獲取最優(yōu)化結(jié)果。
2.2 語(yǔ)義相似度計(jì)算
通過(guò)詞向量的加權(quán)和,我們可以得到子句向量,由于情感詞在子句中的重要性,我們給其賦予較大的權(quán)重,用公式表示如下:
(6)
其中,M表示子句中情感詞的個(gè)數(shù),N表示子句中其它詞的個(gè)數(shù)。由此可以得到子句間的語(yǔ)義相似度為:
(7)
假設(shè)子句間的相似度越高,其表達(dá)的感情色彩越相近。因此在聯(lián)合學(xué)習(xí)之前,我們?cè)谡麄€(gè)數(shù)據(jù)集中找到與每個(gè)子句語(yǔ)義相似度最高的子句,并將它們放在如下的全局表達(dá)式中:
similarity(s1,s2)∧polarity(s1,″pos″)?polarity(s2,″pos″)similarity(s1,s2)∧polarity(s1,″neg″)?polarity(s2,″neg″)
(8)
其中已知謂詞similarity(s1,s2)表示兩個(gè)子句之間在語(yǔ)義上的相似性。與公式中的二元結(jié)構(gòu)特征相比,語(yǔ)義相似特征更是一種真正意義上的全局特征,其不再單純依賴結(jié)構(gòu)上的相鄰性,而是在整個(gè)數(shù)據(jù)集中尋找語(yǔ)義上的相似信息,從而更好地提升聯(lián)合學(xué)習(xí)的能力。
3.1 數(shù)據(jù)集
選擇譚松波的中文情感分析數(shù)據(jù)集(ChnSentiCorp)[11],并在子句級(jí)上進(jìn)行再次標(biāo)注。中文情感分析數(shù)據(jù)集主要來(lái)自攜程的賓館評(píng)論、當(dāng)當(dāng)?shù)臅?shū)籍評(píng)論和京東的筆記本電腦評(píng)論,共有一萬(wàn)多篇,每一篇都有文檔級(jí)的正負(fù)極性標(biāo)注。為了滿足子句級(jí)情感分析的需求,選取了覆蓋三個(gè)類別、長(zhǎng)短不齊的300篇文檔,同時(shí)邀請(qǐng)了三個(gè)與本研究無(wú)關(guān)的標(biāo)注者對(duì)這些文檔進(jìn)行子句判別,同時(shí)對(duì)每個(gè)子句賦予正面、負(fù)面、中立等類別的標(biāo)注。最終形成了4642個(gè)子句,其中34%為正面、47%為負(fù)面及19%為中立。為了評(píng)估三個(gè)標(biāo)注者的標(biāo)注可信度,我們引入了Fleiss’skappa[12],其能有效地衡量多個(gè)標(biāo)注者標(biāo)注數(shù)據(jù)的一致性。對(duì)于我們的數(shù)據(jù),獲得了0.78的Fleiss’skappa值,這個(gè)數(shù)值基本接近0.8的完美標(biāo)注。
3.2 實(shí)驗(yàn)設(shè)置
本實(shí)驗(yàn)的流程如圖2所示,其中采用現(xiàn)有的系統(tǒng)“ICTCLAS”[13]進(jìn)行分詞與詞性標(biāo)注,并采用基于詞典的方法檢測(cè)否定詞、程度副詞及觀點(diǎn)詞。詞向量的訓(xùn)練是在一萬(wàn)多篇原始數(shù)據(jù)集上進(jìn)行,詞向量的維度設(shè)置為50,迭代訓(xùn)練次數(shù)為100次。最后引入開(kāi)源工具“MarkovtheBeast”實(shí)現(xiàn)馬爾科夫邏輯的聯(lián)合學(xué)習(xí)與推導(dǎo)。為了驗(yàn)證語(yǔ)義相似特征的有效性,我們?cè)O(shè)計(jì)了兩個(gè)模型:Base_MLN和Similarity_MLN。其中前者采用二元結(jié)構(gòu)特征,而后者采用語(yǔ)義相似特征。
圖2 實(shí)驗(yàn)流程
3.3 實(shí)驗(yàn)結(jié)果
由于子句級(jí)的情感分析的標(biāo)注費(fèi)時(shí)費(fèi)力,因此數(shù)據(jù)量比較小,為了避免小樣本產(chǎn)生的過(guò)擬合現(xiàn)象,我們采用十折交叉驗(yàn)證。這個(gè)數(shù)據(jù)集被分成十等分,每一次測(cè)試,我們選擇其中9份作為訓(xùn)練集,另外一份作為測(cè)試集。我們采用正確率(A)、準(zhǔn)確率(P)、召回率(R)和F1值來(lái)評(píng)估方法的有效性。表4和表5分別列出了主觀分類和極性分類的結(jié)果。
表4 主觀分類結(jié)果
表5 極性分類結(jié)果
從以上兩個(gè)表中可以看出Similarity_MLN在主觀分類中提高了約2.23%的正確率,而在極性分類中則提高了約4.86%的正確率,這充分表明了語(yǔ)義相似特征的有效性。
本文重點(diǎn)研究子句級(jí)的情感分析,傳統(tǒng)的方法往往采用兩步策略,這往往產(chǎn)生層疊錯(cuò)誤問(wèn)題?;隈R爾科夫邏輯的聯(lián)合模型使各個(gè)子任務(wù)融入到統(tǒng)一的框架下,從而有效地減少了層疊錯(cuò)誤。本文在此基礎(chǔ)上提出了一種新的全局特征,即語(yǔ)義相似特征,充分考慮了語(yǔ)義相似的兩個(gè)子句很有可能具有相同的情感傾向,有效地提升了聯(lián)合學(xué)習(xí)的能力。在中文情感分析數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明語(yǔ)義相似特征優(yōu)于前人的二元結(jié)構(gòu)特征。將來(lái)的研究會(huì)集中在兩個(gè)方面:子句分隔和更細(xì)粒度的分類(喜、怒、哀、樂(lè)等)[14]。
[1] 周勝臣,瞿文婷,石英子,等.中文微博情感分析研究綜述[J].計(jì)算機(jī)應(yīng)用與軟件,2013,30(3):161-164.
[2] 李巖,韓斌,趙劍.基于短文本及情感分析的微博輿情分析[J].計(jì)算機(jī)應(yīng)用與軟件,2013,30(12):240-243.
[3] 李澤魁,趙妍妍,秦兵,等.中文微博情感傾向性分析特征工程[J].山西大學(xué)學(xué)報(bào)(自然科學(xué)版),2014,37(4):570-579.
[4]HuM,LiuB.Miningandsummarizingcustomerreviews[C]//ProceedingsofthetenthACMSIGKDDinternationalconferenceonKnowledgediscoveryanddatamining.ACM,2004:168-177.
[5]WilsonT,WiebeJ,HoffmannP.Recognizingcontextualpolarityinphrase-levelsentimentanalysis[C]//Proceedingsoftheconferenceonhumanlanguagetechnologyandempiricalmethodsinnaturallanguageprocessing.AssociationforComputationalLinguistics,2005:347-354.
[6]ZirnC,NiepertM,StuckenschmidtH,etal.Fine-GrainedSentimentAnalysiswithStructuralFeatures[C]//IJCNLP,2011:336-344.
[7]ChenZ,HuangY,TianJ,etal.Jointmodelforsubsentence-levelsentimentanalysiswithMarkovlogic[J].JournaloftheAssociationforInformationScienceandTechnology,2015,66(9):1913-1922.
[8]RichardsonM,DomingosP.Markovlogicnetworks[J].Machinelearning,2006,62(1-2):107-136.
[9]PenningtonJ,SocherR,ManningCD.Glove:GlobalVectorsforWordRepresentation[C]//EMNLP,2014,14:1532-1543.
[10] 張成功,劉培玉,朱振方,等.一種基于極性詞典的情感分析方法[J].山東大學(xué)學(xué)報(bào)(理學(xué)版),2012,47(3):47-50.
[11]TanS,ZhangJ.Anempiricalstudyofsentimentanalysisforchinesedocuments[J].ExpertSystemswithApplications,2008,34(4):2622-2629.
[12]FleissJL.Measuringnominalscaleagreementamongmanyraters[J].Psychologicalbulletin,1971,76(5):378.
[13]ZhangHP,LiuQ,ChengXQ,etal.Chineselexicalanalysisusinghierarchicalhiddenmarkovmodel[C]//ProceedingsofthesecondSIGHANworkshoponChineselanguageprocessing-Volume17.AssociationforComputationalLinguistics,2003:63-70.
[14] 歐陽(yáng)純萍,陽(yáng)小華,雷龍艷,等.多策略中文微博細(xì)粒度情緒分析研究[J].北京大學(xué)學(xué)報(bào)(自然科學(xué)版),2014,50(1):67-72.
A FINE-GRAINED SENTIMENT ANALYSIS METHOD USING SEMANTICSIMILARITY FEATURE
Chen Ziyan1,2Huang Yu2Wang Yang2Fu Xingyu2Fu Kun2
1(UniversityofChineseAcademyofSciences,Beijing100049,China)2(KeyLaboratoryofTechnologyinGeospatialInformationProcessingandApplicationSystem,InstituteofElectronics,ChineseAcademyofSciences,Beijing100190,China)
Sentiment analysis mainly focuses on the study of people’s emotional expressions including positive and negative sentiment. With the explosive growth of web texts, sentiment analysis has become a hot topic in both academic researches and practical applications.The method of fine-grained sentiment analysis traditionally adopts a 2-step strategy, which is extremely easy to result in stack-up bottom-up errors. A joint fine-grained sentiment analysis framework based on Markov logic is proposed to solve this problem. “Bottom-up” and “Top-down” are the two most commonly used traditional overall features. In order to improve the joint learning ability of fine-grained sentiment analysis, a new semantic similarity feature has been proposed. Experiments on the data set of Chinese sentiment analysis prove that the semantic similarity feature can bring a significant improvement to the joint fine-grained sentiment analysis framework.
Fine-grained sentiment analysis Markov logic Semantic similarity feature
2016-02-17。國(guó)家自然科學(xué)
61331017)。陳自巖,博士生,主研領(lǐng)域:文本信息抽取。黃宇,副研究員。王洋,助理研究員。傅興玉,助理研究員。付琨,研究員。
TP3
A
10.3969/j.issn.1000-386x.2017.03.005