Dual Graph Convolutional Networks for Aspect-based Sentiment Analysis
基于方面的情感分析的对偶图卷积网络
论文地址: https://aclanthology.org/2021.acl-long.494.pdf
论文代码: https://github.com/CCChenhao997/DualGCN-ABSA
基于方面的情感分析是一个细粒度的情感分类任务。
图1:一个例句及其依赖关系树,来自餐厅评论。这句话包含两个方面,但具有相反的情感极性。
最近,基于依赖树的图神经网络已经被证明可以明确地建模方面术语和观点术语之间的连接。然而,由于依赖分析结果的不准确性和在线评论的非正式表达和复杂性,这个改进是有限的。(总结: 基于依赖树的图神经网络有点东西 但是东西不多)
当将句法依赖性知识应用于ABSA任务时,出现两个挑战:
语义和语法是自然语言处理(NLP)中两个重要概念,它们有着不同的含义和作用:
例1:语法一样语义相反。
他喜欢吃苹果
他讨厌吃苹果
例2 语义一样语法不同
吃饭了吗
饭吃了没
为了解决上述问题,本文提出了一个双通道图卷积网络模型(DualGCN),同时考虑语法结构和语义相关性的互补性。特别地,为了减少依赖分析错误,我们设计了一个SynGCN模块,具有丰富的语法知识。为了捕获语义相关性,我们设计了一个SemGCN模块与自注意机制。此外,我们提出了正交和差分正则化通过限制SemGCN模块中的注意力得分精确地捕捉单词之间的语义相关性。正交正则化器鼓励SemGCN模块学习语义相关的单词尽量避免单词之间重叠的情况。差分正则化器鼓励SemGCN学习SynGCN未能捕获的语义特征。(正交是完善自己的不足, 差分是补充完善别人的不足)
图1:一个例句及其依赖关系树,来自餐厅评论。这句话包含两个方面,但具有相反的情感极性。
图2:DualGCN的整体架构,主要由SynGCN和SemGCN组成。SynGCN使用由依赖解析器生成的概率矩00阵,而SemGCN利用由自我注意层生成的注意力得分矩阵。正交和差分正则化器的设计,以进一步提高捕捉语义相关性的能力。这些组件的详细信息在正文中描述。
受传统卷积神经网络(CNN)和图嵌入的启发,GCN是一种高效的CNN变体,直接在图上操作(Kipf和Welling,2017)。对于图形结构化数据,GCN可以在直接连接的节点上应用卷积运算以编码本地信息。通过多层GCN的消息传递,图中的每个节点都可以学习到更多的全局信息。给定一个有n个节点的图,该图可以表示为一个邻接矩阵 A ∈ R n × n A ∈ R^{n×n} A∈Rn×n。大多数以前的工作(Zhang et al.,2019; Sun等人,2019 b)通过编码依赖性树并结合单词之间的依赖性路径来扩展GCN模型。它们在句子的句法依赖树上建立邻接矩阵A。因此,A中的元素 A i j A_{ij} Aij指示第i节点是否连接到第j节点。具体地,如果第i个节点连接到第j个节点,则 A i j = 1 A_{ij} = 1 Aij=1,否则 A i j = 0 A_{ij} = 0 Aij=0。此外,由0和1组成的邻接矩阵A可以被视为依赖解析器的最终离散输出。对于第l层处的第i个节点,形式上,其隐藏状态表示(表示为h1)由以下等式更新:
其中 W l W^l Wl是权重矩阵, b l b^l bl是偏置项,并且σ是激活函数(例如,ReLU)。
图2提供了DualGCN的概述。在ABSA任务中,给出句子-方面对 ( s , a ) (s,a) (s,a),其中 a = { a 1 , a 2 , . . . , a m } a = \{a_1,a_2,...,a_m\} a={a1,a2,...,am}是一个方面集合。它也是整个句子 s = { w 1 , w 2 , … w n } s = \{w1,w2,…wn\} s={w1,w2,…wn}一个子序列。然后,我们使用 B i L S T M BiLSTM BiLSTM或 B E R T BERT BERT作为句子编码器,分别提取隐藏的上下文表示。
SynGCN模块将语法编码作为输入。为了对句法信息进行编码,我们利用依赖解析器中所有依赖弧的概率矩阵。与依存分析器的最终离散输出相比,依存概率矩阵可以提供所有潜在的句法结构,从而捕获丰富的结构信息。因此,依赖概率矩阵用于减轻依赖解析错误。本文使用最先进的依赖性解析模型LAL-Parser的报告。
通过对邻接矩阵 A s y n ∈ R n × n A^{syn} ∈ R^{n×n} Asyn∈Rn×n进行语法编码,SynGCN模块将BiLSTM中的隐藏状态向量H作为语法图中的初始节点表示。语法图表示 H s y n = { h 1 s y n , h 2 s y n , … h n s y n } H^{syn} = \{h^{syn}_1,h^{syn}_ 2,…h^{syn}_n \} Hsyn={h1syn,h2syn,…hnsyn}然后使用 E q ( 1 ) Eq(1) Eq(1)从SynGCN模块获得。这里, h i s y n ∈ R d h^{syn}_i∈ R^d hisyn∈Rd是第i个节点的隐藏表示。注意,对于方面术语节点,我们使用符号 { h a 1 s y n , h a 2 s y n , … h a m s y n } \{h^{syn}_{a1},h^{syn}_{a2},…h^{syn}_{am}\} {ha1syn,ha2syn,…hamsyn}来表示它们的隐藏表示。
SemGCN不像SynGCN那样利用额外的句法知识,而是通过自注意机制获得注意矩阵作为邻接矩阵。一方面,自我注意可以捕捉句子中每个词的语义相关术语,这比句法结构更灵活。另一方面,SemGCN可以适应对句法信息不敏感的在线评论。
自注意并行计算每对元素的注意力分数。在我们的DualGCN中,我们使用自注意层计算注意力得分矩阵 A s e m ∈ R n × n A^{sem} ∈ R^{n×n} Asem∈Rn×n。然后,我们将注意力得分矩阵 A s e m A^{sem} Asem作为我们的SemGCN模块的邻接矩阵,其可以公式化为:
其中矩阵Q和K都等于我们的SemGCN模块的前一层的图形表示,而 W Q W^Q WQ和 W K W^K WK是可学习的权重矩阵。此外, d d d是输入节点特征的维度。注意,我们只使用一个自我注意头部来获得句子的注意力得分矩阵。与 S y n G C N SynGCN SynGCN模块类似, S e m G C N SemGCN SemGCN模块获得图形表示 H s e m H^{sem} Hsem。另外,我们使用符号 { h a 1 s e m , h a 1 s e m , … h a m s e m } \{h^{sem}_{a_1},h^{sem}_{a_1},…h^{sem}_{a_m} \} {ha1sem,ha1sem,…hamsem}来表示所有方面节点的隐藏表示。
为了有效地交换 S y n G C N SynGCN SynGCN和 S e m G C N SemGCN SemGCN模块之间的相关特征,我们采用相互BiAffine变换作为桥梁。我们将流程表述如下:
其中 W 1 W_1 W1和 W 2 W_2 W2是可训练参数。
最后,我们在 S y n G C N SynGCN SynGCN和 S e m G C N SemGCN SemGCN模块的方面节点上应用平均池化和级联操作。因此,我们获得ABSA任务的最终特征表示,即,
其中 f ( ⋅ ) f(·) f(⋅)是在方面节点表示上应用的平均池化函数。然后,所获得的表示 r r r被馈送到线性层中,随后是 s o f t m a x softmax softmax函数以产生情感概率分布 p p p,即,
其中 W p W_p Wp和 b p b_p bp是可学习的权重和偏差。
为了改进语义表示,我们提出了SemGCN模块的两个正则化器,即,正交和微分正则化器。
每个单词的相关项应该在句子中的不同区域中,因此注意力分数分布很少重叠。因此,我们期望正则化器鼓励所有单词的注意力得分向量之间的正交性。给定注意力得分矩阵 A s e m ∈ R n × n A^{sem} ∈ R^{n×n} Asem∈Rn×n,正交正则化子公式如下:
其中 I I I是单位矩阵。下标 F F F表示 F r o b e n i u s Frobenius Frobenius范数。结果, A s e m A s e m T A^{sem}A^{semT} AsemAsemT的每个非对角元素被最小化以保持矩阵 A s e m A^{sem} Asem正交。
我们期望从 S y n G C N SynGCN SynGCN和 S e m G C N SemGCN SemGCN模块学习的两种类型的特征表示包含在句法依赖树和语义相关性中的不同信息。因此,我们在 S y n G C N SynGCN SynGCN和 S e m G C N SemGCN SemGCN模块的两个邻接矩阵之间采用差分正则化子。注意,正则化子仅限于 A s e m A^{sem} Asem,公式为
我们的训练目标是最小化以下总目标函数:
其中 λ 1 λ_1 λ1、 λ 2 λ_2 λ2和 λ 3 λ_3 λ3是正则化系数, Θ Θ Θ表示所有可训练模型参数。 L C L_C LC是标准的交叉熵损失,并且针对 A B S A ABSA ABSA任务定义如下:
其中 D D D包含所有句子-方面术语对,并且 C C C是不同情感极性的集合。
我们在三个公共标准数据集上进行实验。Restaurant和Laptop数据集从SemEval ABSA挑战(Pontiki等人,2014年)的报告。
表2:三个公开可用数据集上的实验结果比较。