宋樂,何婷婷,王倩,聞彬
(1.華中師范大學計算機科學與技術系,湖北武漢430079)
(2.國家語言資源監測與研究中心網絡媒體分中心,湖北武漢430079)
1 引言
自上個世紀80年代以來,互聯網信息與日俱增。如何在短時間內獲取大量客體(人物、事件、產品等)的評價信息,就成了迫切需要研究的課題。
在這一背景下,文本的傾向性分析是當前自然語言文本處理領域的研究熱點,并且在市場預測分析、民意調查、智能導購、大眾評論等諸多領域有著廣闊的應用空間和發展前景。此外,文本傾向性分析也為文本分類、信息抽取、自動摘要等自然語言處理技術提供了新的研究思路。
心理學研究[1]表明,詞匯和人類情感之間的關系是可度量的,獨立的詞匯或短語的語義傾向對于傳達人類情感是重要的。由此可見,詞匯的傾向性識別是文本傾向性研究的基礎。
詞匯的傾向性識別主要有兩類方法——統計方法和語義方法[2]。統計方法主要是基于機器學習,利用文檔集中詞匯間的共現關系來計算詞匯的傾向性。早在 1997年,Hatzivassilog lou和 M cKeown就嘗試使用連接形容詞的連詞的語言學約束來判斷所連接的兩個形容詞表達的感情是否一致,然后用聚類方法來獲得表示情感傾向的兩個形容詞類[3]。在2003年,Peter D.Turney和M ichael L.Littman[4]使用的點互信息(PM I-IR)方法利用了搜索引擎提供的“NEAR”操作,來估計詞匯與具有強烈傾向意義的種子詞集合的關聯程度,以此作為計算該詞傾向性的依據。同年,Yu和 Hatzivassiloglou[5]挑選出若干極性較強的形容詞(情感詞)構建一個種子詞集合,通過計算新詞和種子集合中的詞的共現概率來判斷新詞的語義傾向。語義方法主要是基于一個現存的本體知識庫,如英文的WordNet和中文的How Net,通過計算待估詞與選定的基準詞的語義距離,進而判斷待估詞的傾向性。2002年,Kamps等[6]正是利用WordNet的同義結構圖計算待估詞與所選基準詞的語義距離來得到其傾向性。在中文方面,復旦大學的朱嫣嵐等[7]在2006年提出的基于How Net的詞匯語義傾向性計算方法,利用詞語間的相似度來計算詞的褒貶程度。
本文介紹了一種基于極性相似度計算的詞匯傾向性識別方法,該方法首先利用 How Net中的“良”,“莠”極性義原計算出未定詞與基準詞間的極性相似度,然后得出詞匯的極性值,從而識別出其極性傾向。我們在第一屆中文傾向性分析評測比賽中使用了此方法,評測表明此方法能夠有效地提高詞匯傾向性識別的準確率。
2 詞匯的極性相似度計算
2.1 極性相似度的引入
《知網》(How Net)[8]的結構化特點,為漢語詞匯語義的相似度計算[9]提出了新的思路和方法。傳統意義上的相似度主要反映的是詞語語義的相似程度,也可以理解為兩個詞語在不同上下文環境中可以互相替換使用,而不改變句法語義結構的程度。劉群等[10]提出了一種詞匯語義相似度計算方法。雖然這種語義相似度能夠反映詞語在句法結構上的相似程度,但卻很難體現詞匯在極性程度上的相似性,如表 1、2 所示。
由表1、2可以看出:詞性相同而極性不同的詞語相似度很大,但詞性不同而極性相同的詞語,相似度則非常的小。使用語義相似度計算方法來識別詞匯傾向性效果很不理想,如表1中“好”和“壞”的相似度竟然接近1,而表2中“好”和“優點”的相似度卻近似為0。
![](https://cimg.fx361.com/images/2023/0215/03daa920ea7f91549267f911b58af1a5128d5c13.webp)
表1 相同詞性的詞匯語義相似度
![](https://cimg.fx361.com/images/2023/0215/b3a36da3fdd314057fb82119d09813edbeac3391.webp)
表2 不同詞性的詞匯語義相似度
為此,我們提出了詞語極性相似度的概念。所謂詞語的極性相似度就是指兩個詞在褒貶情感強度上的相似程度。另外,在復雜的漢語詞匯中有這樣兩類詞,一類詞在不同語境中可能具有情感色彩,也可能是中性的,我們稱之為弱極性詞。另一類詞在不同語境中可能具有褒貶兩極,這一類詞被稱為褒貶兩性詞。極性相似度對這兩類詞的識別也有一定的效果。
![](https://cimg.fx361.com/images/2023/0215/d808dc134e1d283fb3eb0319cc2a4bbb00c0655f.webp)
圖1 H ow Net中弱極性詞和褒貶兩性詞的表示
2.2 義項間極性相似度計算
在How Net中,每一個詞語都用一個或多個義項組成,要計算詞語間的相似度,首先要計算詞語義項間的極性相似度。然后通過義項相似度得到詞語間的極性相似度。
劉群等[10]將義原分成四大類:第一基本義原,其他基本義原,關系義原,符號義原,然后根據不同種類的義原分別用不同的算法求取義原間的相似度,最后得到兩個義項間的相似度。
但我們發現,在H ow Net中有這樣兩個義原:“desired/良”和“undesired/莠”。它們對詞匯的極性傾向具有重要的意義。而在傳統語義相似度計算中這兩個義原被作為其他基本義原組合到集合中進行相似度計算,并且只配給了一個次要權重。這就在很大程度上降低了這兩個代表情感傾向的義原的重要性。為此我們提出了極性相似度計算的新方法:
首先,除了上面提到的四種義原之外,我們將“desired/良”和“undesired/莠”作為一種新的義原—極性義原。具有極性義原的義項稱為極性義項。極性義原間的相似度表示為Sim*(s1,s2),我們規定相同極性義原的相似度為1,不同的為0。
其次,為了增加極性義原在相似度計算中的比重,我們將極性義原相似度和第一基本義原相似度結合起來再乘以最大權重。這樣即可以擴大極性義原的作用,又可以在一定程度的保存詞語間的語義相似性。
最后,我們得到了詞匯義項間的極性相似度公式:
![](https://cimg.fx361.com/images/2023/0215/8e69a1f1c1bfe23a63ac8b0b8bf6180cb264c471.webp)
其中,Sim*(s1,s2)為極性義原相似度。Simi(s1,s2)為其他義原相似度 。β1,β2,β3,β4是通過實驗得出的調整參數。
2.3 詞語間的極性相似度計算
How Net詞語義項可以分為三種:具有“desired/良”義原的褒極性義項、具有“undesired/莠”義原的貶極性義項、沒有極性義原的義項。
如果未定詞只有一種義項,我們取義項間相似度的最大值作為詞語的極性相似度。
![](https://cimg.fx361.com/images/2023/0215/a55872db703e9763b99c7292fdabc4edac6304fa.webp)
其中Sa1…ak為詞Wa的多個義項,Sb1…bk為詞 Wb的多個義項。
但How Net中大量的詞語具有兩種以上的義項,比如前面所說的弱極性詞和褒貶兩性詞。取義項相似度的最大值作為兩個詞語間相似度的方法,在一定上下文中,很難具有說服性的。理想方法是利用上下文語境先進行詞義排歧,確定詞語所表達的準確義項,再將適合這個概念的義項極性相似度作為詞語的相似度。在這里,我們采用了一種基于共現思想的方法來考慮在具體語境中的義項相似度選擇,從而得出詞語間的極性相似度。
首先我們假設未定詞W x(至少具有兩種義項)、確定極性的基準詞Wb(基準詞選取在How Net中只有一種極性義項的詞。即Wb具有唯一極性義項Sb)。
算法步驟:
(1)將W x的多個義項分別組成兩種集合:具有“desired/良”義原的褒義項集合C+x,具有“undesired/莠”義原的貶義項集合Cx-。然后分別計算這兩個集合與Sb的義項間的極性相似度SimO+(,Sb)和SimO-(C-x,Sb)(集合中的多個義項間相似度取最大值)。
(2)我們選取一個長度大小為K的窗口在訓練語料集的所有文檔中移動。窗口中的每對詞語我們都認為是共現的,其共現強度與距離成反比。這樣我們就能計算出共現詞語的相關度:
![](https://cimg.fx361.com/images/2023/0215/67b97ac8fcd39590d00fc3d14d7e09f5d945016c.webp)
其中,N(W1,k,W2)為詞語W1和W2在相關文檔集合中K窗口內距離為k時的共現次數(k這樣,我們就能算出未定詞W x與基準詞Wb在訓練語料中的相關度Re l(Wx,Wb)。
(3)我們取定一個相關度閾值RT。
如果Re l(Wx,Wb)>RT,我們認為在訓練語料中未定詞Wx與基準詞Wb具有很大的相關性。那么:若Wb為褒義,則W x與Wb的詞語間極性相似度取它們褒極性義項相似度:SimO+(,Sb)。若Wb為貶義,則取貶極性義項相似度:SimO-(,Sb)。
如果Re l(Wx,Wb)