淺談如何做情感分析

隨著互聯網的普及,越來越多的用戶已經習慣在網絡上發表評論。這些評論表達了用戶的情感傾向,無論對於公司還是個人,這樣的信息都具備很高的價值。

淺談如何做情感分析

情感分析

然而,面對海量的用戶評論數據時,想要通過純人工的方式進行情感分析,幾乎是不可能完成的任務。所以,我們需要使用NLP的技術來處理這個任務。

情感分析:對包含主觀信息的文本進行情感色彩(褒貶)判斷,以確定該文本的觀點、喜好、情感傾向。

情感分析主要有3個要素,如下圖所示:


淺談如何做情感分析

情感分析3要素

  • 觀點持有者:指發表評論的用戶,如:大眾點評的用戶
  • 觀點/極性:正向和負向的評論,如:好吃、難看
  • 評價對象:一般包括實體和屬性,如:KFC的就餐環境

其中,很多情感分析也會把“時間”這個維度考慮進去,按照不同的時間段分別進行分析,這樣可以更客觀地評估用戶的情感傾向,比如:使用Twitter的情感分析預測股市行情。

目前情感分析主要有兩種方法:

  • 基於情感詞典,是指根據已構建的情感詞典,抽取待分析文本的情感詞,然後計算其情感傾向。
  • 基於機器學習的情感分析,是指選取情感詞作為特徵詞,將待分析文本向量化,利用分類器(LR、SVM等)進行分類。

本文我們重點講講基於情感詞典的情感分析,因為其方法相對更簡單一些,更容易上手,不需要掌握機器學習的相關知識,也不需要大量帶標註的訓練數據,而其效果取決於情感詞典的完善性。

情感詞典

情感詞典一般主要包括:情感詞和程度詞。用戶用情感詞表達自己的態度,比如:喜歡、討厭等;而用戶用程度詞表達強弱程度,比如:非常,一般等。

網上會有一些開源的中文情感詞典可以直接使用,但質量一般參差不齊。如果想要高質量的、有針對性的中文情感詞典,那麼就需要自己動手進行生成,自然就離不開中文分詞技術,這裡安利大家一本掘金小冊《深入理解NLP的中文分詞:從原理到實踐》(點擊瞭解更多,查看詳情),讓你可以從零開始掌握中文分詞技術。

假設我們已經有了一份中文情感詞典,大概如下所示(情感詞:數值):

  • 喜歡: 1
  • 愛:2
  • 缺點: -1
  • 失望: -2

其中,數值為正的情感詞表達的是正向的,反之表達的是負向的。不同的情感詞所傳遞的程度也是不同的,比如:喜歡就是淡淡的愛,愛就是深深的喜歡。

而程度詞典則如下所示(程度詞:數值):

  • 有一點:1
  • 非常:2
  • 極其:3

用戶會用形容詞來進一步傳遞自己的情感傾向,我們還可以引入一些符號來擴充程度詞,比如:感嘆號(!)。

現在,我們可以開始處理待分析的文本了,收集了一份關於旅店的用戶評價數據,羅列幾條如下:

  • 前臺樓層服務員不錯,房間安靜、整潔,唯一衛生間地漏設計不好,導致少量積水。
  • 位置不錯市中心,房間一如既往乾淨。
  • 半夜沒暖氣住 ! ! ! ! ! ! ! ! ! !

其中,像“不”和“沒”都是一些反轉詞,我們把這樣的詞設置成-1,可以改變原有的情感詞取值符號。

我們先對這些句子進行分詞,會得到如下的結果:

1. 前臺 樓層 服務員 很 不錯 房間 安靜 整潔 唯一 衛生間 地漏 設計 不好 導致 少量 積水
2. 位置 不錯 市中心 房間 一如既往 乾淨
3. 半夜 沒 暖氣 住 ! ! ! ! ! ! ! ! ! !

根據情感詞典匹配分詞結果裡面的詞,而數值計算可以分成正向和負向,我們拿其中一個為例:

1. 前臺 樓層 服務員 不錯 房間 安靜 整潔 唯一 衛生間 地漏 設計 不好 導致 少量 積水

正向匹配結果:
很: 1 # 程度詞
不錯: 1
安靜: 1
整潔: 1
正向數值結果: 1 + 1 + 1 + 1 = 4

負向匹配結果:
不好: -1
積水: -1
負向數值結果:|-1| + |-1| = 2

最後情感傾向結果:(4, 2),綜合數值為 4 - 2 = 2

以上就是基於情感詞典的情感分析的方法,不難發現中文分詞對最後的結果影響很大。有了這樣的情感分析方法,我們就可以自動化,批量地對用戶評論進行分析,快速得到用戶真實的反饋信息,並據此調整產品邏輯或個人購買意願。

關於基於機器學習的情感分析,簡單介紹一下:

  • 首先,需要人工標註好的情感分類數據,正向標註為1,負向標註為0,分成訓練數據和測試數據。
  • 然後,選取文本中的“特徵詞”,比如商品的描述詞(簡約,時尚)等等,將詞轉化成向量,形成詞的矩陣。
  • 最後,使用分類器模型(LR、SVM、NB)對訓練數據進行學習,得到模型後,用測試數據進行預測,選取效果最優的模型。

本文淺談了如何做情感分析,基本滿足了大家日常對情感分析的需求,如果想了解一些進階的方法,大家可以關注我的專欄,後面會再更新相關內容。大家如果對中文分詞感興趣,還請多多支持我的掘金小冊《深入理解NLP的中文分詞:從原理到實踐》(點擊瞭解更多,查看詳情),多謝多謝!


分享到:


相關文章: