1. 程式人生 > 實用技巧 >華為雲專家帶你解讀文字情感分析任務

華為雲專家帶你解讀文字情感分析任務

摘要:本文主要介紹了文字情感分析的主要任務,包括詞級別的情感分析、句子級情感分析以及屬性級情感分析等任務的介紹,同時介紹了華為雲在這三個任務上的一些進展。

1 基本概念

為什麼:隨著移動網際網路的普及,網民已經習慣於在網路上表達意見和建議,比如電商網站上對商品的評價、社交媒體中對品牌、產品、政策的評價等等。這些評價中都蘊含著巨大的商業價值。比如某品牌公司可以分析社交媒體上廣大民眾對該品牌的評價,如果負面評價忽然增多,就可以快速採取相應的行動。而這種正負面評價的分析就是情感分析的主要應用場景。

是什麼:文字情感分析旨在分析出文字中針對某個物件的評價的正負面,比如“華為手機非常好”就是一個正面評價。情感分析主要有五個要素,(entity/實體,aspect/屬性,sentiment/觀點,holder/觀點持有者,time/時間),其中實體和屬性合併稱為評價物件(target)。情感分析的目標就是從非結構化的文字評論中抽取出這五個要素。

圖 1 情感分析五要素

舉例如下圖:

圖 2情感分析五要素例子

上例中左側為非結構化的評論文字,右側為情感分析模型分析出的五個要素中的四個(不包括時間)。其中實體“華為手機”和屬性“拍照”合併起來可以作為評價物件。評價物件又可細分為評價物件詞抽取和評價物件類別識別。如實體可以是實體詞和實體類別,實體詞可以是“餐館”、“飯店”、“路邊攤”,而實體類別是“飯店”;屬性可以是屬性詞和屬性類別,如屬性詞可以是“水煮牛肉”、“三文魚”等,都對應了屬性類別“食物”。實體類別和屬性類別相當於是對實體詞和屬性詞的一層抽象和歸類,是一對多的關係。詞和類別分別對應了不同的任務。觀點的取值範圍一般是{正面,負面,中性}。類似的,可以把觀點看做是對描述詞的抽象和歸類,如“好看”歸為“正面”。

2 任務型別

當前研究中一般都不考慮情感分析五要素中的觀點持有者和時間,故後文中的討論都不考慮這兩個因素。根據對剩下三個要素的簡化,當前情感分析的主要任務包括可按照圖 3所示:詞級別情感分析、句子/文件級情感分析、目標級情感分析。

圖 3 情感分析任務體系

其中詞級別和句子級別的分析物件分別是一個詞和整個句子的情感正負向,不區分句子中具體的目標,如實體或屬性,相當於忽略了五要素中的實體和屬性這兩個要素。詞級別情感分析,即情感詞典構建,研究的是如何給詞賦予情感資訊,如“生日”對應的情感標籤是“正面”。句子級/篇章級情感分析研究的是如何給整個句子或篇章打情感標籤,如“今天天氣非常好”對應的情感標籤是“正面”。

而目標級情感分析是考慮了具體的目標,該目標可以是實體、某個實體的屬性或實體加屬性的組合。具體可分為三種:Target-grounded aspect based sentiment analysis (TG-ABSA), Target no aspect based sentiment analysis (TN-ABSA), Target aspect based sentiment analysis (T-ABSA). 其中TG-ABSA的分析物件是給定某一個實體的情況下該實體給定屬性集合下的各個屬性的情感分析,如圖 4中的實體是汽車,屬性集合是動力、外觀、空間和油耗。

圖 4 TG-ABSA例子

TN-ABSA的分析物件是文字中出現的實體的情感正負向,如圖 5中,實體華為和XX的情感正負向分別為正面和負面。這種情況下沒有屬性的概念,只有實體。

圖 5 TN-ABSA例子

T-ABSA的分析物件是文字中出現的實體和屬性組合,如圖 6所示,評價物件是實體+屬性的組合,如華為+拍照和XX+價效比。

圖 6 TG-ABSA例子

在清楚了目標級情感分析的分類之後,每個類別又都可以包含為兩大類任務:第一個是評價物件的識別,第二個是情感識別。評價物件識別包括評價物件詞抽取和評價物件詞分類,情感識別包括評價詞抽取和評價正負面分類。具體例子如圖 7所示。之所以要識別出物件詞和評價詞,是為了能夠基於屬性正負面過濾的時候可以高亮相應的評價文字片段。

圖 7 評價物件和評價詞和類別識別例子

本文主要介紹詞級別情感分析、句子級情感分析和目標級情感分析中的T-ABSA的內容、方法和華為雲語音語義團隊在該領域實踐中的一些成果。這裡首先區分一些概念,本文所說的情感,包括emotion和sentiment兩種。嚴格意義上來說sentiment屬於emotion的一種,但是本文中不做區分。

3 詞級文字情感分析

3.1 任務介紹

詞級別的情感分析,即構建情感詞典(sentiment lexicon),旨在給詞賦予情感資訊。這裡首先要確定的是情感怎麼表示,常見的表示方法有離散表示法和多維度表示法。離散表示法如情感分析領域常用的{正面,負面,中性}的表示方法,或者如表

圖 8 離散情感模型

用離散表示法表示的情感詞典如:

  • 高興-正面,生日-正面,車禍-負面,災難-負面

多維度表示法也有多種,如Valence-Arousal-Dominance(VAD)模型,Evaluation-Potency-Activity(EPA)模型等。Valence和Evaluation表示好壞,arousal和activity表示人的喚起度,dominance和potency表示控制力。

圖 9 Valence-Arousal模型

用連續多維表示方法的情感詞典例子如:

  • VAD模型在[1,9]取值範圍下:車禍可表示為 (2.05, 6.26, 3.76)

3.2 常見的方法

構建情感詞典常見的方法如圖 10所示:

圖 10 常見情感詞典構建方法

人工標註優點是準確,缺點是成本太高。自動化方法中,都是先有人工標註一些種子詞,然後通過不同的方法把種子詞的標籤資訊擴充套件到其他詞。基於點互資訊的方法會基於大規模語料庫統計新詞和種子詞之間的統計資訊,然後基於該資訊對種子詞做加權求和得到資訊的情感標籤。基於標籤傳播的方法會先構建詞和種子詞的一個圖,圖上的邊是基於詞和詞之間的統計資訊獲得。然後用標籤傳播的演算法獲得新詞的情感資訊。基於迴歸的方法先構建詞的特徵向量表示,然後基於種子詞的標籤資訊訓練一個迴歸或分類模型,得到該模型後再對新詞做預測,獲得新詞的情感標籤資訊。

3.3 我們的進展

我們團隊基於已經標註的情感詞典,通過自動化的方法,構建了當前業界最大規模的多維度情感詞典。

圖 11 情感詞典構建流程

基於該方法,我們構建了業界最大規模的情感詞典庫,採用了Valence-Arousal的二維情感表示模型,情感值取值範圍為[-1,.1](-1表示不好(對應Valence維度)或無喚醒(對應Arousal維度),1表示好或高喚醒度), 詞典包含六百萬詞,例子如下:

圖 12 構建的情感詞典例子

4 句子文字情感分析

4.1 任務介紹

句子級和篇章級文字情感分析旨在整個句子或文章表達的情感傾向性,如下例子:

  • 買沒幾天就降價一點都不開心,快閃記憶體跑分就五百多點點 ---
  • 外觀漂亮音質不錯,現在電子產品基本上都是華為的了 ---
  • 汽車不錯,省油,價效比高 ---
  • 這個政策好啊,利國利民 ---

當前各友商推出的情感分析服務大部分都是這種整體文字的正負向預測。句子級情感分析服務在網際網路時代的電商評論、政策評價中有著廣泛的應用價值。句子級情感分析是一個典型的文字分類任務,我們團隊也採用了當前比較有效的預訓練模型+微調的方案,如下圖所示:

圖 13 句子級情感分析方案

4.2 我們的進展

當前我們已經上線了電商、汽車和社交領域的情感分析模型,主要支援中文語言,標籤是正面和負面,帶有標籤置信度。如下圖的例子所示,分別是手機、汽車和社交領域。

圖 14 EI體驗空間電商領域、汽車領域和社交領域例子

5 目標級文字情感分析

5.1 任務介紹

前面介紹的句子級或篇章級的情感分析只關注整個文字的正負面,沒有區分文字中具體的評價物件。所以就處理不了如下的例子:

該例子對汽車的各個屬性的評價正負面是不一樣的,如對動力和外觀來說是正面,對空間和油耗來說是負面,所以就不能簡單的分析整體文字的正負面。本節介紹的目標情感分析中的TG-ABSA任務,即固定實體下的給定屬性集合的評價正負面的預測。

5.2 我們的進展

傳統的屬性級情感分析可以採用每個屬性訓練一個情感分類模型。但是這種方法需要訓練多個分類模型,成本比較高。我們提出了基於單模型多屬性標籤輸出的方法,即一個模型同時輸出N個屬性的情感標籤。圖 15是當前在汽車領域結果,其中Attribute Hit Rate是屬性的命中率,即預測出的屬性佔評論中實際出現的比率。Hit Attribute Accuracy是命中的屬性標籤預測的準確率,即在所有命中的屬性中,標籤預測正確屬性的佔比。因為我們的模型可以輸出每個屬性標籤的置信度,所以可以基於置信度過濾來調節模型最終的輸出標籤,圖中是個曲線。圖 16是汽車領域屬性級情感分析的例子,可以同時預測出評論中出現的動力和外觀兩個屬性對應的正負面。該功能支援汽車領域的八個屬性的評價預測,包括:內飾、動力、外觀、價效比、操控、能耗、空間、舒適性。

圖 15 屬性級情感分析的效果

圖 16 汽車領域屬性情感分析例子

6 總結

本文介紹了情感分析的概念以及華為雲在情感分析方面的實踐和進展,部分服務已經可以在我們的“EI體驗空間”小程式體驗,歡迎大家體驗並提出寶貴的意見。情感分析服務可以用於商品評價智慧化分析、智慧評分等,歡迎大家試用。

點選關注,第一時間瞭解華為雲新