汪紅松,李嘉展,曾碧卿
(華南師范大學 軟件學院,廣東 佛山 528225)
文本情感分析[1]也稱為觀點挖掘[2-3],是自然語言處理(Natural Language Processing,NLP)的重要內容之一,其主要任務是挖掘并分析人們對不同主題、屬性等的觀點和態度[2]。文本情感分析的主要流程如圖1 所示,其中數據預處理是情感抽取的準備工作,主要進行分詞、命名實體識別等。情感抽取模塊主要用于處理輸入的數據,提取輸入數據的特征表示。

Fig.1 Text sentiment analysis processing flow圖1 文本情感分析處理流程
在情感分析領域,狹義的情感分析通常定義為對外界事物的態度,如正面、負面、中立等。傳統上,情感分析一般分為3 個層次:句子級別、文檔級別、方面級別。早在2002 年,Pang 等[4]提出利用機器學習的方法,將文檔的情感傾向作為情感分類依據。隨著研究的深入,Wawre 等[5]利用多種監督方式,提出將句子表達的情感極性視為分類問題。近年來,受到深度學習的影響,方面級情感分析(Aspect-based Sentiment Analysis,ABSA)逐漸成為新的研究熱點,通過引入不同的場景任務來分析不同的情感元素[6]。
根據文本的層次粒度,情感分析可分為粗粒度情感分析和細粒度情感分析[7]。粗粒度情感分析主要側重于句子級與文檔級的情感分類,細粒度情感分析通常側重于對方面詞的情感極性進行判斷。隨著近些年研究的深入,粗粒度的情感分析缺乏捕獲實體與句子中相關方面情感極性的能力,無法滿足文本層次粒度更細的情感分類要求,因此細粒度文本情感分析受到更廣泛的關注[8]。
方面術語抽取(Aspect Extraction,AE)是ABSA 中的一項關鍵任務,旨在提取句子中存在的方面詞[9]。目前,方面術語抽取主要分為顯式方面術語抽取與隱式方面術語抽取。
顯式方面術語是指文本中能夠清晰指明的方面詞與目標情感詞,常結合統計學習的方法,如條件隨機場(Conditional Random Field,CRF)和隱馬爾可夫[10]等。Zschornack 等[11]利用注意力機制,提出基于Bi-LSTM 與CRF 的分類器,借助詞性標記作為輔助功能,在Bi-LSTM 編碼器作用下實現了顯式方面術語抽取。
隱式方面術語是指在文本中沒有明顯指出的方面詞與目標情感詞,如“袋子里裝滿了食物,無法再裝下水杯”,實體詞“袋子”存在一個隱式方面詞“容量”。由于隱式方面術語缺乏上下文線索信息,隱式方面術語抽取具有較大難度[12]。Liao 等[13]對隱式事實情感文本進行分類,提出一種結合卷積神經網絡和語義依賴樹的多層語義融合模型,該模型能夠學習詞語級、語句級別的語義信息,識別事實隱式情感文本特征。此外,由于缺乏足夠的標注數據,很難精準地抽取方面術語,Wang 等[14]首次提出自訓練學習方式來解決方面術語提取中標注數據不足的問題。
ABSA 屬于細粒度的情感分析任務,首先識別給定文本中的方面詞與目標情感詞,再預測方面詞的情感極性[15]。ABSA 主要對方面詞與相應目標情感詞的關系進行建模,針對不同的方面術語提取更精細的情感信息。例如“the battery life is also relatively excellent”,方面術語“battery life”的目標詞“excellent”表達正面情感。因此,ABSA側重于分析方面詞與目標情感詞的關系,以獲取更精細的情感極性。在早期的研究中,對于輸入句子存在多個方面詞的情況,常常采用多次輸入同樣數據的方法來分析方面詞的情感極性。隨著研究的深入,人們逐漸發現同一個句子中不同方面詞之間存在情感關聯,并通過引入上下文的觀念,逐步豐富關于ABSA 的研究。
為了進一步了解ABSA,本文以Web of science 為檢索文獻平臺,以 “方面級情感分析”“Aspect Based Sentiment Analysis”為主題詞,利用Web of science 官方數據工具對2010—2022 年以ABSA 為主題的文獻進行分析。同時,以主題詞為中心,通過VOSviewer 工具生成如圖2 所示的共現圖。總體上,早期ABSA 研究主要依賴于機器學習等方法,引入深度學習方法后,以深度神經網絡為基礎的模型成為主流的ABSA 研究方法。

Fig.2 Co-occurrence diagram of subject words圖2 主題詞共現圖
目前,ABSA 研究主要分為傳統方法和基于深度學習的方法。傳統方法主要包括機器學習、情感詞典等。由于機器學習在情感分析中屬于淺層學習,不涉及特征學習,基于深度學習的方法利用非線性網絡模型來獲得更符合任務需求的函數,從而實現對數據特征的自動學習。
目前,研究者可以使用公開數據集,也可以通過收集、篩選、過濾等步驟構建數據集。表1 列舉了目前ABSA 研究進行模型訓練常用的數據集。

Table 1 Introduction to common datasets表1 常用數據集簡介
情感分類任務模型通常采用混淆矩陣來評估其性能,評價指標包括準確率(Accuracy)、精確度(Precision)、召回率(Recall)以及F1 值等。評價指標由TP、FP、FN、TN 幾個元素組成,具體公式如表2 所示。其中,TP 表示分類器正確地將正類樣本預測為正類的樣本數量,FP 表示分類器錯誤地將負類樣本預測為正類的樣本數量,FN 表示分類器錯誤地將正類樣本預測為負類的樣本數量,TN 表示分類器正確地將負類樣本預測為負類的樣本數量。

Table 2 Evaluation indicators表2 評估指標
傳統的ABSA 任務主要通過基于規則的方法和基于統計的方法來完成[16]。基于規則的方法需要大量詞匯極性標注工作以及由語言學家制定的詞典規則,分類任務的準確率與詞匯標注結果和規則設定相關。基于統計的方法根據上下文中相似情感詞的共現頻率,將其歸為相同極性,因此一個詞的情感極性與上下文中其他詞的共現頻率相關。表3列出了傳統ABSA 分析方法的優缺點。
2.3.1 基于規則的方面級情感分析
基于規則的方法通常使用基礎詞典,通過擴充基礎情感詞典,挖掘目標詞之間的相互聯系。Zhang 等[17]根據方面詞之間的依賴關系確定句子的情感極性,通過聚合句子以預測整個文本情感;Tan 等[18]利用先驗情感詞典將財經新聞分為正面或者負面,并通過構建情感詞典確定財經新聞文章中每個句子的情感極性;Gao 等[19]通過構建情感詞庫和識別不同語言特征來獲得不同情感原因的組成比例,并提出基于規則的情感原因檢測方法,實驗結果證明了情感詞典有利于ABSA 分類任務。
2.3.2 基于統計的方面級情感分析
基于統計的方法不依賴于語言學家所制定的語言規則[20],通常從給定的單個語料庫中提取方面詞,但不同語料庫中方面詞分布特征的差異未得到充分利用。因此,Pu等[21]利用逐點互信息檢測名詞短語,并降低依存關系的負面影響,再根據句法依存規則對方面詞進行提取;Han等[22]提出一種基于特定領域情感詞典的分類方法,通過引入互信息來分配詞典中帶有詞性標簽的方面詞,并根據方面詞情感值從未標記的語料庫中選擇訓練數據,再由基于SentiWordNet 的情感分類器進行文本情感分析。
通過上述分析可以發現,傳統的方面級情感分析方法能適應不同領域的目標任務。此外,基于統計的方法不依賴于語言學家制定的規則,減少了人工干預[23]。基于語料庫的方法雖然簡單,但需要一個較大的數據集來檢測方面詞極性,才能對給定的文本進行情感分析,依舊無法高效地挖掘不同細粒度實體識別的情感信息。因此,為了更好地探索細粒度情感分析任務,學者們將研究方向轉向面向深度學習的情感分析模型。
深度學習展現了強大的特征提取和文本表達能力以及可擴展性,受到研究人員的高度關注。因此,在ABSA 任務中,基于深度學習的方法逐漸成為人們的研究熱點。基于深度學習的ABSA 分類方法利用神經網絡進行情感分類時,主要有3個任務[24],如圖3所示。

Fig.3 Aspect-based sentiment analysis tasks of deep learning圖3 深度學習的方面級情感分析任務
(1)文本表示。文本表示通常使用關鍵字集,在用向量表達文本時,特征提取算法基于預定義的關鍵字對文本中的目標詞權重進行計算,形成數字向量,即文本的特征向量[25]。
(2)目標表示。目標表示是ABSA 用于表達不同情感的重要任務之一,主要任務是生成與上下文交互的向量,通常使用詞嵌入方法得到目標的向量表示。
(3)情感分類。情感分類主要是為了識別特定目標詞的情感極性。例如句子“服務器的顯卡算力充足,但使用成本昂貴”中,目標詞“顯卡算力”對應的上下文情感詞是“充足”,情感極性為積極,而“價格”對應的上下文情感詞是“昂貴”,情感極性為消極。針對此類任務,通常通過引入注意力機制來解決。
基于深度學習的ABSA 任務關鍵在于文本表示和目標表示,盡管近年來該領域受到研究人員的廣泛關注,但目前還缺少適應多種場景任務的ABSA 框架。因此,利用深度學習方法完成ABSA 任務目前仍處于發展階段。
2.4.1 基于注意力機制的方面級情感分析
早期的研究方法依賴于人工設計或提取與目標相關的情感信息,但這些方法高度依賴于人工設計的特征向量[26]。為了明確目標實體與上下文中情感信息的關系,有學者提出從目標信息挖掘目標詞的情感極性[27],但這些方法只考慮目標信息而忽略了上下文信息。基于注意力機制的神經網絡模型能隱式地將目標與上下文信息聯系起來,因此在自然語言處理領域受到人們關注。
Wang 等[28]結合注意力機制和LSTM,提出ATAELSTM(Attention-based LSTM with Aspect Embedding)網絡模型,通過將方面詞與句子的隱藏特征表示相結合,提出基于方面詞的注意力權重以及將方面詞向量與輸入向量結合的方法;Chen 等[29]提出基于多注意機制的記憶神經網絡模型(Recurrent Attention Network on Memory,RAM),通過記憶存儲單元捕獲長距離文本中特定方面詞的情感極性;Ma 等[30]為了充分利用上下文的語義關系,協調目標與上下文詞之間的依賴關系,提出MGAN 模型(Multigrained Attention Network),加強了目標與上下文詞之間的相互聯系[31]。同時,有學者將傳統方法與注意機制相結合。Lu 等[32]提出基于規則的交互式注意力神經網絡模型(Interactive Rule Attention Network,IRAN),該模型通過語法規則編碼器,進一步提高了目標詞與上下文交互能力。
2.4.2 基于預訓練語言模型的方面級情感分析
在序列化語言模型中,例如RNN 雖能捕獲長距離依賴關系,但由于復合函數求導涉及鏈式法則,容易出現梯度消失問題。而對于CNN 模型,由于卷積核的存在,導致特征提取時存在局部最優問題。因此,2017 年谷歌提出Transformer 模型框架[33],通過模塊化結構引入矩陣運算,提高了模型的并行能力。針對RNN 和注意力機制在建模時存在并行化能力低、梯度消失的問題,Song 等[34]采用注意力機制的編碼器對目標詞及上下文進行建模,提出結合BERT 預訓練語言模型的注意力編碼網絡。
在ABSA 研究中,通常將預訓練語言模型用于處理輸入文本,并將其融入到更深層次的神經網絡中。Bai 等[35]在BERT 模型基礎上融合語義信息,提出了圖注意力網絡模 型(Relational Graph Attention Network BERT,RGATBERT),在語義標簽依賴信息的加持下,提升了ABSA 的分類性能;Zhang 等[36]為了將動態語義與ABSA 模型融合,提出動態加權的語言模型(Dynamic Re-weighting BERT,DRBERT),通過動態加權分配以更好地進行方面感知的情感理解。此外,有學者為了使ABSA 模型成為通用框架,將ABSA 建模為生成類任務。Yan 等[37]將每個ABSA 子任務目標重新定義為指針索引和情感類別索引混合的序列,并使用統一的生成公式,結合預訓練語言模型BART 來完成所有端到端框架中的ABSA 任務。
2.4.3 基于圖神經網絡的方面級情感分析
雖然上述方法被廣泛應用于ABSA,但這些模型缺乏解釋相關句法約束和長距離詞依賴性的機制,仍難以挖掘細粒度實體在文本中的句法依賴信息。為解決上述問題,Zhang 等[38]結合依存關系樹的圖卷積神經網絡,利用句法信息與目標詞的依賴關系挖掘文本的依存信息,證明了句法信息對長距離文本分類的重要性。由于語言的復雜性,當句子中存在多個方面詞時,會導致目標詞與上下文信息不匹配。針對這種情況,Li等[39]提出雙通道圖卷積神經網絡模型(Dual Graph Convolutional Networks,DualGCN),其中包含一個具有自注意機制的情感模塊,利用句法結構和語義相關性減少依賴解析的錯誤。
當前大部分基于圖神經網絡的情感分類方法主要集中在學習句子依存樹的上下文詞與目標詞的依存信息,缺乏利用特定目標詞的上下文情感知識。因此,Liang 等[40]提出基于依存關系樹和情感知識的圖卷積神經網絡模型Sentic GCN,該模型利用上下文詞與目標詞之間的依賴關系和情感信息,通過聚合SenticNet 中的情感知識學習上下文詞語和特定方面的情感依賴關系,增強方面詞與上下文的語義相關性。此外,對于特定方面詞的分析,Chen 等[41]提出面向方面詞的離散意見生成樹模型(Discrete Opinion Tree GCN,DotGCN),該方法將方面詞與上下文之間的注意力分數作為句法距離得到新的生成樹。
同時,由于依存句法樹多數通過句法分析器生成,而句法分析器的編碼模式引入了噪聲。為了緩解噪聲問題,Tian 等[42]設計了類別感知網絡,利用注意力機制區分不同的邊緣關系,增加了方面詞相關的上下文權重。類似的,Liang 等[43]首次提出結合句子成分信息與依賴信息,構造雙語法感知注意力網絡(Bi-Syntax aware Graph Attention Network,BiSyn-GAT),針對上下文內部與上下文之間的關系進行建模,進而提高對語法信息的有效利用率,降低無關噪聲的干擾,增強方面詞與上下文之間的情感交互。
2.4.4 基于目標的方面級情感分析
目標—方面級情感分析(Target Aspect-Based Sentiment Analysis,TABSA)是ABSA 領域的另一個研究熱點。TABSA 的主要任務是識別目標和方面的細粒度信息,例如在句子“location1 is your best bet for secure although expensive and location2 is too far”中有“location1”和“location2”兩個不同的目標詞,目標詞“location1”有“safety”和“price”兩個不同的方面詞,而目標詞“location2”只有“price”一個方面詞。
Saeidi 等[44]提出一個用于TABSA 的基準數據集Senti-Hood,該數據集被標注為城市社區領域,在邏輯回歸函數和LSTM 模型的訓練下,提供一個更加強大的基線。對于TABSA,以往的方法是將方面詞權重初始化為同一個值,再計算平均向量,但這種方式將不同方面詞與目標之間的情感關系過度簡單化。因此,Ma 等[45]提出分層注意力模型Sentic LSTM,通過引入外部知識來擴展LSTM 單元,解決了分層注意力機制在推斷給定目標詞和相關情感詞時關系不明確的問題。為了從預定義的方面詞集合中提取細粒度的意見極性,Liu 等[46]提出利用外部“記憶鏈”,結合延遲內存更新機制的網絡架構,在TABSA 基線任務上取得了實質性改進。
針對方面詞在不同上下文中具有相同向量表示而丟失了上下文相關信息的現象,Liang 等[47]在輸入層嵌入預訓練語言模型向量,并提出新的模型架構,利用稀疏系數向量從上下文中調整目標詞和方面詞的嵌入,而不是使用上下文無關或隨機初始化的向量,并且在優化方面詞表示過程中,讓其盡量遠離無關的目標詞。
2.4.5 基于外部情感知識的方面級情感
雖然神經網絡在ABSA 中具有優異的表現,但神經網絡模型性能與數據集大小有密切聯系,若缺乏數據會導致神經網絡模型發揮不出應有的性能。但現有的用于ABSA的公共數據集都相對較小,為了解決數據集與神經網絡不匹配的問題,學者們提出了基于外部情感知識的方法[48]。
基于外部情感知識的方法能夠減少模型對數據的依賴,并且結構化知識和情感知識能夠提高模型性能。在結構知識方面,Nguyen 等[49]提出將句子結構信息融入注意力機制的網絡模型ALAN,結合LSTM 神經網絡,取得了較好的分類效果;Wang 等[50]認為詞與從句之間的情感信息同樣需要得到重視,因此在句子層面采用語義分割方法將句子分割成若干個子句,進一步證明了上下文語義信息對于方面詞的重要性。
2.4.6 基于深度學習的方面級情感分析方法對比
為了更清晰地對比上述方法,表4 列舉了部分基于深度學習的ABSA 實驗效果,表中粗體字表示同類型方法中較優的結果。在處理ABSA 任務時,通常會利用不同模型的優勢以及避免模型缺陷來達到較優的結果,因此可以預測未來針對ABSA 的任務會更加專注于結合不同方法,并且通過對預訓練模型的微調,實現更好的情感分析效果。

Table 4 Aspect-based sentiment analysis methods based on deep learning表4 基于深度學習的方面級情感分析方法
基于注意力機制的方法在計算時,考慮了目標詞與上下文信息。基于預訓練語言模型的方法提供了更好的模型初始化參數,將注意力機制與預訓練語言模型相結合,使得目標任務具備更好的泛化性。基于圖神經網絡的方法能處理非連續的目標詞,解決非歐式空間問題,借助語法解析樹獲得語義相關性更強的目標詞。基于外部情感知識的方法常結合語料庫來提升模型的情感分析能力。基于目標的方法需根據給定的目標詞,形成目標詞和方面詞的組合,推斷出文本的情感極性。
同時,從表中可以看出,綜合運用不同模型,并取其利、去其弊,能達到較優的效果,這也說明了當前方面級情感分析研究方法的趨勢,即結合不同方法,運用大規模預訓練模型并進行參數微調,以期得到更好的實驗效果。上述方法的具體比較如表5所示。

Table 5 Comparison of aspect-based sentiment analysis methods based on deep learning表5 基于深度學習的方面級情感分析方法比較
國內外學者針對不同的ABSA 任務已提出了各種各樣的模型框架,并取得豐碩的研究成果,模型的精度、數據處理能力都在不斷提升。目前,ABSA 尚處于發展階段,仍存在許多值得研究的問題。
目前大部分ABSA 的研究對象是顯式的目標情感詞,而對于隱式ABSA 的研究還處在初步發展階段。例如反諷、隱喻等特殊形式的文本,通常隱含與字面相反的意思,以夸張、比喻等手法對人或者事物進行揭露[51]。隱式情感的表達方式在生活中廣泛存在,如“手機只是你生活的一部分,而你確是它的全部,請放下身邊雜事,多陪陪手機”,該句子的真實情感是諷刺人們過度使用手機。但隱式情感分析的復雜性和不確定性使隱式情感分析成為一項具有挑戰性的任務。隱式情感分析的主要任務是從文本中挖掘出蘊含的情感信息,現有的主要方法是基于特征和規則以及基于上下文的方法。
Lou 等[52]利用外部情感常識檢索情感信息和句子的句法信息,為每個句子構建情感圖和依賴圖,通過交互式建模情感信息和依賴信息,推斷出句子的隱含情感;Mao等[53]提出無需任何預處理即可在單詞級別識別和解釋隱喻情感的方法,并在機器翻譯任務中,能夠識別隱喻詞并將其替換成常見的同義詞;Javdan 等[54]在ABSA 任務基礎上,利用BERT 模型提取上下文對話序列和對話回復之間的情感關系,并確定提取的方面詞是否具有諷刺意義。
文本生成不僅僅關注文本傳遞的信息(摘要、問答),傳遞文本的方式也同樣值得關注。對于ABSA 而言,情感文本生成是生成以方面詞為中心的文本,如具有特定情感(興奮、生氣、傷心等)的文本。Wang 等[55]采用無監督學習的方式,在文本生成器中建立一個基于懲罰的目標,通過訓練多個生成器和多分類器生成具有特定情感標簽的文本;Du 等[56]提出在情感文本生成的每一步中采用自回歸高斯分布對回復語義進行建模,增強了以實體詞為中心的情感表達,降低了傳統情感對話過程中無意義回復的頻率。因此,目前在情感文本生成領域,研究熱點逐漸轉向以方面詞為中心的情感表達,豐富以實體詞為中心的情感文本信息。
社交媒體上并不僅有文本能夠表達人們的情感,圖片、音頻、視頻等同樣能夠表達人們的情感。因此,通過設計用于提取視覺特征語義的新方法對多模態數據進行統一分析已成為一個重要的研究領域。進行多模態情感分析時,需要對帶有情感色彩的圖文、視頻等多媒體信息的主題或某些方面進行分析、處理、歸納和推理。Liang 等[57]將多模態情感分析與諷刺識別相結合,從模態內情感依賴關系和模態間情感依賴關系兩方面出發,對輸入樣本進行聯合學習,推斷多模態數據的諷刺識別結果;Ju 等[58]結合多模態方面術語提取和多模態情感法分類,提出帶有輔助的跨模態關系檢測聯合學習方法,利用輔助文本圖像控制視覺信息的應用,并根據聯合提取的方面信息獲取方面級別的情感分類。
總而言之,ABSA 的研究熱點和未來面臨的問題與挑戰還不止于此。對于文本而言,不僅需要考慮最終的情感極性,而且需要考慮用戶生成的文本是否符合語法規則,以及如何處理表情符號等問題。此外,尋找一個合適的統一框架來完成各種ABSA 任務也是目前的發展趨勢之一。
隨著信息技術的快速發展,社交平臺數量的急劇上漲,以用戶為中心的言論信息量也呈爆發式增長。言論信息可用于情緒化分析,已廣泛應用于電子商務、心理治療、輿情監控等領域,具有較高的商業價值與社會價值。在情感分析領域,對于ABSA 的研究是一個重要的子任務。本文簡要介紹了情感分析的常用方法,主要闡述ABSA 近年來常用的分類技術和研究熱點,并簡要分析ABSA 未來的發展趨勢。
目前,深度學習具有自動提取特征、較強的非線性數據處理能力以及能顯著降低人工標注成本等優勢,在情感分析研究中得到了廣泛應用,但是深度學習所帶來的紅利也漸進尾聲,單純的模型復用和模型疊加并不能很好地提高分類效果。隨著研究的深入,基于淺層的情感分類任務逐漸陷入瓶頸。文本情感分析的研究任務逐漸向情感理解、情感生成、情感交互方面不斷深入,研究范圍已從單模態數據逐漸拓展到多模態數據。因此,ABSA 的研究還在不斷發展中,對于復雜語法、諷刺識別、跨領域多模態等情感分析任務的研究正方興未艾。