韋向峰,張 全,繆建明,池毓煥
(中國科學院 聲學研究所,北京 100190)
由于互聯網的開放性,新聞報道、評論、博客、BBS、微博等都可以表達對事件、人或物品的傾向性觀點。其中不乏具有爆炸性、爭議性的事件,人們對這些事件的傾向和態(tài)度有可能影響社會價值取向,甚至造成社會的不穩(wěn)定。如何自動分析文本的傾向性態(tài)度,及時發(fā)現和防止不良內容的傳播和擴散,成為維護互聯網健康發(fā)展的重要課題。其中,如何利用自然語言處理的技術獲取文本對評價對象的態(tài)度,成為研究者們關注的焦點之一。
文本態(tài)度傾向性分析的主流方法是通過建立相關的褒貶詞匯詞典等褒貶評價資源,采用統(tǒng)計處理手段獲取文本的態(tài)度傾向性;也可以把文本的傾向性類別作為文本分類問題進行處理,得到文本的態(tài)度傾向性類別。詞語的傾向性是文本傾向性分析的重要基礎,也是人判斷文本傾向性的重要依據之一。具有強烈的傾向性或極性是某些詞語的屬性,利用已有的語義詞典資源如WordNet[1]或HowNet[2],根據已知極性的詞語和PMI算法可計算得到未知極性詞語的傾向性[3]。相對詞語傾向性分析而言,句子傾向性分析模型研究較少,有的依據“上下文中相鄰句子應該具有相同類別”[4]做分析,有的用CRFs研究句子的傾向性標注序列問題[5];還有的依據主謂、動賓以及格語法賦予詞語不同的權重,作為對句子傾向性分析的補充[6-8]。文本傾向性分析一般是把文本看作是特征詞語表達的向量,以特征詞語的極性或已標注的訓練語料為基礎,用文本分類算法(如SVM)[9]或者聚類算法獲得文本的傾向性類別。
文本態(tài)度傾向性分析的目的,就是獲取文本中觀點持有者對某一評價對象的態(tài)度(或稱觀點、情感)。從文本的評價對象來看,可分為對人的評價、對物品的評價和對事件的評價。本文主要關注事件文本中對事件的傾向性態(tài)度,首先獲取文本語句中的對象詞、極性詞等詞語,然后把語句的語義塊分析結果轉化為二元或三元傾向性分析模型,計算得到語句傾向性,根據語句傾向性的統(tǒng)計結果得到事件文本的傾向性態(tài)度。
從目前的文本傾向性分析的研究來看,涉及的被評價對象絕大多數是物品和人物,關于事件的傾向性分析研究得較少。這主要是因為事件的定義和識別復雜得多,事件包含的要素包括人或機構、時間、地點、事件過程等。但是,事件也有其自身的特點,重大熱點事件往往會形成“特定簡稱”(例如,911事件、馬德里爆炸案、汶川地震),一些有爭議的事件常出現辯論的正反兩方,這兩方一般都是人或機構。因此,事件的定位可以通過關鍵字、關鍵人名發(fā)現相關的文章,而有爭議的事件很容易使不同文章具有不同的傾向性。本文著重研究在語句傾向性分析的基礎上實現有爭議事件文章的傾向性分類,首先人工選定和收集某些事件的相關文章,然后確定出事件的關鍵詞以及關鍵人物,同時為這些關鍵人物分配事件立場傾向。以這些關鍵詞和關鍵人物作為對象詞,在已建立的褒貶詞語知識庫、否定邏輯詞集、程度詞集的基礎上,根據語句傾向性分析的模型和算法,獲得語句關于事件的傾向性態(tài)度。然后對文章中包含傾向性態(tài)度的語句分析結果的權重設置、加權統(tǒng)計后可以得到文章對于事件的傾向性態(tài)度。
語句傾向性分析是事件傾向性分析的基礎,我們首先把影響語句傾向性態(tài)度的主要詞語分為四類:褒貶詞、對象詞、邏輯詞和程度詞,然后根據語句的語義塊分析結果轉化為最簡單的二元模型或三元模型,通過褒貶詞的傾向性計算得到語句對于某個被評價對象的傾向性態(tài)度,再通過事件文本中語句傾向性統(tǒng)計得到文本的傾向性態(tài)度。
褒貶詞,是指本身具有某種或多種傾向性態(tài)度的詞語,例如,“好”、“壞”、“贊揚”、“譴責”、“驕傲”、“風騷”等。為便于計算,具有正面積極評價信息的詞稱為褒義詞(屬性值取“+1”),具有負面消極評價信息的詞稱為貶義詞(屬性值取“-1”),沒有傾向性態(tài)度信息的詞稱為中性詞(屬性值取“0”),具有多種傾向性態(tài)度的詞屬性值取“2”。
對象詞,是表示被評價對象或態(tài)度持有者的詞語,可以是表示人、物品、事件、屬性等各種各樣的詞語。對象詞被賦予立場屬性,屬性值“+1”表示事件正方,“-1”表示事件反方,“0”表示中立方。對象間的褒貶、立場具有傳遞性,并在一定程度上反映了文本述者的褒貶立場。
邏輯詞,主要是表示肯定或否定的詞語,如“是”、“不是”、“不”、“未必”等。褒貶詞經邏輯詞修飾后傾向性可能會發(fā)生反轉,例如,“好”加上否定修飾“不”后變成了“不好”,“好”與“不好”二者的傾向性態(tài)度完全相反。
程度詞,是指一些描述程度的修飾詞語,例如,“最”、“很大”、“較大”、“一定程度”等,按照程度從小到大人工確定屬性值(大于0且小于1),例如,“較大”取0.6,“很大”取0.8,“最”取0.9。程度詞在運算中不影響傾向性的極性(褒貶性),但是會改變句子傾向性(褒或貶)的強弱程度。
對象詞和褒貶詞是構成語句傾向性分析模型的最基本要素,在具有傾向性態(tài)度的語句中一般會同時出現被評價對象詞和褒貶詞。一元模型因缺少傾向性或缺少被評價對象,在語句范圍內無法處理。因此,最簡單的二元模型評價形式為“A B”,其中A是褒貶詞B是對象詞,反之亦可。例如,一個語句經簡化處理后為“該方法 好”,那么這個語句的陳述者對于“該方法”的傾向性態(tài)度是正面的(“好”),語句傾向性態(tài)度的取值為褒貶詞“好”的屬性值“+1”。
語句傾向性分析的三元模型的基本形式為“C X D”,其中 C是評價者(對象詞),X是褒貶詞,D是被評價對象(對象詞)。例如,“他 鄙視 這種做法”,評價者“他”對被評價對象“這種做法”的傾向性態(tài)度是反面的。從本質上看,三元模型省略評價者后就是二元模型,此時評價者默認為語句文本的陳述者。當不關心評價者,只關心被評價對象和對其的傾向性態(tài)度時,三元模型可以轉化為二元模型處理。
根據二元模型或三元模型,語句傾向性分析的計算結果要么為+1,要么為-1,其結果值由褒貶詞的屬性值確定。當語句中出現邏輯詞時,在邏輯詞的轄域范圍內如果有褒貶詞,那么應乘上邏輯詞的屬性值(否定為-1,肯定為+1)。當語句中出現程度詞時,在程度詞的轄域范圍內如果有褒貶詞,那么應乘上程度詞的屬性值。
語句中也可能出現傾向性評價的四元或更多元的形式,例如,五元形式的語句“美國 指責 伊朗 支持 恐怖主義”,這時候應先把語句轉化為三元模型“美國 指責 E”,而E又正好是三元模型“C X D”的形式,即“伊朗 支持 恐怖主義”。因此,四元或更多元的語句模型可以轉化為二元或三元模型進行處理。
在實際語句處理中,如果把褒貶詞或對象詞作為“元”,一般都會得到四“元”、五“元”甚至更多元的情形,這時如何把多元降元為三元或二元模型呢?一種辦法是簡單地把頭部或尾部的“元”去掉,顯然這種降元方法會產生較高的錯誤率。另一種辦法是先按語句的語義結構劃分為語義塊進行降元處理,然后在語義塊內部按照二元或三元模型進行處理。例如,前述五元形式語句的語義結構為“GBK1+EK+GBK2”,語義塊GBK1為“美國”,EK為“指責”,GBK2為指責的內容。語義塊GBK2內部又是一個句子“伊朗 支持 恐怖主義”,由三個語義塊構成,這時可直接應用傾向性分析的三元模型。
因此,我們利用概念層次網絡理論(HNC)的句類分析技術[10]得到語句的語義塊結構,然后在語義塊內部繼續(xù)降元,轉化為二元或三元模型,具體轉化方法和實現步驟如2.4節(jié)所述。這種降元處理方法的基礎是語句的語義塊結構和語義關系,準確率比簡單降元方法要高。
語句的語義類型即HNC的句類。句類表示式由主語義塊構成,主語義塊可以是詞、短語或下一級句子。主語義塊又分為特征語義塊EK和廣義對象語義塊GBK。根據句類表示式中主語義塊的個數,語句分為兩塊句、三塊句和四塊句。其中,四塊句的句類表示式的基本格式為GBK1+EK+GBK2+GBK3,三塊句為GBK1+EK+GBK2,兩塊句為GBK+EK或GBK1+GBK2。兩塊句和三塊句的表示式可與二元模型和三元模型直接對應。當語句語義塊為簡單構成(不含句子或句子變形)時,可以利用句類分析的結果表示式直接計算得到語句的傾向性。當語義塊為包含句子的復雜構成時,需要根據所包含句子的句類表示式進行逐級深入的計算,直到沒有語義塊的復雜構成為止。具體的轉化方法及語句傾向性分析步驟如下。
步驟1) 如果語句為兩塊句,且兩個主語義塊分別是褒貶詞和對象詞,那么按二元模型計算語句的傾向性態(tài)度,轉步驟11);
步驟2) 如果語句為三塊句,且GBK1為對象詞、EK為褒貶詞、GBK2為對象詞,那么按三元模型計算語句的傾向性態(tài)度,轉步驟11);
步驟3) 如果語句為四塊句,且GBK2和GBK3分別是褒貶詞和對象詞,那么先按二元模型計算GBK2和GBK3的傾向性,然后轉步驟2);
步驟4) 對語句中的每一個語義塊,執(zhí)行步驟5)到步驟10);
步驟5) 如果語義塊內含一個褒貶詞和一個對象詞,那么按二元模型計算得到傾向性;
步驟6) 如果語義塊內含一個褒貶詞和多個對象詞,那么取褒貶詞與其右邊最近的一個對象詞,然后按二元模型計算得到傾向性;
步驟7) 如果語義塊內含多個褒貶詞和多個對象詞,那么分別取褒貶詞與其右邊最近的一個對象詞,然后按二元模型計算得到傾向性;
步驟8) 如果語義塊內含有邏輯詞,那么邏輯詞右邊最近褒貶詞的傾向性應乘上邏輯詞的屬性值;
步驟9) 如果語義塊內含有程度詞,那么程度詞右邊最近褒貶詞的傾向性應乘上程度詞的屬性值;
步驟10)如果語義塊內含語句,那么把內含語句作為新語句,轉步驟1);
步驟11)結束,得到語句的傾向性。
我們選取唐駿“學歷門”事件、肯德基“秒殺門”事件、山西疫苗事件作為實驗事件,通過一些網站的專題頁面和用關鍵字在搜索引擎中的搜索結果,下載得到了關于三個事件的網絡文章各為76篇、34篇和65篇。
我們建立了一個包含6 368個褒貶詞的詞庫,其中褒義詞2 650個、貶義詞3 718個,整理出12個表示肯定的邏輯詞和38個表示否定的邏輯詞,人工設定了14個常見的程度詞的屬性值。在三個事件中,還事先人工設定了各事件的關鍵對象詞和屬性值,以實現含有主觀傾向性態(tài)度語句的定位(只有同時包含對象詞和褒貶詞的語句才進行語義塊結構分析和語句的傾向性模型分析)。有爭議的事件中必然出現對立的雙方如“唐駿與方舟子”、“肯德基與消費者”、“王克勤與山西衛(wèi)生廳”等,事件的關鍵對象詞及其屬性值具體設置如表1所示,屬性值“+1”表示立場為事件正方,“-1”表示立場為事件反方,“0”表示無立場。
表1 事件中的對象詞和屬性值
在文章的傾向性分析中,首先定位對事件具有褒貶傾向的主觀性評價語句,把既含有對象詞又含有褒貶詞的語句作為分析依據。然后根據語句的語義塊分析結果,按照本文2.4節(jié)所述步驟對語義塊中的對象詞的褒貶傾向性進行分析。將語句的傾向性按對象權值累計正負得分,實驗中每個被評價對象的權值相等,如果正值得分大于負值得分那么文章的傾向性為“褒”(“支持”被評價對象),反之如果負值得分大于正值得分那么文章的傾向性為“貶”(“反對”被評價對象)。通過人工評判每篇文章的“褒”、“貶”傾向性,并與系統(tǒng)分析結果進行比較,文章傾向性分析結果如表2和表3所示。
在表2中,“支持”表示文章與表1中屬性值為“1”的對象的立場相同,傾向性為“褒”;“反對”表示文章與表1中屬性值為“1”的對象的立場相反,傾向性為“貶”。例如,在唐駿“學歷門”事件中,系統(tǒng)判定支持唐駿的文章數為15,反對唐駿的文章數為46。由于屬性值為“1”的對象與屬性值為“-1”立場對立,因此反對唐駿即支持方舟子,反之亦然。
從表3看,肯德基“秒殺門”事件支持傾向的正確率最低,這可能是因為文章中大量出現了含有“肯德基”的對象詞,而忽略了屬性值為“-1”的反面對象詞。山西疫苗事件中反對傾向獲得了較高的準確率,這可能是因為下載的文章中大量是質疑“問題疫苗”的。單從表2中人的判定結果數量來看,文章中處于中立態(tài)度的文章數量較多,而持支持態(tài)度的文章則較少,這實際上也給系統(tǒng)的判定造成了困難。
表2 事件傾向性分析正確數
表3 事件傾向性分析的正確率和召回率
錯誤的原因主要在于句子的語義塊分析結果不準確,造成了對象詞和褒貶詞的錯誤相關,得到錯誤的傾向性結果。一旦語義塊分析結果正確率提高,將會大幅提高傾向性分析結果的正確率。此外,以下的錯誤原因也應該引起研究者的重視:(1)分詞引起的錯誤,例如,“不才”切成了“不”和“才”,會多出一個否定詞,得到相反的傾向性;(2)組合詞語表達的傾向性,例如,“受到了 傷害”,單個詞沒有明顯的傾向性,但組合起來卻具有傾向性;(3)假設句和條件句引起的錯誤,當作者使用這些句式時,他并不一定贊同所述文字的傾向態(tài)度,可能是中立也可能是反對;(4)疑問句式,在反諷等修辭文法中,經常使用反問等方式表達作者的態(tài)度,這種文本如果只分析字面得不到真正的傾向性態(tài)度;(5)表達中立的敘述說明文本,在新聞報道中有的作者只陳述事實(如正反兩方的觀點),并不加入自己的觀點,但有的作者會在陳述當中加入自己的傾向性態(tài)度;(6)與法律庭審相關的文本,這些文本往往包含了控辯雙方的態(tài)度,但從作者的傾向性態(tài)度來看是中立的;(7)立場與褒貶息息相關,如果表達了褒貶傾向也就表達了文本立場傾向,但立場傾向并不一定要通過褒貶來表達,而且立場往往涉及到多個對象和多種態(tài)度,比褒貶只有兩個極性要復雜。上述幾點都會給傾向性的分析帶來困難,造成系統(tǒng)分析的錯誤。
事件的傾向性分析對網絡輿情分析和事件趨勢分析都具有重要意義。事件傾向性分析比物品和人物傾向性分析的范圍要廣,但事件內部的傾向性要素主要還是人物或機構,以及他們之間的語義關系。本文從具有爭議性的熱點事件入手,在事件中區(qū)分出關鍵對象詞,并把關鍵對象詞分為立場對立的兩類;然后利用語句的語義塊分析技術和傾向性分析模型獲得語句的傾向性,在此基礎上分析得到文章對事件中主要對象的傾向性態(tài)度。總體來看,由于語義塊規(guī)范了褒貶詞的作用范圍和對象詞的結合關系,在語義塊的基礎上進行傾向性分析模型的降元處理,可以有效提高傾向性分析結果的正確性。
在事件傾向性分析的研究中,我們發(fā)現立場分析對于事件傾向性分析至關重要,同時也是褒貶傾向性分析的一個基礎。精確的立場分析應該包括文本對象的立場和作者的立場,在一般情況下可以把作者的立場等同于語句中第一陳述對象的立場,但在特殊的句式或文體中卻不能等同。進一步的研究應該在文章傾向性的基礎上細化出傾向性的相關各方,即“褒”是哪一個評價者對哪一個被評價對象的“褒”。而作者立場與文本中對象的立場是否一致、如何根據文體或句式獲取作者立場,這些都是本文未來進一步的研究方向。
[1] WordNet—A lexical database for Enlish[OL]. [2012-01-06]. http://wordnet.princeton.edu/.
[2] 知網(HowNet Knowledge Database)[OL]. [2010-08-20]. http://www.keenage.com/.
[3] Turney,Peter,Littman Michae1.Measuring praise and criticism: Inference of semantic orientation from association[J]. ACM Transactions on Information Systems,2003,21(4):315-346.
[4] Bo Pang,Lillian Lee. A sentiment education: Sentiment analysis using subjectivity summarization based on minimum cuts[C]//Proceedings of ACL 2004. 2004:271-278.
[5] 劉康,趙軍.基于層疊CRFs模型的句子褒貶度分析研究[J]. 中文信息學報,2008,22(1):123-128.
[6] 江寶林,劉永丹,金峰,等.一個基于語義分析的傾向性文檔過濾系統(tǒng)[J].計算機應用與軟件,2005,22(1):10-11.
[7] 金峰,劉永丹,江寶林,等.TTFS:一個傾向性文本過濾系統(tǒng)的設計與實現[J].計算機工程與應用,2003(30):137-140.
[8] 劉永丹,曾海泉,李榮陸,等.基于語義分析的傾向性文本過濾[J].通信學報,2004,25(7):78-85.
[9] 徐琳宏,林鴻飛,楊志豪.基于語義理解的文本傾向性識別機制[J].中文信息學報,2007,21(1):96-100.
[10] 韋向峰.基于HNC理論的擴展句類分析平臺研究[D]. 北京:中國科學院聲學研究所,2005.