Synchronous Double-channel Recurrent Network for Aspect-Opinion Pair Extraction阅读笔记
1.摘要
探索aspect opinion pair extraction(方面意见对提取 AOPE),目的是成对的提取方面和意见表达。
提出了同步双通道递归网络(SDRN),主要由实体提取单元,关系检测单元和同步单元组成。将意见实体提取单元和关系检测单元作为两个通道同时提取意见实体和关系。此外,在同步单元中,我们设计了实体同步机制(ESM)和关系同步机制(RSM),以增强两种渠道的互利性。
2.介绍
以往的研究表明了意见实体抽取的重要性,并取得了很大的进展,但是却忽略了方面和观点表达之间的关系。
方面和表达观点之间的关系的研究还比较少。只有找到方面词和观点词之间的关系,才能执行更细粒度的任务。
举例:
挑战:首先,一个句子中方面和观点表达的关系结构可能很复杂,这就要求模型在检测关系时有效且灵活。例如,这些关系可以是一对多、多对一,甚至嵌入或重叠。
第二,观点实体提取和关系检测并不像其他多任务学习问题那样是两个独立的任务,而是相互依赖的,因此如何正确地融合和学习这两个子任务是一个关键的挑战。
第三,如何实现意见实体提取与关系检测的同步,使二者相互促进是另一个主要的挑战。
作者提出了Synchronous Double-channel Recurrent Network (SDRN 同步双通道递归网络)。
具体来说,先利用transformers(bert)的双向编码器表示来学习上下文,然后构造由意见实体提取单元和关系检测单元构成的双通道递归网络(以同时提取方面、意见表达和关系)。为了实现两个通道之间的交互,我们设计了实体同步机制(ESM)和关系同步机制(RSM)。
本文的主要贡献:
- 探讨了AOPE任务,对于下游任务是有价值的和关键的,但是仍有待研究。
- 提出了新模型SDRN。
- 根据2014年和2015年的SemEval基准,为AOPE任务手动构建了三个数据集。
3.模型
给定一个评论句子S,AOPE任务的目标是从S中抽取一组方面意见对 C={αm,om}Mm=1 ,这里的αm和om分别表示方面和意见表达。
SDRN架构如下所示:
具体流程如下:
首先,通过bert编码层来学习上下文表示。然后,将意见实体提取单元和关系检测单元构造双通道,同时提取方面、意见表达和关系。此外,还设计了一个同步单元来实现双通道的交互。为了捕获高层表示,我们反复执行上述单元。在经过多个递归步骤后,我们采用一个推理层来获得方面意见对。
3.1 编码层
对于给定的评论S,首先使用WordPiece词典对其进行标记,并在标记化句子的开头和结尾分别添加标记[CLS]和[SEP]。获得了输入序列 X={x1,x2,…,xN} 。句子中有N个token(这里的token就是表示的单词)。
对于每一个单词xi,他的初始化嵌入ei,是由单词嵌入eiw、语义嵌入eis和位置嵌入eip 。然后得到了初始化嵌入序列E={e1,e2,…,eN}
然后把E输入到bert中,bert是由多个transformer和多头自注意力组成的。我们将最后一个transformer的输出作为上下文表示序列 Hs={h1s,h2s,…,hNs}
3.2 双通道递归网络
3.2.1 意见实体提取单元
目的:提取方面和意见表达
我们将条件随机场(CRF)耦合到编码层,作为意见实体提取单元。
CRF通过一个状态评分矩阵 P∈RN*K ,为token和标签之间的官邸建模。以及一个转换分数矩阵 Q∈RK*K 模拟相邻矩阵之间的关系。这里的K表示的是标签空间的维度。
对于一系列的预测标签 Yt= { y1t, y2t,…, yNt} ,我们在第t时刻重复这一步,分数定义如下:
Hto={ht,10,ht,2o,…,ht,No} 表示意见实体抽取单元在第t个重复步骤处的输入隐藏表示序列,该序列由上下文表示序列 ***Hs*** 和关系同步语义 Rt-1 (下一节有讲解)计算。
Wp ∈ Rdo*k 和 bp ∈ RN*K 是模型的参数。do表示的是隐藏向量ht,io的维数。
概率计算如下:
其中YXt 表示的是所有可能的标签序列,在训练的过程中,我们最大化黄金标签序列的似然概率 p(Y|X) ,在解码的过程中,我们使用Viterbi算法寻找最大标签序列。
3.2.2 关系检测单元
目的:同时提取意见实体和关系。
考虑到方面和意见表达之间的复杂关系,我们设计了一种有监督的自我注意机制作为关系检测单元,可以灵活地建模标记级关系,而不受顺序限制。
在第t个做地柜步骤中, 我们需要先计算注意力矩阵 Gt ∈ RN*N ,其中 gti,j 表示第 i 个令牌和第 j 个令牌之间的关联度。
其中 γ 是一个计算分数函数,hγt,1 表示用于检测单元的第i个令牌的输入隐藏向量表示。隐藏的表示序列 Hγt = { hγt,1 , hγt,2 ,…, hγt,N} 是使用上下文表示 Hs 和实体同步语义 Ut-1 计算的。
这里的W是模型参数,维度是 dγ * dγ 。dγ 是隐藏表示 ht,iγ 的维数。
在最后一步t中,我们通过最大似然概率将监督信息进一步引入注意力矩阵 Gt 中:
其中关系矩阵 Z∈RN*N 由 zi,j 组成。
关系概率 p(zi,j|xi, xj) 计算如下:
zi,j 表示的是第i个令牌和第j个令牌之间存在关系。反之表示不存在关系。 有了这些监督信息,就可以引导注意力能有掉的捕捉token之间的关系。
3.3 同步单元
实体同步机制( Entity Synchronization Mechanism ESM)
关系同步机制( Relation Synchronization Mechanism RSM)
通过高层信息交换来更新隐藏的向量表示 Hto 和 Htγ 。
3.3.1 实体同步机制
考虑到意见实体通常是短语,意见实体语义和标记级交互在检测关系中都是至关重要的。
设计ESM来捕获每个令牌对应的实体语义,并将这些语义集成到隐藏表示序列 Ht-1γ 中。具体来说,基于预测的标签序列 Yt ,以及它的概率从意见实体提取单元中获取,第 t 个递归步骤的第 i 个令牌的每个实体语义 ut,i 可以计算如下:
其中 Bi,j 表示第 i 个令牌和第 j 个令牌属于同一个实体。否则 Bi,j 等于零。φ(·) 是一个归一化函数。
为了整合上下文表示 his 和实体语义 ut,i ,我们计算隐藏表示 ht+1γ :
σ 是激活函数,可以是tanh或者sigmoid。我们使用零矩阵来初始化实体语义序列 U0 = { u0,1,u0,2,…,u0,N} 。
3.3.2 关系同步机制
由于意见实体之间的关系可以为意见实体的提取提供线索。
RSM捕捉反应关系的语义,并更新隐藏状态 Hot+1 ,具体来说,我们可以从关系检测单元计算关联度为 gti,j 的 i 令牌的关系语义 r :
φ(·)是一个归一化函数,为了避免噪声,我们利用φ(·)来过滤给定阈值β的相关分数。
然后,我们结合语义 rt,i 和上下文表示 his 来获得隐藏表示 ***hot+1,i***:
初始化关系语义序列 R0 = {r0,1,r0,2,…,r0,N} 初始化设置为0.
3.4 联合学习
为了同时学习提出的两个通道,作者融合了两个损失函数。
对于意见实体提取单元,给定的黄金标签序列,我们在最后一步最小化负对数似然损失函数:
对于关系检测单元,我们将黄金注释转换为一个one-hot矩阵,其中0表示没有关系,1,表示两个令牌之间存在关系。
然后,我们最小化在最后一步的预测分布 p(zi,j|xi,xj)冒 和黄金标签 p(zi,j|xi,xj) 之间的交叉熵损失函数。
然后,把两部分的损失结合起来:
优化问题使用BERTAdam方法。
3.5 推理层
由于SDRN同步处理意见实体提取和关系检测,因此引入推理层,根据两个通道的结果生成方面意见对。
利用意见实体抽取单元在最后一个递归步骤预测的标签序列 YT
我们可以获得方面集合 A={α1,α2,…,αlA} ,其中有 lA 个方面词。意见集合 O = {o1,o2,…,olO} ,其中有 lO 个意见词。
然后,根据关系检测单元的权重矩阵 GT ,计算出方面和意见表述之间的关系。例如给定了一个方面 ***α *** 和一个意见表述 o ,他们之间的关联度 δ 可以计算如下:
这里的 |α| 和 |o| 表示方面和意见表达的长度。只有当 δ 大于阈值时,才把他们成对提取。
4.实验
4.1数据集
SemEval 2014,SemEval 2015,MPQA ver-
sion 2.0 corpus,J.D. Power ,Associates Sentiment Corpora
手动构建方面和意见表达之间的关系
4.2 实验结果
方面和意见表述成对提取:
实体词提取:
抽取结果对比(能否抽取到所有的关系对):