提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

PaperWeekly發表於2020-11-23

本文介紹一篇發表於 EMNLP 2020 的論文《Convolution over Hierarchical Syntactic and Lexical Graphs for Aspect Level Sentiment Analysis》,簡稱 BiGCN。該工作提出了一種新穎的體系結構,其目標在於更好地利用語料庫級別的單詞共現資訊以及不同型別的句法依存關係。

為此,該文首先創造性地提出了句法和詞彙的概念層次,並以此為基礎建立了層次句法圖和層次詞彙圖,隨後設計了雙層互動式圖卷積網路以充分融合層次句法和詞彙圖。論文在五個基準資料集上進行了大量實驗,結果表明 BiGCN 方法達到了最佳效能。

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

論文標題:

Convolution over Hierarchical Syntactic and Lexical Graphs for Aspect Level Sentiment Analysis

論文連結:

https://www.aclweb.org/anthology/2020.emnlp-main.286.pdf

程式碼連結:

https://github.com/NLPWM-WHU/BiGCN

一、背景簡介

ASC (Aspect-based Sentiment Classification):目的在於確定針對特定方面的情感極性。例如:great food but the service was dreadful.

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

給定兩個方面詞的術語“food”和“service”,目標是推斷方面的情感極性:對 food 是 positive,對 service 是 negative。

1.1 Existing Studies

ASC 的最新進展集中在開發各種型別的深度學習模型上。我們簡要回顧了不考慮語法的神經模型,然後轉到基於語法的模型。

1.1.1 Neural models without considering syntax

不考慮語法模型的神經模型主要可以分為幾種型別:基於 LSTM,基於 CNN,基於 memory 和其他混合方法。

缺點:這些模型將句子表示為一個單詞序列,而忽略了單詞之間的句法關係,因此,此類方法很難找到遠離 aspect 的意見單詞。

1.1.2 Neural models considering syntax

句法資訊可以使依賴性資訊保留在冗長的句子中,並有助於縮短方面詞和觀點詞之間的距離。最近的一些研究(Zhang 等人,2019;Huang 和 Carley,2019; Sun 等人,2019)利用基於圖的模型來整合句子的句法結構,並且表現出更好的效能。

缺點:儘管上述方法取得了一定的效果,但其忽略語料庫級別的單詞共現資訊。對語法依賴的不同型別也沒有加以區分

二、問題與動機

2.1 Task Definition

給定由n個單詞和從第(a + 1)個位置開始、長度為m的方面組成的句子提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法,ASC 任務的目標是識別句子中給定方面的情感極性,包含正面,中性和負面三種極性。

2.2 Motivations

2.1.1 頻繁出現的詞對代表著語言學中的固定搭配。

例如,在句子“food was okay, nothing special”中,單詞“nothing special”對在 SemEval 訓練集中出現了 5 次,表示負極性。如果沒有這樣的全域性資訊來抵消“okay”的正面影響,基於語法的方法將對“food”做出錯誤的預測。

2.1.2 每種型別的句法依存關係都表示一種特定的關係

例如,在“i like hamburgers”中,“i like”是 nsubj(名詞主語)關係,而“like hamburgers”是 dobj(直接賓語)關係。如果 nsubj 關係和 dobjs 關係得到同等對待,我們將無法區分動作“like”的主語和賓語。

2.3 Our solution

為了解決上述限制,我們提出了一種新穎的網路模型,用於有效地融合詞對共現資訊和句法依存資訊。

我們建立了用於訓練語料庫的全域性詞彙圖,和每個句子的區域性層次句法圖和區域性層次詞彙圖

(1)全域性詞彙圖是我們首次提出來用於 ASC 任務:對語料庫級別的單詞共現資訊進行編碼,其中節點是單詞,邊表示訓練語料庫中兩個單詞節點之間的頻率。

(2)我們還在區域性句法圖和詞彙圖上建立概念層次結構,以區分不同型別的依存關係或詞對共現關係。

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

圖1顯示了一個帶有其依賴關係樹的示例句子,其它現有模型句法圖,以及我們改進的區域性層次句法圖和獨創的區域性層次詞彙圖。

  • 對比圖 1(b)和(c)可以看到:現有句法圖的每條邊僅表示兩個節點之間存在關係,而無法區分各種型別的依賴關係,而我們的層次句法圖中每條邊都附加有概念層次型別的標籤,句法概念層次包含名詞、動詞、形容詞、副詞、其它;
  • 圖 1(d)是我們獨創的區域性層次詞彙圖,由於單詞頻度服從 log-normal 分佈,我們將詞對按其共現頻度劃分成區間提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法,從而形成詞對概念層次。

三、BiGCN - Architecture

我們提出的 BiGCN 模型架構包含三個模組,如圖 2 所示:

1)首先將全域性詞彙圖和單詞序列作為輸入來獲得初始句子表示。

2)隨後引入 HiarAgg 模組,讓區域性層次詞彙圖和層次句法圖互動以精化句子表示。

3)最後透過 mask 和門控機制獲得面向方面的表示,以更好地預測句子中特定方面的情感極性。

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

3.1 Getting Initial Sentence Representation

我們提出了兩種型別的文字表示形式改進句子的 embedding。一種是基於我們的全域性詞彙圖的 GCN embedding;另一個是基於雙向 LSTM 的 Bi-LSTM embedding。

首先,我們希望將語料庫特有的詞彙資訊編碼進句子的表示形式中。我們對全域性詞彙圖執行 GCN,獲得整個訓練集的詞彙嵌入矩陣。然後,透過該矩陣得到序列 S 的 GCN embedding,在圖 2(a)中用 x 表示。

其次,更接近方面詞的詞彙可能會對判斷其情感做出更大的貢獻。我們計算從每個上下文詞到相應方面詞的絕對距離,並獲得 S 的位置序列。S 中的每個單詞都含有預訓練單詞 embedding 和位置 embedding。具有上述表示形式的句子 S 傳送到 Bi-LSTM 層以獲得 Bi-LSTM embedding,在圖 2(a)中用 y 表示。

3.2 Refining Sentence Representation

以上述 GCN embedding 和 Bi-LSTM embedding 作為初始句子表示,我們進一步利用區域性層次詞彙圖層次句法圖以獲得句子 S 的更好表示。基本思想是讓這兩個圖在經過精心設計的 HierAgg 模組中深入互動。

HierAgg 是一個多層結構,其中每層包括一個交叉網路以融合 GCN 和 Bi-LSTM embedding,以及一個雙層 GCN 以在層次句法和區域性層次詞彙圖上進行卷積。多層結構確保了在不同級別執行的不同型別資訊的協作。本節詳細介紹了 HierAgg 中的一層,如下圖所示。

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

(1)Cross Network

為了深入融合 GCN embedding(x)和 Bi-LSTM embedding(y),我們採用了簡單但有效的交叉網路結構。在跨網路的每一層中,我們使用以下公式更新融合的嵌入。每層中的融合嵌入將用作 Bi-level GCN 中兩個圖的輸入節點表示。

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

(2)Bi-level GCN

由於我們的區域性句法圖和詞彙圖包含概念層次結構,因此普通 GCN 無法在帶有標記邊的圖上卷積。為了解決該問題,我們提出了一個用於合併不同關係型別的雙層 GCN。給定一個帶有兩個圖的句子,我們將使用兩個聚合操作執行雙層卷積。

第一次聚合(低階):將具有相同關係型別的節點聚合到虛擬節點,然後在 GCN  中使用相同的歸一化隱藏特徵總和作為聚合函式來獲取虛擬節點嵌入 。

第二次聚合(高階):將所有虛擬節點及其特定關係聚合在一起。使用平均聚合函式針對不同關係型別(虛擬節點)更新目標詞 t 的表示形式:

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

(3)Finally aggregated embedding

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

我們分別在區域性層次詞彙圖和層次句法圖上進行第一次和第二次聚合以獲得精煉的句子表示形式,將其用作下一層的輸入。

在 Hier-Agg 模組的最後一層中,我們將 x 和 y 組合在一起以形成聚集嵌入。

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

3.3 Generating Aspect-oriented Representation

為了更好地預測一個方面的情感極性,我們使用門控機制以過濾面向特定 aspect 的情感資訊流:

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

接下來在門控嵌入 h 中對非方面詞進行 mask,並使方面詞保持不變,並且得到 zero-mask 的嵌入:

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

最後,我們檢索與方面單詞在語義上相關的重要特徵,並使用自注意力機制為每個上下文單詞設定基於檢索的注意力權重,將其加權求和之後即可獲得面向方面的句子表示 z。

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

3.4 Model Training

我們將上述 z 輸入一個全連線層和一個 softmax 層,得到樣本句 s 的預測值:

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

模型的訓練目標為最小化所有訓練樣本的交叉熵損失,我們採用標準梯度下降演算法訓練模型:

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

四、實驗與分析

4.1 Datasets

我們在五個基準資料集上評估了我們提出的模型。一種是 Twitter 資料集。它由推特帖子組成。其他四個資料集(Lap14,Rest14,Rest15,Rest16)全部來自 SemEval 任務,其中包含有關膝上型電腦和餐廳的評論,其統計資訊如下表 1 所示。

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

4.2 Result

我們與八種最經典或效能最好的方法進行了比較,其中前四種方法是具有典型神經結構(如注意力,LSTM,CNN,memory 和 RNN)的模型,中間的 AF-LSTM 則利用單詞共現資訊(但是沒有表示成圖結構),其餘三種方法是基於圖和語法關係整合的。

我們採用 Accuracy 和 Macro-F1 作為評估指標,其結果是對隨機初始化的三次執行結果求平均值。所有方法的比較結果顯示在表 2 中。由表 2 可知,我們提出的 BiGCN 模型在所有資料集上的 Macro-F1 得分均達到了最佳結果。

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

4.3 Ablation Study

為了檢查 BiGCN 模型中每個元件的影響,我們進行了一項分離實驗,並將結果顯示在表 3 中。我們首先研究區域性層次詞彙(M1)和句法圖(M2)的影響。然後,我們進一步從 M1 和 M2 中刪除關係型別來顯示概念層次結構的影響,從而得到基本的詞彙(M3)和句法圖(M4)。表 3 的結果清楚地證明了我們提出的概念層次和詞彙圖的有效性。

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

4.4 Case Study

為了更好地瞭解 BiGCN 的工作原理,我們透過三個測試示例對幾種方法進行了對比,如下圖所示。BiGCN 對三個句子都能作出正確的判斷,其它方法則或對或錯。其中:

  • 由於缺少語法和詞彙共現資訊,RAM 對所有三個句子都做出錯誤的判斷。
  • 由於相同的原因,AF-LSTM 在第一和第二句話中也會做出錯誤的預測。
  • 對於第三個句子,整合了語法的方法 TD-GAT,ASGCN 和 CDT 過於依賴解析的結果,將“great” 和 “pad”, “needed” 和 “feature”聯絡到一起,從而做出了錯誤的判斷。相反地,AF-LSTM 和我們的 BiGCN 透過利用單詞共現資訊,能夠正確地預測 cooling pad 的情感極性。

提高方面級情感分析的效能:一種結合詞彙圖和句法圖的方法

五、結論

本文為方面級情感分析任務提出了一種結合層次句法和詞彙圖的新型網路結構。其主要貢獻在於首次使用詞彙圖來捕獲全域性單詞共現資訊,其次,在區域性詞彙和句法圖上建立概念層次,用於區分不同型別的依存關係或詞對共現關係的獨特貢獻;最後設計了一個深度融合模組,使得區域性層次詞彙圖和句法圖能夠更好地協同工作。大量實驗表明本文方法達到了 SOTA 的效能。

相關文章