ACL 2018

論文《Aspect Based Sentiment Analysis with Gated Convolutional Networks》學習筆記論文原文給出了代碼,調通後結果不理想,需要後續調參

Aspect Based Sentiment Analysis

背景介紹

1 任務說明

文本情感分析是自然語言處理中非常經典的一類任務。

這類任務按照分析的文本對象的不同粒度,可以分為篇章級情感分析、句子級情感分析、方面級情感分析三類。篇章級情感分析在考慮整篇文檔的信息的前提下,給出其情感傾向和強度;句子級情感分析旨在對每個具體的句子做出情感判別;方面級情感分析在三者中粒度最細,其目的是分析出文本中涉及到的每一個方面上的情感傾向性。

本文第一部分將對方面級情感分析做一個簡單的背景介紹,第二部分將介紹發表於ACL 2018的論文《Aspect Based Sentiment Analysis with Gated Convolutional Networks》,這篇論文將CNN與門控機制相結合,並把新模型用在了方面級情感分析任務中,取得了不錯的效果。

方面級情感分析的研究,從一開始就與商品的評論分析密不可分。Peter D. Turney [1]將語義傾向性應用在非監督的評論分類上。他利用點互信息設計了一個簡單的演算法,該演算法的目的就是將評論分為兩類,推薦和不推薦。一段評論的情感將由包含在該評論中的形容詞和副詞的語義傾向性決定。也就是說,如果一段評論的平均語義傾向性為正,則可以把評論劃分為推薦一類,反之不推薦。

Bo Pang等[2]採用電影評論作為實驗語料,使用了樸素貝葉斯、最大熵模型和SVM三種機器學習方法,實驗結果不理想,反映了評論分類在當時面臨一些困難。

Hu M等[3]將評論分析任務分為三個步驟,先抽取商品的各個特徵,然後判斷評論關於商品某個特徵的語義傾向性,最後匯總分析結果。這與現在方面級情感分析的過程已經比較相似。

方面級情感分析任務可以拆分為兩個子任務,分別是方面抽取和方面級情感分析。方面抽取要求抽取出評論涉及的方面;方面級情感分析要求,在評論的方面已知的前提下,分析評論關於其方面的情感傾向。

什麼是「方面」?給出圖1中的評論,分析可知,有「food」和「place」兩個方面實體。對於「food」,其情感是正向的,對於「place」,其情感是負向的。因此,「方面」可以理解為評論中出現的一些實體,這些實體是情感寄託的對象。一條評論中可以有多個實體,不同實體的情感傾向性可能是不同的,同一實體的情感傾向性也可能是不同的。

同時,還需考慮這樣一種情況:方面詞沒有出現在評論中。仍以圖1為例,給出「atmosphere」這一方面,由評論可知,餐館的氛圍不是很令人放鬆,因此該方面的情感是負向的。儘管句子中沒有出現「atmosphere」這一詞,但是我們仍然能夠判斷評論的第二個子句涉及到了這一方面,並且相應的情感傾向性為負。

圖1 一條關於餐館的評論

綜上所述,方面級情感分析任務包含方面抽取和方面情感分析兩個子任務。按照方面的不同類別,方面抽取可以分為方面實體的抽取和方面類別的檢測;同理,方面情感分析可以分為方面實體的情感分析(Aspect-term Sentiment analysis,ATSA)和方面類別的情感分析(Aspect-category Sentiment analysis,ACSA)。在兩個子任務中,前者給出的方面實體出現在評論中,後者給出的方面類別一般不會出現在評論中。

2 語料說明

方面級情感分析由於其粒度細,所以對語料的標註有較高的要求,現有的語料不多,規模一般較小。現有的關於方面情感的研究,一般都會用到SemEval任務給出的語料,故在此對其進行簡要說明。

SemEval-2014 Task 4含有四個子任務,分別是方面實體抽取、方面實體情感分析、方面類別檢測、方面類別情感分析。該任務公布了兩個語料集,分別是餐館評論語料集和平板電腦評論語料集。

餐館評論語料集中的一條評論如圖2。觀察可以發現,該語料集同時給出了方面實體和方面類別,可以用於全部的四個子任務。另外需要說明,該語料集約有3000條評論,給定了「food」、「service」、「price」等五個方面類別,情感極性有「positive」,「negative」,「conflict」,「neutral」四個。其中「conflict」表示對同一方面既有正向評價又有負向評價。平板電腦語料集沒有給出方面類別,故只能做方面實體的兩個相關子任務,這裡不再展開說明。

圖2 餐館評論語料集的一條評論

SemEval-2015 Task 12和SemEval-2016 Task 5同樣都是方面級情感分析任務。兩個任務除了對2014任務的兩個語料做修正和擴充外,還對任務進行了細化和擴充,但是仍然保留了最基本的四個子任務。細節不再展開說明。

3 調研

對2018年自然語言處理及相關領域的頂級會議調研後發現,方面級情感分析仍是比較常見的研究。閱讀ACL、IJCAI、AAAI、EMNLP、COLING會議中方面級情感分析相關論文的摘要後,姑且可對研究方向做如下總結,希望能夠拋磚引玉。

  1. 方面抽取的研究。一些論文採用了遷移和對抗的方法來解決語料規模小的問題。
  2. 方面情感分析的研究。神經網路已經是非常經典和基礎的方法,LSTM、Attention、Memory Network被廣泛使用。無監督和弱監督的方法偶有出現。常識在該任務中亦初顯身手。
  3. 評論摘要抽取的研究。

論文介紹

Abstract

作者針對ABSA任務,提出了一種基於CNN和門控機制的模型

第一,新的Gated Tanh-ReLU單元可以通過給定的aspect選擇性地輸出情感特徵。其結構要比attention更簡單。

第二,作者的模型可以並行訓練,速度要更快。

1 Introduction

方面情感分析包含兩類任務,一是方面實體的情感分析(ATSA),二是方面類別的情感分析(ACSA)。在方面情感分析中,LSTM+Attention是現在比較常用的模型,但是這個模型複雜且耗時,並且有一定的不足。

第一,這個模型會將方面目標詞的上下文同時編碼,而這些上下文往往是同時含有方面信息和情感信息的,在使用Attention對這些上下文單詞打分時,就會忽略這兩類信息的不同。我們期望的結果是,與當前方面密切相關的情感詞獲得一個高的權重,而信息的混淆就使得模型的性能變差。

第二,LSTM和Attention都是耗時的。LSTM每個時間步處理一個token,Attention需要對所有的token進行指數計算和歸一化操作,而這些計算並行性較差。

因此,作者提出了基於CNN和門控機制的新模型以改善上述不足。

第一,新型的Tanh-ReLU門控單元可以根據給定的不同方面,有選擇地輸出情感特徵。

第二,由於CNN的卷積層沒有時間依賴,並且門控單元也是互相獨立工作的,所以新模型在訓練時可以並行計算。

2 Gated Convolutional Network with Aspect Embedding

作者結合CNN與門控機制,提出了GCAE。

我們現在有一個句子X,X含有L個單詞,通過embedding層,可將每個單詞轉換為D維的詞向量,此時,句子X表示為D*L維的矩陣。

用D*k(k<L)維的filter在句子矩陣上單向平移進行掃描,k表示filter每次掃描所包含的單詞的個數。每次掃描,我們可以得到一個卷積結果ci,因此最後掃描完整個句子後,可以得到向量C,C的長度記為Lk,是L和k的函數,與進行卷積的方式有關。

對每個size為k的filter,我們可以設置nk個,因此句子掃描結束後,實際可以得到一個nk*Lk維的矩陣Cs,對該矩陣進行maxPooling,即取每行的最大值,最後通過CNN,我們得到了一個nk維的向量來對最初的句子進行表示。

GCAE在上述CNN的卷積步驟進行了改進。

傳統的CNN中,ci只由一個filter產生,GCAE中,ci由兩個同size的filter產生,也就是說,有兩個filter在同時掃描句子,這兩個filter就是兩個門單元。兩個filter輸入不同,激活函數不同,分別對方面和情感兩類信息進行了編碼,得到了兩個向量ai、si,兩個向量元素對應乘的結果,即為GCAE的ci。用於ACSA任務的GCAE的模型如圖3。由計算式可知,在計算si和ai時,分別採用了tanh和relu作為激活函數,並且計算ai時,輸入加入了方面詞的向量va。ai可視為情感詞的權重。經過訓練,通過relu函數後,模型會給與方面詞較密切的情感詞一個較高的權重ai,反之,若關係較遠,則權重可能很小或者為0。

圖3 ACSA任務的GCAE

ATSA任務的GCAE如圖4。在ACSA任務中,給定的方面一般都是一個單詞,因此可以直接使用單詞的詞向量。ATSA任務中,一個實體可能由多個單片語成,因此作者額外添加了一個CNN用於方面詞特徵的提取。

圖4 ATSA任務的GCAE

舉例說明該模型的工作過程,給出評論如圖5。如果有方面「food」,那麼模型會給情感詞「good」一個高分,而給情感詞「terrible」一個低分甚至0分,那麼在分類時,「good」所起到的作用要更明顯。

圖5 一條評論

3 Experiment

作者對ACSA和ATSA任務分別進行了實驗。說明如下。

3.1 Dataset

作者在實驗中使用了SemEval 2014-2016餐館評論語料以及SemEval 2014平板電腦評論語料。

作者將SemEval 2014-2016的餐館評論語料進行了合併與整理,得到了Restaurant-Large語料。同時,作者還將餐館評論語料和平板電腦評論語料中包含不同情感傾向的句子單獨提取出來,組合成各自領域的「Hard」語料。這一步驟是非常必要的,因為方面級情感分析與一般情感分析最大的不同,就是細粒度上的不同傾向的情感。對於一條評論,如果它只含有一種情感傾向,那麼即使模型預測全部正確,我們也無法得知該模型和一般的情感分析模型相比,是否對細粒度上的不同情感更敏感,性能更好。

綜上所述,作者使用的語料如圖6、圖7。Restaurant與Restaurant-2014其實是同一語料,由於作者統計方式等問題,在統計數據上產生了不同,可以認為是兩個語料。因此,作者使用了8個語料集。

圖6 用於ACSA任務的語料
圖7 用於ATSA任務的語料

3.2 Compared Methods

作者將GCAE與SVM、結合了大量特徵的SVM、CNN、TD-LSTM、ATAE-LSTM等模型進行了比較。

  1. 結果分析-ACSA
圖8 ACSA實驗結果

有一點值得關注,GCAE在Hard數據上的提升相比其他的方法,都比較明顯,說明模型在細粒度的情感分析上進步較大。

2. 結果分析-ATSA

圖9 ATSA實驗結果

同樣,GCAE與其他端到端模型相比,有著最好的性能。

3.3 Training Time

由於GCAE採用的CNN和門機制都可以並行計算,所以GCAE要比LSTM+Attention系列模型有著更短的訓練時間。

3.4 Gating Mechanisms

作者比較了本文中使用的GTRU與GLU、GTU,實驗的結果是,GTRU效果最好。作者也對門機制提出了很好的理解。使用了GTRU的CNN相當於有了兩重的過濾機制,第一重是GTRU,可以增強我們需要的情感因素,第二重是maxPooling層,它直接濾除了所有雜訊。GTRU在maxPooling之前進行預濾波,增強了maxPooling的容錯性。

3.5 Visualization

作者單獨設計實驗,給出了模型分析完一個句子後,得到的權重圖。如圖10。至此,我們或許可以說,GTRU,甚至門機制,都是類似Attention的,或者說,GTRU就是Attention機制的一種具體實現。

圖10 各單詞權重分析

Conclusions

本文簡要介紹了方面級情感分析的背景知識,並結合一篇論文,介紹了使用門機制的CNN在方面級情感分析中的使用。GCAE不僅效果好,計算速度也超越了傳統的LSTM+Attention模型。

參考文獻:

[1]Turney P. Thumbs Up or Thumbs Down? Semantic Orientation Applied to Unsupervised Classification of Reviews[J]. Proceedings of Annual Meeting of the Association for Computational Linguistics, 2002:417--424.

[2]Bo Pang, Lillian Lee, Shivakumar Vaithyanathan. Thumbs up? Sentiment classification using machine learning techniques[C]. Proceedings of 7th Conference on Empirical Methods in Natural Language Processing, pp. 79-86. Philadelphia, US(2002).

[3] Hu M, Liu B. Mining and summarizing customer reviews[C]. Proceedings of the Tenth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, Seattle, Washington, USA, August 22-25, 2004. ACM, 2004.

推薦閱讀:

相关文章