阅读论文—Knowledge-enabled BERT for aspect-based sentiment analysis

  发表:KBS 2021 CCF-C
  引用:Zhao A, Yu Y. Knowledge-enabled BERT for aspect-based sentiment analysis[J]. Knowledge-Based Systems, 2021, 227: 107220.

1 背景

为了提供可解释和准确的方面术语和相应的方面-情感检测,考虑外部特定领域的知识通常很有用。
情感分析的一个主要挑战是识别意见以有效的方式从文本中表达的实体。这一事实需要开发基于方面的情感分析 (ABSA),它识别给定目标实体的各个方面或特征以及针对每个方面表达的意见 [3]。

1.1 问题

现有的 ABSA 方法仍然存在一些问题:

  1. 方面术语和意见词之间的精确配对信息并不总是清楚的,因为如果没有领域知识,句子中的两个实体之间的语义关系可能无法获得。
  2. 尽管现有 ABSA 方法的性能很好,但它们中的大多数都无法解释为什么一段文本-情感信息被分类为正面或负面。

受这些观察结果的启发,有必要提供一种可解释的方法来理解为什么某些方面-情感信息被归类为正面或负面。情感知识图(SKG)通常是手动更正的,包含高度可靠的情感知识。它可以用作方面-情感信息检测的有效辅助,找到文本中方面术语和情感词之间的内在关系,以提高情感分析性能并提供解释。

1.2 解决办法

本文通过利用 SKG 更好地捕捉实体之间的高阶方面-情感关系来研究可解释方面-情感信息检测问题。受Liu等人[5]中语言表示模型K-BERT的研究的启发,本文提出了一种基于知识的BERT模型,用于基于方面的情感分析。同时,将情感知识图作为情感知识信息的外部来源,通过将情感领域知识注入 BERT 来提高情感检测的性能。

2 相关工作

2.1. Aspect-based sentiment analysis

深度学习模型由于其能够将原始特征编码为低维向量而不进行特征工程的能力,可以动态提取特征。例如 CNN [7]、memory networks [8,9] 和 RNN [10],以学习方面的不同注意力并生成基于注意力的句子嵌入。
graph neural networks combined with dependency trees 已被用于学习用于 ABSA 中情感分类的序列节点表示 [12,13]。
图注意力网络 (GAT) 用于建立单词之间的依赖关系,用于语法感知方面级别的情感分类 [14]。

2.2. Self-attention based models

基于自注意力的预训练语言模型已应用于 ABSA,并带来了显着的性能提升。例如,AEN-BERT,它将预训练的语言模型 BERT 应用于 ABSA 的任务 [18] 、BERT 通过微调基于 BERT 的模型用作嵌入层 [21,22] 或 ABSA 分类输出层 [23]、一种上下文引导的 BERT (CG-BERT) 模型等。

2.3. Knowledge-enhanced sentiment analysis

SenticLSTM 将 SenticNet 中的外部知识特征添加到神经网络中,以提高目标基于方面的情感分析的性能 [25]。
情感词典中的外部知识整合到深度神经网络中。
通过混合来自情感词典和句子的信息进行情感分类来学习embedded auxiliary。
将方面级情感分类和方面-意见对识别建模为联合文本分类任务[30],提供了一个知识增强的情感分析框架KNEE。

3. Preliminaries and problem definition

3.1. Preliminaries

sentiment knowledge graph 描述了方面和情感之间的情感关系,以及正面/负面关系。例如,(CPU, fast, positive) 包含积极情绪关系,但 (Battery, fast,negative) 具有负面情绪关系。

定义1
G_s = {A, O, R} 为情感知识图,其中A, O和R分别为方面节点集、情感节点集和积极情绪关系集。情感知识三元组由 {(a_i, o_i, r)|a_i ∈ A, o_i ∈ O, r ∈ R} 表示,它描述了从方面节点 a_i 到情感节点 o_i 的情感关系 r。
定义2
给定一个输入句子 s = {w_0, w_1, w_2,…,, w_n},以及一个情感知识图 Gs = {A, O, R},一个句子知识树 t = {w_0, w_1,., w_i{(r_{i0}, w_{i0}),..., (r_{ik}, w_{ik})},..., w_n},其中 {(w_i, r_{i0}, w_{i0}),..., (w_i, r_{ik}, w_{ik})} 是相应情感知识三元组的集合。

4 方法

4.1. Overview

ABSA的 knowledge-enabled BERT 的整体架构如图 1 所示。
与现有的knowledge-enhanced language representation model [5] 类似,本文的模型有一个 knowledge layer 来从输入句子和 SKG 中捕获上下文和情感知识特征。
给定输入 sentence = {w_0, w_1, w_2,., w_n} 长度为 n,
S1 首先从 SKG 中注入相关的情感知识三元组并生成句子知识树。
S2 在 embedding module 中,使用具有 L 个 transformer 的 BERT 组件将句子知识树转换为相应的 token-level embedding representations HL = {h^L_1,., h^L_n} ∈ R^{n×dim_h} 用于输入句子 s,其中 dim_h 是 embedding representation vector 的维度。
S3 句子embedding representations HL 被用于特定于任务的层进行预测。

Figure 1

4.2. Generating sentence-knowledge trees

为了生成句子知识树,需要选择外部知识三元组并将其嵌入到输入句子中。SKG 中可能存在大量候选知识三元组。
S1 Knowledge selection 旨在从 SKG 中识别出最有用的情感知识三元组,而忽略了不相关的三元组。本文将输入句子 s 中涉及的所有实体名称的知识三元组作为候选知识。
Knowledge selection 表述为 E = f (s, K)
其中 f 是知识选择的函数,K 是 SKG,E = {(w_i, r_{i0}, w_{i0}),..., (w_i, r_{ik}, w_{ik})}

S2 利用树结构来表示嵌入知识三元组的句子。
通过将选定的知识三元组 E 注入句子 s 并将 E 中的知识三元组拼接到其对应的位置来生成具有多个分支的句子知识树 T。句子知识树生成可以表示为 Ts = g(s, E),其中 g 是知识注入的函数。获得的句子知识树可以表示为 T_s = {w_0, w_1,..., w_i{(r_{i0}, w_0),..., (r_{ik}},..., w_n)}

4.3. Knowledge enabled BERT embedding

4.3.1. Embedding

与 BERT 类似,the embedding layer 学习输入句子知识树 T_s 的embedding representation,embedding representation将输入特征打包为与输入标记对应的token embedding、position embedding 和 segment embedding 的组合。

为了弥合 BERT 和结构化知识的 encoder representations of BERT之间的差距,将句子知识树转换为 token sequence,同时保留其结构信息以进行进一步的利用。
Token embedding 将 tokens 转换为具有语义和句法信息的分布式表示。对于句子知识树 T_s,本文在嵌入操作之前通过 rearrangement strategy 将 Ts 中的每个标记映射到一个序列,其中分支标记在相应的节点之后插入,而以下标记向后移动。然而,这个重新排列的序列导致输入句子丢失正确的结构信息。BERT 的位置嵌入能够将缺失的结构信息添加到从 T_s 重新排列的 token sequence 中。为了解决序列结构信息不正确的问题,采用 soft-position embedding 策略定位重新排列的 sequence tokens,为对应节点和分支标记设置相同的位置数。这有助于模型从原始输入句子中保留正确的语义信息。

4.3.2. Transformer

本文还使用 mask attention 中呈现的 mask self-attention 来防止由 Ts 的知识分支引起的原始输入句子的语义变化。 Visible matrix M 用于决定每个标记的可见区域,以便即使位置嵌入彼此接近,连接序列节点也不会受到相互影响。

4.4. Model prediction

在 BERT 架构中,transformer layers 逐层细化 token level 特征。
对于给定的输入句子 s,L Mask-Transformer 层,隐藏大小为 H,输入序列的表示可以计算为 H^l = Mask − Transformer_l(H^{l−1})
其中包含输入句子和外部知识的语义和情感知识信息。
H^L 视为输入序列的知识启用嵌入表示,并使用它们来对 ABSA 任务做出特定的预测。

5 实验

5.1 数据集

从两个中国大学 MOOC 平台上的 MOOC 产品中收集的数据。高级语言编程课程按课程类型收集的 9123 个帖子,由 7590 个不同的学习者在不同的高级语言编程课程中。最终数据集由 13167 个句子组成,包含 1692 个独特的术语。句子的方面术语和情感术语分为两组:名词和形容词。
还将电子领域的一些知识元组作为补充信息,这与教育领域和计算机科学有关。最终的情感知识图谱由 1324 个正面 tripes、796 个负面tripes 和 182 个中性 tripes 组成,其中包括电子、计算机科学和教育部分领域方面术语和情感词的共同搭配,以及它们的情感极性。

5.2. 评估指标

accuracy, Macro-F1 and the F1-score

5.3. Baselines

• KNEE [30]: knowledge-enhanced models aspect-level sentiment classification and aspect–opinion pair identification as a joint text classification task.
• CG-BERT [24]: Context-guided BERT learns to distribute attention under different contexts.
• R-GAT+BERT [15]: relational graph attention network (R-GAT) encodes the tree structure for sentiment prediction.
• BERT+Liner [20]: A BERT-based architecture is built with a simple linear classification layer for the ABSA task.

5.4. Results analysis

实验结果如图 2 所示。
Figure 2

该方法利用了基于自注意力的预训练语言模型获得的先验知识和语言信息有助于提高 ABSA 任务的性能。

3 类分类的 F1 分数性能如图 3 所示。每个类的 F1 分数旨在进一步展示外部知识对 SKG 的影响。结果表明,用于 ABSA 任务的知识感知 BERT 从外部情感知识中受益匪浅,以补偿有限的训练数据。
Figure 3
为了进一步测试外部知识对 ABSA 知识支持 BERT 的性能的影响,首先,给定训练数据集,从 0% 到 100% 随机修改 SKG 的情感知识三元组集的占比。macro-F1 结果如图 4 所示。很明显,随着从 SKG 中加入更多的知识三元组,macro-F1 稳步增加。
Figure 4
其次,给定 SKG,将训练集的百分比从 20% 随机更改为 80%。结果如图 5 所示。
Figure 5

这表明外部领域知识对于提高模型的性能特别有用。为了说明 sentiment knowledge graph 解释 ABSA 结果的重要性,例如,“The teacher's rhythm is too fast”(negative)和“Programming practice is fast”(positive)。实验结果表明,knowledge-enabled BERT 模型能够从 SKG 中加入外部知识信息,并为 ABSA 产生更好的 token embedding representations。

6 贡献

(i) 本文通过利用情感知识图来研究可解释的基于方面的情感分析问题更好地捕捉方面和情感术语之间的情感关系。
(ii) 建议将外部领域知识合并到 BERT 语言表示模型中,以获得知识库中实体的 embedding vector,并在一致的向量空间中获得文本中的单词。
(iii) 使用情感知识图来提供外部领域知识来提高 ABSA 性能。

讨论

  • 通过结合来自 SKG 的知识三元组,需要将原始输入句子转换为知识丰富的句子形式。
  • 情感分析的性能部分取决于知识三元组查询和基于上下文的过滤。因此,不适当的结合情感知识会影响性能。
  • 由于注入过多的外部知识,输入句子的原始含义可能会改变。因此,需要一种有效的解决方案来防止在嵌入学习过程中转移输入句子的正确含义。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容