徐睿峰,鄒承天,鄭燕珍,徐 軍,桂 林,劉 濱,王曉龍
(哈爾濱工業(yè)大學 深圳研究生院,廣東 深圳518055)
情緒是人類的多種感覺、認知和行為綜合的心理和生理狀態(tài),是對外界刺激所產生的心理認知和反射以及相應的生理反射和表達。情緒是人類生活的重要內容,因此致力于對人類情緒進行計算機感知和表達的情緒計算是人工智能和智能人機交互等研究的重要內容??紤]到文本中蘊含著精細化的情緒描述,特別是包含了情緒的刺激產生原因、刺激認知結果、情緒狀態(tài)遷移和情緒外在表達等多方面信息,近年來陸續(xù)出現了分析文本中個體情緒狀態(tài)及遷移、從文本中發(fā)現情緒的觸發(fā)機制和認知結果,以及對個體接收到文本中包含的刺激可能產生的情緒進行預測等方面的研究。這些研究顯著提高了情緒計算研究的深度和廣度,使其不止限于計算科學領域,更為心理學、認知科學和社會學等研究提供新的動力,因此,文本情緒計算正在成為新的研究熱點。
情緒詞典是文本情緒計算的重要基礎資源。目前典型的情緒詞典包含英文中的 WordNet-Affect[1]以及中文的情緒詞匯本體庫[2]等。對應于六種基本情緒(anger/fear/joy/sadness/disgust/surprise),WordNet-Affect在 WordNet中標注了各類情緒對應詞語和同義詞集。中文情緒詞匯本體庫[2],則將情緒分為7個基本大類和21個小類,對詞語表達的情緒類別和強度分別進行標注。這些詞典有力地推動了文本情緒計算的研究,但在應用中也暴露出一些不足。首先,這些詞典通常對描述個體情緒和引發(fā)個體情緒的詞語未做區(qū)分,導致某些詞語在作為主體情緒表達輸出或者作為主體接收到刺激產生的情緒之間的差異無法一致地記錄在詞典中。例如,“鄙視”作為主體輸出動作時,包含的主要情緒是“厭惡”;而作為主體接受到輸入刺激時,激發(fā)的主要情緒是“憤怒”。如果不對詞語作為個體的輸出表達或者個體對輸入刺激的認知結果進行區(qū)分,顯然容易導致標注知識的疏漏或者沖突。其次,這些詞典將詞語視為一個整體標注,而由于詞語語義歧義的存在,往往導致標注結果的歧義。例如,“興奮”可以表達人的高興和激動的情緒,也可以描述一種無情緒的神經生理活動??梢姮F有的基于詞語的標注方案存在著一些不足。
為此,在對個體情緒產生、遷移機制及對應的文本表達特點進行分析的基礎上,本文提出了一種基于“刺激認知—反射表達”的文本情緒計算框架,并在此框架下對情緒詞語的功能和特性進行分析,探索了一種新型情緒詞典建設方法。首先,針對詞語歧義的問題,引入HowNet的詞性和義項信息,將詞語轉換為按詞性和語義區(qū)分的多個詞條進行標注,以降低標注過程中的歧義。其次,對詞語作為情緒表達方式和情緒認知結果的不同角度進行區(qū)分,對每個情緒詞條進行基于角色的多維度情緒類別和強度標注。此外,對詞語的不同情緒表達和情緒認知類型進行了細化分類和標注。目前已完成近1 300個詞語的標注工作,通過對詞語已標注信息的觀察顯示,本文提出情緒表達和情緒認知分離的情緒詞典建設體系,可以對詞語的情緒相關知識進行多角度的描述和表達,可以較好地支持多種文本情緒計算任務。此外,標注工作顯示利用HowNet提供的詞性和語義區(qū)分進行標注可以顯著提高標注結果一致性。
情緒詞典是文本情緒計算最重要的基礎資源。英語中最重要的情緒詞典資源是 WordNet-Affect。它是對應于Ekman六種基本情緒,通過選擇和標注代表對應情緒概念的WordNet中的相關詞語,然后利用WordNet中定義的關系、情緒標簽和領域標簽之間的相互關系對其進行擴展,找到情緒同義詞所在的同義詞集并進行擴展,從而得到最終的情緒詞典?;赪ordNet-Affect,陸續(xù)有其他研究將其擴展到其他語言如Bobicev,et al.通過機器翻譯得到了羅馬尼亞語和俄語的并行情緒詞典[3];Torii,et al.直接根據 WordNet-Affect的同義集ID和對應的日語 WordNet創(chuàng)建了日語情緒詞典[4];Xu,et al.利用機器翻譯和基于對應翻譯結果雙語圖過濾方法創(chuàng)建了中文種子情緒詞典,再根據詞語相似度計算從同義詞詞林中擴展該詞典,獲得詞匯量較大、質量較高的中文情緒詞典[5]。WordNet-Affect的缺陷在于僅對詞語情緒類別進行標注,同時收錄的詞語多數為描述性情緒詞,而從它翻譯或擴展而來的詞典也并未作更多的表達性類別擴展,因此是不夠全面的情緒詞典。
徐琳宏和林鴻飛等構建了中文情緒詞匯本體庫[2],將情緒分為7個基本大類和21個小類。利用相關情緒詞典和語義知識庫獲得候選情緒詞,再人工對部分種子詞語的情緒類別和強度進行標注,最終使用基于互信息的方法在大規(guī)模語料中對所有情緒候選詞進行自動情緒標注。該情感詞匯本體共27 467個詞語,每個詞包括了詞性、情緒類別、情緒強度值、情感傾向性等信息,該詞典較完整地收錄了表達性和描述性情緒詞,但對同一詞語作為情緒表達方式和情緒認知結果的不同功能未做明顯區(qū)分。
另外一類特殊的情緒詞典是情緒認知詞典,也就是記錄可能誘發(fā)個體情緒的詞匯。這些詞匯可以包含或不包含特定情緒,但會暗示或者誘發(fā)某些情緒的產生。Svitlanna Volkova建立顏色情緒詞典CLex[6],標注了每一種顏色誘發(fā)的情緒,以及潛意識里聯想的某一種事物。Saif Mohammad則對情緒誘發(fā)詞語的歧義進行了研究[7]。
情緒詞典資源是情緒計算的基礎,而詞典標注體系又是由情緒計算框架所決定的,因此要在情緒計算相關研究上有更大的突破,首先需要建立精確合理的情緒計算框架,使得對應的資源建設獲得可靠支撐。
情緒心理學和認知科學的研究成果揭示出個體情緒的產生和遷移是由個體對接受到的動作性輸入、其他感官輸入、評價性輸入等直接刺激和非直接作用刺激的認知結果決定的,而認知結果則是對輸入刺激的常識性認知以及與個體情緒特質相關的個性化認知共同作用的結果。個體情緒的產生和遷移往往通過表情、動作、評價和其他方式進行反射和表達。“刺激激發(fā)認知、認知推動情緒產生和遷移、情緒遷移通過反射輸出表達”構成了情緒產生、遷移和表達的基本機制。對應于這個機制,結合文本情緒計算的特點,本文提出了一種基于“刺激認知—反射輸出”機制的文本情緒計算框架(圖1)。
圖1 基于“刺激認知—反射輸出”機制的文本情緒計算框架
在此框架下,文本情緒分析研究從文本中識別個體情緒狀態(tài)或者輸出的描述,通過結合情緒表達常識及個體情緒遷移規(guī)律評估個體情緒狀態(tài)的機制及對應計算方法;文本情緒歸因研究利用個體情緒狀態(tài)遷移為線索,從文本中發(fā)現和評估引起情緒遷移的刺激和認知的機制及對應計算方法;文本情緒預測研究從文本中識別可能引起個體情緒遷移的輸入,利用對輸入的情緒認知結果評估個體情緒遷移的趨勢和情況的機制及對應計算方法。顯然,對應于情緒表達和情緒認知,應分別建立對應的情緒詞典。為此,本文探索在此框架下作為情緒表達常識庫和情緒認知常識庫重要組成的情緒表達詞典和情緒認知詞典的設計與建設。
3.2.1 初始情緒詞表
初始情緒詞列表是通過合并多個已有情緒詞典獲得,主要包括:中文情感詞匯本體庫[2]、Xu,et al.從WordNet-Affect翻譯并從同義詞詞林中擴展而來的情緒詞典[5]、北京大學 Xu,et al.構建的ICL基本情緒詞典[8]等獲得。對于部分詞語不符合本文定義的情緒詞典覆蓋范圍的情況,在標注過程會人工刪除這些詞語。
3.2.2 利用HowNet信息的詞條生成
由于一些詞語存在多個詞性或者多個詞義,而不同詞性、詞義表達的情緒可能完全不同,所以單獨憑借詞語本身在很多情況下無法確定情緒標注信息。為此,引入HowNet提供的詞性和義項信息對詞語本身進行劃分,解決一詞多義的問題。例如,“嚴峻”一詞,具有相同詞性的兩個不同的含義,一個是用于形容形勢的,而另一個是形容表情的,因此需要對應標注不同的情緒類別。此外,HowNet中對詞匯的英語翻譯、漢語例句、以及對評價詞和情感詞傾向性的特殊說明也可以作為人工標注的參考。
3.3.1 情緒表達、情緒認知的基本劃分方法
本研究將情緒詞劃分為情緒表達和情緒認知兩個大類。情緒表達是指該詞用于描述個體所持有的某種情緒,或者對持有情緒的描述,或者由持有情緒而產生的行為。而情緒認知則指的是該詞的作用對象會因為這一詞匯所描述內容的刺激的認知結果而產生的情緒。
情緒表達詞可細分以下五種情況:
1.個體自身情緒描述,如“悲傷”、“快樂”。
2.個體表情性輸出,如“微笑”、“大哭”。
3.個體動作性輸出,如“破口大罵”、“怒吼”。
4.個體評價性輸出,如“混蛋”、“惡貫滿盈”等。
5.特殊個體評價性輸出,如“感人”、“美麗”等。
情緒認知則可細分為以下四種情況:
6.個體接受到的動作性輸入,如“辱罵”“贊揚”等。
7.個體接受到的非直接作用輸入,如“載歌載舞”、“行兇”等。
8.個體接受到評價性輸入,如“混蛋”、“垃圾”等。
9.個體自身經歷的事件或者承受的狀態(tài),如“慘禍”、“失戀”等。
情緒表達和情緒認知詞語的基本劃分就是圍繞這9個類別進行。
3.3.2 情緒詞的角色屬性
在進一步的研究與試標注的基礎中,本文提出將上述9種情緒類型劃分按照情緒主體角色屬性的不同歸納為以下4類角色類別,分別用ABCD標記。
藥品專利鏈接制度的目的是在仿制藥上市前解決潛在的專利侵權糾紛,而“停擺期”的意義在于為糾紛的解決提供必要的時間。其中,“停擺期”時長設置是制度的關鍵,時間過短難以解決存在的專利糾紛;而時間過長,則又可能不當地延遲仿制藥上市時間。從實踐情況來看,美國長達30個月的“停擺期”,也不能完全解決專利侵權糾紛。而事實上,即便設置更長時間的“停擺期”,也不可能徹底地解決所有糾紛。因此,在設計“停擺期”時,不應當不切實際地追求在此期間使所有糾紛獲得終局結論,而是需要在公平與效率之間取得合理的平衡。
A.發(fā)出評價者的情緒:通常是作者或說話人的情緒,包括情緒表達中的“4.個體評價性輸出”和“5.特殊個體評價性輸出”兩類。這兩種情況的共同特點是,作者或說話人對其他事物進行了含有主觀感情色彩的評價。4類含有的情緒較為明顯,可以是說話人的感情宣泄,例如,對于“混蛋”一詞,反映了作者的厭惡和憤怒的情緒。而5類別的情緒詞所含有的主觀感情色彩相對較弱,通常作為客觀描述,加上程度副詞后帶有明確的感情色彩。例如,“這是個感人的故事”作為客觀描述是無情緒的,而“真是太感人了”作為主觀情緒表達帶有明顯情緒,類似的詞語還有 “悲慘”、“富麗堂皇”等。
B.所屬者或被描述者的情緒:包括情緒表達中的“1.個體自身情緒描述”、“2.個體表情性輸出”和“3.個體動作性輸出”三個類別。這種情況的共同特點是,情緒詞是情緒主體所處的狀態(tài)或發(fā)出的動作,對詞匯進行標注的情緒內容是該詞匯所屬主體的情緒。例如,“他悲痛欲絕”、“她怒吼道”。
C.動作、評價、事件、狀態(tài)受體的情緒:包括情緒認知中的“6.個人接受到的動作性輸入”、“8.個體接受到評價性輸入”和“9.個體自身經歷的事件或者承受的狀態(tài)”三個類別。類別6與類別8的共同點是情緒詞本身是一種由他人發(fā)出的動作或作出的評價;類別6與類別9的區(qū)別在于類別9是強調自身經歷,而類別6是強調由外界施加并且是個體直接接受的動作。例如,被“毆打”的人會感到悲傷和憤怒,被他人評價為“混蛋”通常會產生憤怒等情緒,經歷“失戀”通常會產生悲傷、失望、煩悶等情緒,處于“形單影只”狀態(tài)也會有悲傷等負面情緒。
D.旁觀者或讀者的情緒:是指事件、動作、狀態(tài)等的旁觀者或者讀者所產生的情緒,包括“7.個體接受到的非直接作用輸入”。這一類情況的情緒往往不是直接刺激作用于情緒主體而產生的,而是由于感知到的某種情況、狀態(tài)產生了情緒。文中旁觀者或者文章讀者結合自己的常識、立場等產生相應的情緒,例如,“敲詐勒索”一詞通常會令人產生厭惡和憤怒等情緒。
在情緒詞典標注過程中,對每一個情緒詞首先要進行其在不同情緒主體角色下對應的9個情緒屬性的標注。標注的內容即為3.3.1描述的9種類別的具體標號。通常情況下,一個詞往往會兼有以上四種情緒主體角色的情緒類別中的一種或幾種,例如,“混蛋”一詞的類別標注為4/0/8/7。其含義是,“混蛋”一詞的評價發(fā)出者、評價接受者以及旁觀者或讀者都會有某種情緒。其中0代表沒有或無法確定這一類別下的情緒,實際標注中通常略去。
上述歸納劃分方法在一定程度上解決了表達/認知類別標注混亂的問題,有利于標注者清晰思路和理順邏輯,從而提高多人標注的一致性,更重要的是,它能為實際應用該詞典解決常見情緒研究問題提供可靠的依據。
3.3.3 情緒詞標注方案
漢語里一個詞往往有多種不同含義和用法,利用詞性以及其他HowNet信息有時仍不足以嚴格地判斷一個情緒詞需要進行哪些類別情緒內容的標注。例如,作為角色類別A類的用于評價的詞,可能是形容詞,如“他干得不賴啊”,也可能是名詞,如“XX是個混蛋”,甚至可能是動詞,如“沒完沒了地扯皮,把事情都耽誤了”。由此可見,需要分別針對各類詞性的情緒詞制定不同的類別劃分方法。在這一問題上,總的原則是盡可能地對詞的各種用法進行全面的考量,只要該詞有可能被用于符合某個角色類別的情況,就對其在此類別下的具體情緒屬性類別及具體情緒內容進行標注。表2是各個詞性類別對應情緒角色和情緒屬性的例詞,如下所示。
表2 詞性對應各情緒屬性的例詞
在確定情緒詞所屬的類別信息之后還要對其包含的情緒信息的具體內容進行標注。這部分標注包括兩方面的內容:情緒類別及其強度。情緒類別指的是通常所說的基本情緒,如快樂、悲傷、憤怒、厭惡等,具體類別劃分與大連理工大學的情感詞匯本體[2]中使用的體系相一致,共7大類21小類,包括:樂(快樂、安心),好(尊敬、贊揚、相信、喜愛、祝愿),怒(憤怒),哀(悲傷、失望、疚、思),懼(慌、恐懼、羞),惡(煩悶、憎惡、貶責、妒忌、懷疑),驚(驚奇)。在實際標注過程中發(fā)現,只有相對少量的描述基本情緒的詞具有單一的情緒類別,大部分的詞語其內涵情緒都是多種情緒的搭配組合。對于具體每個情緒類別的強度,本文采用0,1,3,5,7,10的數值標注,用數值的大小表示情緒的強烈程度,0表示沒有該情緒,10代表情緒的強度極為強烈,1,3,5,7則對應于輕微,小量,明顯,強烈的由弱到強的不同強度級別。完成多人標注后,最終的強度值是由多人的標注數值的均值確定。
3.3.5 完整標注示例
綜合上述標注體系,一些典型例詞的部分實際標注效果如表3所示。
表3 標注實例
續(xù)表
3.3.6 詞典應用方法
與本研究所構建的情緒詞典相比,傳統(tǒng)的情緒詞典通常并不對情緒的角色屬性加以區(qū)分,對各種類型的情緒詞都應用相同的處理方式。而在實際文本中,由于詞語作用的個體不同,針對不同的文本情緒計算任務,每個情緒詞所體現出的作用也是不同的。從目前已有情緒研究所涉及的不同角度來看,典型的情況可以分為以下三大類。
1)針對傳統(tǒng)的作者情緒分析任務。發(fā)揮作用的情緒詞主要體現在情緒角色屬性為A所標注的內容;
2)針對文本細粒度情緒分析任務。在分析文中角色的情緒內容時主要采用情緒詞的角色屬性類別為B、C、D;
3)針對讀者情緒預測任務。需要重點關注的是情緒詞在D類別下標注的情緒內容。
例如,“敲詐勒索”一詞,如果需要分析的是文中所描述的“遭到敲詐勒索”的人的情緒,則關注的是該詞在C類別下所標注的情緒(在此為情緒屬性類別6),即憤怒、恐懼等;而對于讀者情緒預測任務則需要重點關注D類別下(即為情緒屬性類別7)標注的內容,即貶責、憎惡、憤怒等。
第一階段標注選取了較典型和明確的情緒詞進行標注,借助HowNet中正面情感詞、負面情感詞的標注信息進行挑選,總計1 259個詞語,對應獲得1 500個HowNet義項,以下表格為各項標注結果的統(tǒng)計數據。表4是對情緒屬性、情緒類別對應的詞語數及平均情緒強度值的統(tǒng)計結果??梢园l(fā)現典型情緒詞較多為表示情緒描述的詞語,而情緒認知詞語使用相對較少,這符合常規(guī)語言現象。標注詞語中具有較高詞語數量的情緒類別主要為:快樂(323)、喜愛(351)、憤怒(310)、悲傷 (566)、煩悶(295)、憎惡(394)、貶責(342),這些是代表了具有明顯褒貶傾向的情緒類別,也是在文章中較常表達的情緒。對于主要的情緒屬性和情緒類別來說平均情緒強度值分布在3.5~4.5,說明大部分情緒表達均在中等強度水平,太過強烈或者輕微的情緒表達較少。
表5給出已標注詞條中情緒屬性和詞性相關性統(tǒng)計結果。結果顯示作為情緒屬性4和5的情緒詞大部分為形容詞,符合評價詞多為形容詞的特性;作為情緒屬性1、2、3的情緒詞大部分為動詞,符合情緒所屬者表達自身情緒多為心理、表情、動作的特性;作為情緒屬性6、8的情緒詞大部分為動詞和形容詞,與3和4的詞性相對應;作為情緒屬性7的情緒詞多為動詞、形容詞,符合讀者或旁觀者由于動作、評價輸出引起相應情緒的特性;作為情緒屬性9的情緒詞多為動詞、名詞、形容詞,符合表示事件、狀態(tài)等詞語的詞性分布。
表4 情緒屬性與情緒類別標注分布統(tǒng)計結果(詞語數及平均情緒強度值)
表5 情緒屬性與詞性標注分布統(tǒng)計結果(詞語數)
表6給出了已標注詞條的詞性與情緒屬性兼類情況的統(tǒng)計結果??梢园l(fā)現,由于中文詞語表達的多樣性和復雜性,情緒屬性兼類的情況也比較多。目前出現的各類組合兼類共有19種,現階段已標注的典型情緒詞中主要為類別1.個體自身情緒描述的詞語,此類詞語較少出現兼類情況。兼類主要分布在類別3/7、4/7、4/7/8、5/7、6/7、7/9之間,并且大部分兼類中都包括屬于情緒認知的情緒類別7,代表對讀者/旁觀者情緒的考慮,而這類標注內容將在情緒預測和基于角色的情緒分析中得到充分的應用和驗證,體現了本詞典的特性。
表6 詞性與情緒屬性兼類標注分布統(tǒng)計(詞語數)
目前情緒詞典的建設已完成標注方案設計和完善,通過多輪試標注,實現了標注體系的不斷完善。先后解決了一詞多義帶來的歧義性、近義詞分散帶來標注的不一致性、角色觀測角度不同帶來的不確定性等問題。目前正在第一階段標注的基礎上進行進一步完善標注體系,并逐步完成全部情緒詞典標注。
相比現有情緒詞典,本文提出的情緒表達和情緒認知分離的情緒詞典建設方案可以對詞條從不同角度觀測到的情緒狀態(tài)或認知結果及其強度進行區(qū)分標注,顯著降低了傳統(tǒng)情緒詞典中由于描述角度不一致帶來的問題。同時,基于HowNet詞性和義項的標注明顯降低了由于詞義歧義帶來的情緒標注歧義。此外,這種基于義項的標注提高了標注結果的精度和一致性。初步實踐顯示本文開發(fā)的新型情緒詞典可以更好地支持多種文本情緒計算相關研究。后期工作將逐漸擴展到更多詞匯進行標注,增加標注工作參與人數,利用對標注結果進行多人綜合的方法,增強標注可信度。同時計劃對大量詞匯進行半自動標注,以提高標注效率。
[1]C Strapparava,A Valitutti.WordNet-Affect:An Affective Extension of WordNet [C]// Proceedings of LREC 2004:1103-1106.
[2]徐琳宏,林鴻飛,潘宇,等.情感詞匯本體的構造[J].情報學報,2008,27(2):180-185.
[3]M Sokolova,V Bobicev.Classification of Emotion Words in Russian and Romanian Languages[C]//Proceedings of RANLP-2009:415-419.
[4]Y Torii,Dipankar D,S Bandyopadhyay,et al.Developing Japanese WordNet Affect for Analyzing Emotions[C]//Proceedings of ACL-WASSA 2011:80-86.
[5]J Xu,R F Xu,et al.Chinese Emotion Lexicon Developing via Multi-lingual Lexical Resources Integration[C]//Proceedings of CICLing 2013:174-182.
[6]Volkova S,Dolan W B,Wilson T.CLex:a Lexicon for Exploring Color,Concept and Emotion Associations in Language[C]//Proceedings of EACL 2012:306-314.
[7]S M Mohammad,P D Turney.Emotions Evoked by Common Words and Phrases:Using Mechanical Turk to Create an Emotion Lexicon [C]//Proceedings of NAACL-HLT 2010Workshop on Computational Approaches to Analysis and Generation of Emotion in Text,2010:26-34.
[8]G Xu,X F Meng,H F Wang.Build Chinese Emotion Lexicons-Using a Graph-based Algorithm and Multiple Resources[C]//Proceedings of COLING 2010:1209-1217.