?

基于上下文方面記憶網絡的方面級情感分析

2024-02-22 07:44王亞新
計算機工程與設計 2024年2期
關鍵詞:注意力記憶機制

王亞新,王 亮+,王 軍

(1.沈陽化工大學 計算機科學與技術學院,遼寧 沈陽 110142;2.沈陽化工大學 遼寧省化工過程工業智能化技術重點實驗室,遼寧 沈陽 110142)

0 引 言

根據研究粒度的不同,文本情感分析分為文檔級、句子級和方面級[1,2]。傳統的文本情感分析主要是文檔級和句子級等粗粒度情感分析,無法對含有多個屬性的文本進行分析。方面級情感分析(aspect-based sentiment analysis,ABSA)[3]與傳統文本情感分析相比可以表達出更細粒度的情感。

近年來,基于深度學習的方面級情感分析的研究取得較好表現[4]。深度學習算法與傳統機器學習算法相比,具有自動提取文本特征的優勢。對于方面級情感分析任務,提出許多基于神經網絡的情感分析模型獲得密集和低維的詞嵌入,并進一步生成更好的句子表示。

基于神經網絡的情感分析模型主要包含循環神經網絡(recurrent neural network,RNN)、長短期記憶網絡LSTM(long short-term memory,LSTM)、雙向長短期記憶網絡(bi-directional long short-term memory,BiLSTM)等[5]。

RNN可以捕獲具有序列特性數據中的時序信息和語義信息。LSTM為RNN改進版本,更好捕捉到較長距離的依賴關系,用于提取評論數據的上下文信息。雖然LSTM解決了RNN中存在的長期依賴問題,但對句子中每個上下文詞都進行相同處理,無法對從后到前的信息進行編碼操作,然而通過BiLSTM可以捕捉雙向語義依賴。注意力機制可以為神經網絡提供關注與給定方面相關的重要內容的能力。

隨著深度記憶網絡在方面級情感分析中的應用,與神經網絡相比結構更簡單、計算速度更快,在推斷某個方面的情感極性時可以明確捕獲每個上下文詞的重要性。

現有方面級情感分析研究中還存在尚未解決的問題:一是大型混合神經網絡模型進行預訓練,訓練時間長,并且基于深度記憶網絡的方面級情感分析研究中大多沒有重視上下文和方面之間的位置信息對方面級情感分析產生的影響;二是上下文信息利用不充分,難以解決句子中上下文的長期依賴問題以及大多數研究忽視了句子中每個詞對方面的情感表達產生的不同影響;三是上下文相關性以及上下文和方面之間的相關性在記憶網絡中沒有被充分研究。

為了解決上述不足,本文提出基于上下文方面記憶網絡的方面級情感分析方法。本文的主要貢獻如下:

(1)針對現有基于深度記憶網絡與方面級情感分析方法大多沒有重視上下文和方面之間的位置信息對方面級情感分析的影響這一問題,本文提出在深度記憶網絡中的上下文記憶建模中加入了位置相關層,提高上下文和方面之間位置信息的利用率。并在經過位置相關層輸出后進入BiLSTM網絡進行雙向訓練,充分利用上下文信息解決上下文長期依賴問題。

(2)針對每個句子中對于方面相關的詞語對方面的情感表達具有不同影響這一問題,使方面詞的情感更易于被其相近的詞來表達,本文在深度記憶網絡中提出了方面記憶更新模塊,將評論文本中的方面詞單獨在方面記憶更新模塊中進行編碼和更新,達到充分利用方面信息的目的。

(3)針對上下文與方面之間的相關性在深度記憶網絡中沒有被充分利用這一問題,本文提出了在多計算層中的多頭注意力機制輸入采用兩種策略,分別為Self-Attention和Encoder-Decoder Attention,一種優化上下文相關性的計算能力,另一種優化上下文和方面詞相關性的計算能力。

1 相關工作

1.1 方面級情感分析

基于方面級別的情感分析(ABSA)是情感分析領域中不可或缺的任務[5]。傳統的情感分類方法主要基于大容量語料庫和人工特征標注的情感分類方法。如詞袋、情感詞典、支持向量機(support vector machine,SVM)[6]、最大熵[7]和模糊推理[8]等。然而,這些方法產生的結果高度依賴于特征質量。

隨著深度學習的發展,神經網絡應用于ABSA任務中并取得不錯效果。Chen等[9]基于方面詞及其方面在同一子句中的假設,提出使用CNN和LSTM識別方面級情感。Ma等[10]提出一種將情感相關概念的常識信息與LSTM結合的方法,解決基于方面級情感分析和目標情感分析中存在的問題。Zhang等[11]提出了兩個門控神經網絡進行方面級情感分析,一個用于對語法和語義信息進行建模,另一個用于對給定目標與其周圍上下文之間的交互進行建模。

隨著注意力機制在機器翻譯中的成功,其在ABSA任務中的應用越來越受到關注。Fan等[12]提出一種融合注意力機制的卷積網絡,可以同時獲得句子中單詞和多詞表達。Wang等[13]提出一種基于注意力機制的 LSTM 模型,該模型根據不同方面關注句子不同部分。Ma等[14]提出了交互式注意力網絡(IAN)來分別生成目標和上下文的表示。Wang等[15]設計了一個分層特定方面的注意力模型,側重于與特定方面相對應的信息詞和句子。

基于深度學習的方法降低了ABSA任務對人工構造特征和情感詞典的依賴,再利用注意力機制調整特征的權重提高情感分析效果。

1.2 深度記憶網絡

記憶網絡(Memory Networks)最初在問答領域中提出,使用記憶組件保存上下文信息并實現長期記憶的功能。

Tang等[16]提出了一種面向方面級情感分類的深度記憶網絡(deep memory network,DMN),通過上下文信息構建記憶,采用注意力捕獲對于判斷不同方面情感極性較重要的信息。實驗結果表明深度記憶網絡優于基于注意力的LSTM體系結構并證明了多計算層可以提升模型性能。Lin等[17]提出基于深度記憶網絡的DMMN-SDCM模型,該模型整合語義分析信息至記憶網絡中,指導注意力機制有效學習其它方面提供的信息。Lin等[18]提出了一個深度選擇性記憶網絡模型(deep selective memory network,DSMN),實現動態選擇上下文記憶更好地引導多頭注意力機制,將方面間信息與深度記憶網絡相結合。

2 基于雙注意力機制與深度記憶網絡的方面級情感分析模型

針對相關工作中大多沒有重視上下文和方面之間的位置信息對方面級情感分析的影響以及上下文相關性以及上下文和方面之間的相關性在記憶網絡中沒有被充分利用等不足,本文提出了一種基于雙注意力機制與深度記憶網絡的方面級情感分析方法?;谏舷挛姆矫嬗洃浘W絡模型結構如圖1所示。

基于雙注意力機制的深度記憶網絡模型主要由3個模塊組成,分別為上下文記憶網絡構建模塊、方面記憶網絡更新模塊和輸出層模塊。

上下文記憶網絡構建模塊包括輸入層、詞嵌入層、位置相關層以及BiLSTM層。在上下文記憶建模中加入位置相關層,提高上下文和方面之間位置信息的利用率。并在經過位置相關層輸出后進入BiLSTM網絡進行雙向訓練,充分利用上下文信息解決上下文長期依賴問題,詳細介紹如2.1節所示。

方面記憶網絡更新模塊包括方面詞嵌入層以及多跳(計算)層,并且每個計算層中包含多頭注意力機制。其中多頭注意力的輸入采用雙注意力機制:一種是Self-Attention來計算上下文相關性;另一種是使用Encoder-Decoder Attention來計算上下文和方面詞的相關性。在方面記憶網絡更新模塊中,將文本中的方面詞單獨在方面記憶更新模塊中進行編碼和更新,達到方面信息充分利用的目的,詳細介紹如2.2節所示。

最后經上下文記憶網絡構建模塊和方面記憶更新模塊得到的輸出向量,經過線性層,再反饋給Softmax函數計算概率分布,并取最大概率作為句子預測的情感類別。

2.1 上下文記憶網絡構建

2.1.1 詞嵌入層

基于上下文的方面記憶網絡模型的輸入為含有評論數據的文本,例如產品評論、微博評論等。如圖1所示,假設評論文本句子為ssentence={s1,s2,…,si,…,sn} 其中si表示句子中的第i個詞,n表示句子長度。句子中方面表示為aaspect={st,…,st+k-1}, 其中aaspect表示句子ssentence的一個子集,t表示方面中第一個詞的位置,k表示方面的長度即包含的單詞數量。

對含有評論數據的句子文本和方面進行分詞、去停用詞等數據預處理,處理后的句子文本通過GloVe模型[20]進行預訓練,映射生成詞嵌入矩陣Eembedding∈Rde×|V|, 其中de表示詞嵌入的維度,|V| 表示單詞個數。

在詞嵌入層中從Eembedding中提取輸入句子ssentence的詞嵌入向量,得到詞嵌入矩陣Esentence={e1,e2,…,ei,…,en}, 句子中包含的方面也用詞嵌入向量表示。如果方面a由一個單詞st組成,則方面詞嵌入矩陣Easpect由向量et表示。如果方面詞aaspect由k個詞組成即aaspect={st,…,st+k-1}, 則方面詞嵌入矩陣Easpect是由從et到et+k-1的k個詞嵌入的平均值的結果表示。

例如,在“appearance and screen clarity are great,but battery is not durable.”這句話中,方面為“appearance”、“screen clarity”、“battery”,對于“appearance”、“battery”的詞嵌入是方面嵌入,而對于方面“screen clarity”則使用“appearance”、“battery”詞嵌入的平均值作為方面嵌入。

2.1.2 位置相關層

針對現有深度記憶網絡研究大多沒有重視上下文和方面之間的位置信息對方面級情感分析的影響這一不足,提出在上下文記憶建模中加入位置相關層,提高上下文和方面之間位置信息的利用率。文本數據經過詞嵌入層轉換為的詞嵌入矩陣作為位置相關層的輸入。

一個句子中的每個詞都對方面的情感表達有不同的影響,因此對每個方面的記憶信息進行編碼,使方面詞的情感盡可能用與其相近的詞來表達。例如,“great”和“appearance”之間的距離比“not durable”和“appearance”之間的距離短。

為了使方面向量更好地發揮作用,需要計算句子中每個上下文詞和方面詞之間的距離,用于計算每個上下文詞的權重,這使得與該方面詞相近的上下文詞對該方面的情感極性有較大的影響

(1)

方面詞與句子中第i個詞的位置關系用gi[18]表示,計算公式如式(1)所示。其中l是句子長度,如果句子長度小于數據集中句子最大長度則用零填充在句子末尾,這部分的位置相關系數為零。

為了充分利用方面信息,不僅考慮上下文詞相對方面的位置信息,還需對ei和Easpect的詞向量使用逐元素乘法和連接操作合并方面和上下文表示,計算公式如式(2)所示。其中“⊙”表示逐元素乘法即兩個矩陣對應位置元素進行乘積操作,“?”表示連接操作,Yang等[19]已經證明逐元素乘法和連接操作一起使用相較單獨使用連接操作的效果更好

f(ei,Easpect)=[ei?(ei⊙Easpect)]

(2)

最后,位置相關層的輸出用OPR-i表示,計算公式如式(3)所示

OPR-i=f(ei,Easpect)*gi

(3)

通過式(2)~式(3),可以獲得更有效的方面信息以及方面詞及其上下文詞之間的位置信息。

2.1.3 BiLSTM

如圖1所示,采用BiLSTM對位置相關層的輸出進行編碼進而生成隱藏層的特征表示。LSTM神經網絡的核心是使用隱藏狀態來存儲通過其傳遞的輸入信息,每個隱藏狀態只包含當前單詞的信息和前一時刻的信息即單向信息。

BiLSTM模型是對LSTM模型的進一步優化,BiLSTM中每個隱藏狀態捕獲前向和后向的雙向信息,給定詞的最終特征表示是通過連接兩個方向的表示來獲得。上下文記憶網絡構建模塊中的BiLSTM的結構如圖2所示。

圖2 BiLSTM結構

(4)

(5)

最后,BiLSTM的輸出Hi的計算公式如式(6)所示,其中隱藏狀態Hi表示位置i的更新表示

(6)

2.2 方面記憶網絡更新

2.2.1 方面記憶更新

如圖1所示,BiLSTM的輸出Hi和方面的初始詞嵌入矩陣Easpect在第一跳作為多頭注意力機制的輸入,然后這一跳的輸出Outputhop加上Easpect得到更新的方面詞嵌入矩陣E′aspect, 計算公式如式(7)所示

E′aspect=Outputhop+Easpect

(7)

E′aspect作為下一計算層(跳)的輸入,直至到達到終止條件。最終輸出用于圖1右側輸出層模塊的輸入。整個過程中使用的多頭注意力機制用于計算句子中所有上下文之間的相關性,用于方面更新的表示。更新方面記憶的目的是將方面向量轉化為包含情感詞和上下文信息的方面記憶。

2.2.2 多計算層機制

多計算層可以學習更高級別的表示并提高模型性能,對于面向方面級別的情感分析表現出比較好的效果。

在本文中,采用多跳(Multiple Hops)來學習方面的表示使深度記憶網絡學習具有多個抽象級別的文本表示。每個計算層包含更新后的方面記憶,如式(7)所示,更新后的方面矩陣E′aspect被視為下一計算層的新輸入。

每個計算層包含兩個步驟,執行Multi-head Attention機制和更新方面記憶。此外,更新之前確定計算層停止條件即跳數,將其作為超參數,在實驗中選擇最佳值。

2.2.3 雙注意力機制

在基于方面級情感分析任務中使用注意力機制即句子中的每個詞對不同方面都有不同的影響。在本文中,使用注意力機制來體現上下文對不同方面的情感影響。

再次以“Good food but dreadful service at this restaurant”這句話為例。上下文詞“good”對于“food”方面比“dreadful”方面更重要。相反,上下文詞“dreadful”對于方面“service”比方面“good”更重要。記憶網絡中引入Multi-head Attention機制生成上下文表示,更新方面記憶,為輸入的句子中的每個詞賦予不同的權重,使模型更容易捕捉句子中的關鍵信息,正確識別句子中方面的情感。

在本文中,設計了Self-Attention和Encoder-decoder Attention雙注意力機制用來處理方面記憶網絡更新模塊的輸入信息,分別如圖3和圖4底部所示。

圖3 基于自注意力的多頭注意力機制

圖4 基于編碼-解碼的多頭注意力機制

2.2.3.1 自注意力

自注意力(Self-Attention),是一種與單個序列的不同位置相關的注意力機制,目的是計算序列的表示形式,可以捕捉到句子中的全局語義,解決長距離依賴。

首先,將方面向量信息編碼到詞表示中,生成詞表示(word-rep)s, 計算公式如式(8)所示,其中“⊙”表示逐元素乘法,“?”表示連接操作

(word-rep)s=[Hi?(Hi⊙Easpect)]

(8)

多頭注意力機制輸入的句子表示為 (word-rep)s={u1,u2,…,ui,…,un}, 即K=V=Q=(word-rep)s。 其中Q、K、V分別為查詢向量序列、鍵向量序列、值向量序列。

2.2.3.2 編碼-解碼注意力

如圖4所示,編碼-解碼注意力(Encoder-Decoder Attention)與Self-Attention不同,Encoder-Decoder Attention可以對Easpect和Hi進行逐元素乘法運算,不進行連接操作,表示句子的局部語義信息。

BiLSTM層的輸出Hi用于計算Q、K、V矩陣。矩陣Q如式(9)表示,矩陣K、V如式(10)表示

Q=[Hi⊙Easpect]

(9)

K=V=[h1,h2,…,hi,…,hn]

(10)

本文提出的兩個方法區別體現在兩種注意力機制的輸入不同,如圖3和圖4所示。

在多頭注意力機制中,中間部分Attention的計算過程相同,“Multi-head”相當于縮放了h次的Scaled Dot-Pro-duct注意力機制的操作,其中h表示并行頭的數量。Multi-head Attention由多個基本單元堆疊而成,每個單元采用Scaled Dot-Product 注意力機制,通過Query與Key的相似性程度來確定Value的權重分布的方法被稱為Scaled Dot-Product Attention。

Scaled Dot-Product Attention計算速度快并且節省空間,與Additive Attention和普通Dot-Product Attention相比效果更好。Multi-head Attention的每個單元都有自己對應的權重來表達特殊信息,將一組向量拆分為多個部分并行計算。

多頭注意力機制執行具有不同權重系數的多個注意力函數,可以從不同空間的輸入數據中提取不同的信息,然后連接輸出,類似于訓練多個學習器解決問題的集成,用于防止過擬合。

兩種方法中3個輸入矩陣Q、K、V通過不同的參數矩陣WQ、WK、WV進行h次線性變換。同時計算新生成矩陣相關性的Scaled Dot-Product Attention也進行h次線性變換。第i個“head”和縮放點積注意力具體計算公式分別如式(11)、式(12)所示

(11)

(12)

將h次線性變換結果拼接在一起輸出混合表示,并進行線性變換得到詞向量表示M。計算公式如式(13)所示,其中WO為可學習的參數矩陣

M=Concat(head1,head2,…,headn)WO

(13)

在Self-Attention方法中,上下文詞之間的關系被整合到詞向量的表示中。在Encoder-Decoder Attention方法中,詞向量的表示考慮了方面和上下文詞之間的關系。然后,將Multi-head Attention的表示輸入到一個線性層中,執行softmax歸一化操作獲得權重wi,wi計算公式如(14)所示,其中Wh是參數矩陣

(14)

最終輸出的句子表示Orep計算公式如式(15)所示,其中情感類別(積極、消極、中性)概率最高的則是其情感分類輸出的結果

(15)

3 實驗驗證與分析

3.1 數據集及實驗參數

本文采用SemEval 2014任務4數據集[20]和ACL 2014 Twitter英文數據集[20]對本文提出的模型進行實驗。SemEval 2014任務4數據集包括兩個評論數據集分別為Restaurant和Laptop。ACL 2014Twitter數據集包括一個評論數據集為Twitter。

其中評論數據集劃分為訓練集和測試集,Restaurant和Laptop的評論數據集被標記為4種情感標簽分別為積極的、消極的、中性的和沖突的。當句子的標簽是“沖突的”時,就意味著句子中含有多種情感類別。由于該類別樣本數據太少,會出現數據不平衡的現象。

因此,在數據預處理階段,去除數據集中標記為沖突的句子。Twitter評論數據集包含3個情感標簽分別為積極的、消極的和中性的。預處理后的數據集見表1。本文實驗基于深度學習框架Pytorch實現。實驗環境配置見表2。

表1 數據集統計

表2 實驗環境設置

原始數據集經Glove模型預訓練得到300維詞向量。Glove模型進行詞的向量化表示使得向量之間盡可能多地包含語義和語法的信息并且融合了矩陣分解Latent Semantic Analysis的全局統計信息和Local context window優勢,加快訓練速度并控制詞的相對權重。使用均勻分布U(-0.25,0.25)隨機化詞表外的詞嵌入和權重矩陣,所有的偏置初始化為0并采用Adam作為優化器訓練模型。實驗的深度模型的參數設置見表3。

表3 實驗參數

3.2 評價指標

對多分類情感分析模型的效果進行綜合衡量,經常使用準確率(Accuracy)[20]和宏F1值(Macro-F1-score)[20]作為評價指標,因此將準確率和宏F1值作為實驗的評價指標。

準確率即正確預測的樣本數(TP+TN)除以輸入樣本總數total得到的值,計算公式如式(16)所示

(16)

首先計算每個情感類別(正、負或中性)的F1得分(F1-score),然后計算其平均值得出宏F1值,計算公式如式(17)、式(18)所示

(17)

Macro-F1-score=

(18)

其中,i代表情感類別,Pprecision為精確率(precision),Rrecall為召回率(recall),計算公式如式(19)、式(20)所示。其中TP為本文模型預測正確的正樣本,FN為本文模型預測錯誤的正樣本,FP為本文模型預測正確的負樣本

(19)

(20)

3.3 模型訓練

在訓練數據上,模型預測數據分布與真實數據分布越相近越好。交叉熵跟相對熵相比更加簡便計算,能得到一致性和統計高效性的最大似然,在計算上也比其它損失函數要適合優化算法,因此本實驗采用L2正則化交叉熵函數作為模型的損失函數,計算公式如式(21)所示

(21)

其中,T是訓練數據的集合,C是情感類別的數量,(s,a) 表示一個句子及其對應的方面詞,yc(s,a) 表示給定句子s在方面a使用one-hot向量表示真實的分類,pc(s,a) 表示預測給定句子s在方面a的分布概率,λ為L2正則化項的系數,θ代表模型中要訓練的所有參數。

利用訓練好的模型來預測句子s中給定方面詞a的情感極性。經過多層計算,得到最終輸出向量。輸出向量經過線性層,反饋給softmax函數計算概率分布,并取最大概率作為句子預測的情感類別。

本文所提模型采用Dropout策略和提前停止(early stopping)操作來緩解訓練過程中的過擬合。最后,通過將評論數據輸入到模型中進行測試,取最大概率情感類別作為評價對象預測情感極性。

3.4 實驗結果

在實驗過程中本文所提模型隨著訓練樣本(Restaurant數據集)訓練次數的增加,訓練集和測試集的損失值(Loss)變化如圖5、圖6所示,準確率值(Acc)變化如圖7、圖8所示,宏F1值變化如圖9所示。

圖5 DAMDMN-SA模型損失值變化

圖6 DAMDMN-EDA模型損失值變化

圖7 DAMDMN-SA模型準確率值變化

圖8 DAMDMN-EDA模型準確率值變化

圖9 模型宏F1值變化

3.5 算法對比

將本文提出的模型與相關工作中的7個情感分析模型在SemEval 2014任務4的兩個數據集和ACL 2014 Twitte的3個數據集上進行對比實驗,驗證所提方法的有效性。

(1)MemNet[5]:MemNet模型在方面級情感分類任務中引入一個記憶網絡,由多跳注意力和詞嵌入層組成,并將多跳注意力應用于詞嵌入以捕獲每個上下文詞的重要性。

(2)ATAE-LSTM[11]:ATAE-LSTM模型首先將方面信息嵌入到每個詞向量中,然后使用LSTM網絡計算出句子的隱藏表示,再使用注意力機制計算出句子的語義表示然后經過線性層得出最終結果。

(3)DSMN[13]:DSMN模型將語義依賴信息與原始上下文記憶進行整合,為注意力網絡生成動態記憶。此外還設計了語義感知的方面間網絡和句子級上下文瞬時學習網絡,以利用同一句子中方面間的語義信息和關系信息。

(4)IAN[14]:IAN模型是一種基于LSTM和注意力機制的交互算法,用于獲取上下文和方面表示,分別考慮方面詞和句子的單獨建模,交互式地學習上下文和方面詞中的注意力,并分別為方面詞和上下文生成表示。

(5)M-IAN[15]:M-IAN模型是一種基于LSTM和注意機制的矩陣交互注意力網絡模型,分別對目標和上下文進行建模。

(6)DAuM[18]:DAuM模型是一種具有輔助記憶網絡的新型深度記憶網絡,構建了一個用于捕獲重要上下文詞的主記憶和一個用于隱式轉換方面和術語的輔助記憶。

(7)CEA[20]:CEA模型與MemNet類似,也使用了多層注意力機制。不同的是CEA模型采用詞嵌入層和LSTM層來構建詞表示。

為了驗證本文提出的DAMDMN模型情感分類的性能,將DAMDMN-SA、DAMDMN-EDA模型與以上7個模型在Laptop、Restaurant、Twitter這3個數據集上進行對比實驗,將準確率和宏F1值作為評價指標,實驗結果分別見表4和表5。

表4 算法對比準確率實驗結果

表5 算法對比宏F1值實驗結果

采用準確性和宏F1值作為主要評估指標,用于評估ABSA模型的性能。實驗結果見表4和表5,表明本文提出的面向方面的深度記憶網絡模型在Restaurant、Laptop以及Twitter數據集上始終優于所有基于注意力和基于記憶網絡的方法。

句子中方面信息是方面級情感分析任務中的重要部分,由于LSTM未充分考慮方面信息對上下文情感極性的影響,實驗結果表現最差。ATAE-LSTM是基于LSTM的改進算法,并且是神經網絡的經典方面級情感分析模型,與LSTM相比實驗結果表現出的性能較好,但與本文所提模型的實驗結果相比表現不佳。

ATAE-LSTM中提出一種注意力機制,使用不同方面作為輸入時進而關注句子中不同部分,用于提取重要特征。但ATAE-LSTM只是將方面嵌入與句子的詞嵌入連接起來并沒有充分利用方面信息,而本文所提模型含有方面記憶更新模塊,將評論文本中的方面詞單獨在方面記憶更新模塊中進行編碼和更新,達到方面信息充分利用的目的。

如表4所示,IAN實驗結果優于ATAE-LSTM,因為IAN通過注意力機制交互式學習進一步強調方面的重要性。在IAN基礎上所提出的M-IAN模型實驗結果表現出的性能較好。驗證了IAN的交互注意力計算過程簡單,優化了IAN提取交互注意力的方式,并使用BILSTM來獲取上下文的隱藏狀態。

MemNet、CEA、DAuM獲得的實驗結果比上述模型更高,它們通過將注意力機制和記憶網絡進行交互,捕獲與預期相關的重要信息,并且驗證多個計算層優于單個計算層的結果。

MemNet為一種深度記憶網絡,將上下文信息和位置信息結合起來學習上下文權重,是一種適合方面級情感分析的方法。然而上下文相關性以及上下文和方面之間的相關性在深度記憶網絡中沒有被充分研究,本文所提模型在計算層中將多頭注意力機制的輸入設置為Self Attention和Encoder Decoder Attention兩種機制,實驗結果性能高于記憶網絡經典模型MemNet。

DSMN雖然取得一些改進的結果,但是在基于方面的情感分類任務中仍然存在一些不足。首先,語義依賴信息并不適用于所有類型的數據集。具體來說,不符合語法的句子的依存樹通常質量低,會給模型帶來噪音,因此語義信息不能應用于Twitter等包含更多不符合語法的句子的數據集。其次,DSMN設計的上下文矩損失是句子級的,對于句子中的所有方面都是相同的,不能帶來更多的方面感知關系信息。

在DAMDMN-SA和DAMDMN-EDA中,上下文記憶構建模塊和方面記憶更新模塊進行交互。在上下文記憶構建模塊中加入位置相關層,提高上下文和方面之間位置信息的利用率。詞嵌入矩陣經過位置相關層輸出后進入BiLSTM網絡進行雙向訓練,可以充分利用上下文信息解決上下文長期依賴問題。

評論文本中的方面詞單獨在方面記憶更新模塊中進行編碼和更新,使方面信息得到充分利用。在方面記憶更新模塊的計算層中,將多頭注意力機制的輸入設置為Self Attention和Encoder Decoder Attention兩種機制,用于優化上下文和方面詞以及上下文相關性的計算能力。

4 結束語

本文提出一種基于深度記憶網絡的方面級情感分析方法。在深度記憶網絡的上下文記憶構建模塊中加入位置相關層,提高上下文和方面之間位置信息的利用率。增加方面記憶更新模塊,將句子文本中的方面詞單獨在方面記憶更新模塊中進行編碼和更新,使其方面信息得到充分利用。在多計算層中注意力機制的輸入上采用雙自注意力機制,解決上下文相關性及上下文與方面之間的相關性在記憶網絡中沒有被充分利用的這一問題。如3.5節實驗結果表明,與已有工作比較下,本文所提方法準確率與宏F1值有所提升。接下來將探索多記憶交互,嘗試通過聯合學習將方面級情感分析與方面術語提取相結合,提高方面級情感分析的效果。

猜你喜歡
注意力記憶機制
讓注意力“飛”回來
自制力是一種很好的篩選機制
“揚眼”APP:讓注意力“變現”
記憶中的他們
A Beautiful Way Of Looking At Things
兒時的記憶(四)
兒時的記憶(四)
記憶翻新
破除舊機制要分步推進
注重機制的相互配合
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合