Advertisement

[论文阅读]A Joint Training Dual-MRC Framework for Aspect Based Sentiment Analysis

阅读量:

摘要

ABSA(基于方面的情感分析)涵盖三个基础子任务:识别方面术语、观点术语以及进行方面级情感分类。早期研究主要专注于分别处理这些单个子任务。近来的工作则集中于同时处理两个子任务:如既识别方面术语又确定情感极性;或者同时识别观点项与意见项等。近期文献还提出了一种三元组提取任务:即从给定文本中识别出(方面项、意见项、情感极性)三个要素之间的关系。然而现有方法未能在一个统一端到端框架中同时解决所有基础子任务。本文提出了一种完整的解决方案框架:通过构建两个机器阅读理解问题并采用参数共享的BERT-MRC模型实现了联合训练处理所有ABSA相关子任务(如图1所示)。实验结果表明该框架在多个基准数据集上均优于现有最先进的方法。
我们开发了一个全面的解决方案框架,在一个统一模型中完成所有ABSA相关子任务(如图1所示)。该框架以BERT(Devlin等人2019)为基础搭建骨干网络,并采用基于跨度的方法从输入句子中识别AT/OT的位置与范围。基于跨度的方法较传统的序列标记方法具有显著优势;这是因为前者能更灵活地捕捉复杂的关系结构。

我们将原始的三元组提取任务转化为两个机器阅读理解任务(MRC),即左MRC和右MRC。经验证,在预设条件下,基于BERT的方法表现良好。这种现象得益于BERT通常采用下一个句子预测策略进行预训练,并以此捕捉两两句子之间的关联性。在理论层面,三元组提取任务可划分为三个子任务:AE、AOE和SC。基于此,在实际操作中我们分别采用左MRC处理AE相关的问题,并运用右MRC来处理AOE及SC相关的查询。

贡献:

  • 本研究通过三重提取任务展示了三个目标的联合训练方案。
  • 我们开发了一个双MRC框架,并详细说明了其在处理ABSA子任务时的优势。
  • 通过对比实验分析了所提出的双MRC框架在多个任务中的性能表现。结果表明该方法显著优于现有技术。
在这里插入图片描述

模型

三元组抽取的联合训练

ABSA的任务:

在这里插入图片描述
  • AE:AT 抽取:领域抽取:AT 抽取
  • OE:OT 抽取:主题抽取:OT 抽取
  • SC:情感分析:领域级的情感分析
  • AESC :领域术语抽取与情感分析:领域 terminology 抽取与情感 分析
  • AOE :基于领域的OT 抽取:基于领域的主题项 抽取
  • Pair :(领域 terminology , 主题项 ) 对 抽取:“(Field terminology, Theme terms)" pair extractions"
  • Triple :(领域 terminology , 主题项 , 情感强度 ) 三 元组 提取:“(Field terminology, Theme terms, Sentiment intensity)" triple extractions"

其它子任务可以被当作三元组提取任务的特殊情况。

假设输入句子x_j的最大长度为n。其中T_j = \{(a, o, s)\}代表输入句子x_j所对应的三元组集合。考虑训练数据集D = \{(x_j, Tj)\}并采用最大似然估计法:

\text{ML} = \argmax_{(h)} P(D|h)

L(\mathcal{D})=\prod_{j=1}^{|\mathcal{D}|} \prod_{(a, o, s) \in T_j} P\left((a, o, s) \mid x_j\right)

定义:

T_j\left|a:=\left\{(o, s),(a, o, s) \in T_j\right\}, \quad k_{j, a}:=\right| T_j|a|

x_j的对数似然:

The loss function for each training example x_j is defined as:

$\ell(x_j)=Sum{(a,o,s)\in Tj} logP((a,o,s)|xj)

This can be expressed as:

Sum{aiTj Sum{(oi si)}Tj|ai [ logP(ai|xj)+logP((oi si)|ai,xj)]

Furthermore, this can be rewritten as:

Sum{aiTj [ Sum{(oi si)}Tj|ai logP(ai|xj)] } + Sum{aiTj [ Sum{(oi si)}Tj|ai (logP(s|ai,xj)+logP(o|ai,xj))

该等式成立基于此,在给定情况下,观点术语o与情感极性s是条件独立的。

通过在x_j∈D上求和,并将两边进行归一化处理后,我们最终得到了以下形式的对数似然:

\begin{aligned} \ell(\mathcal{D}) &= \underbrace{\alpha}_{权重参数} \cdot \underbrace{\sum_{j=1}^{|\\mathcal{D}|}}_{ 遍历所有样本索引} \underbrace{\sum_{a \in T_j}}_{ 在当前类别下的实例} \underbrace{\left( \sum_{a \in T_j} \Log P(a | x_j) \right)}_{ 该类别的对数似然值总和} \\ &+ \underbrace{\beta}_{权重参数} \cdot \underbrace{\sum_{j=1}^{|\\mathcal{D}|}}_{ 遍历所有样本索引} \Log P(s | a, x_j) \\ &+ \underbrace{\gamma}_{权重参数} \cdot \underbrace{\sum_{j=1}^{|\\mathcal{D}|}}_{ 遍历所有样本索引} \underbrace{\sum_{a \in T_j}}_{ 在当前类别下的实例} \underbrace{\left( \Log P(o | a, x_j) ~ 对于每个可能的目标标签 o \rightrangle \righrangle \righrangle \righrangle)} \righrangle\righrangle\righrangle\righrangle}) ) )\end{aligned}

通过上述公式,我们可以推导出三元组抽取任务等价于AE、SC与AOE三种模型的综合训练。

双-MRC结构

在这里插入图片描述

两个部分都采用了 BERT 作为它们的 backbone 来处理上下文信息。BERT 被定义为基于多层双向 Transformer 架构构建的语言表示模型。令 n 表示句子长度,d 表示隐藏维度。

我们假定最末端的一层的输出形式为h_{left-start}, h_{right-start}, h_{left-end}, h_{right-end}\in\mathbb{R}^ {(n+2)\times d} ,用于提取信息。其中l/r分别代表左右两侧的位置信息;而s/e分别对应起始点和结束点。

  • 左侧

在给定文本中识别所有的AT方面术语并完成AE任务。针对左边部分进行处理后,在此部分确定start/end位置的位置信息

\begin{array}{ll} 计算得到概率\ p^{\ell,s}= softmax(g^{\ell,s}), & 计算得到概率\ p^{\ell,e}= softmax(g^{\ell,e}) \end{array}

loss:

\mathcal{J}_{A E}=-\sum_i y_i^{l, s} \log \left(p_i^{l, s}\right)-\sum_i y_i^{l, e} \log \left(p_i^{l, e}\right)

y^{l, s}y^{l, e}是AT方面术语的开始和结束位置的真值。

  • 右侧

提取所有的OT观点术语和找到对应的具体AT的情感极性。

$\begin{array}{ll}
g{\alpha,\beta}=W{\alpha,\beta} h^{\alpha,\beta},
& p^{\alpha,\beta}

\operatorname{softmax}(g^{
\alpha,
\beta}) \
g
^{
\gamma,
dot}
= W
^{
\gamma,
dot}
h
^{
\gamma,
dot},
&
p
^{
\gamma,
dot}

\operatorname
{
softmax}
(
g
^{
\gamma,
dot})
\end{array}$

\mathcal{J}_{AOE}=-\sum_{i=1}^n y_{i,r,s}\log(p_{i,r,s})-\sum_{i=1}^n y_{i,r,e}\log(p_{i,r,e})用于情感极性的计算:

p_{c l s}^r=\operatorname{softmax}\left(W_{c l s}^r h_{c l s}^r+b_{c l s}^r\right)

交叉熵loss:\mathcal{J}_{S C}=C E\left(p^r_{c ls}, y_{c l s}\right)

最小化联合训练loss:

该能量由三个部分组成:第一部分为α系数乘以AE相关的能量\mathcal{J}_{A E};第二部分为β系数乘以SC相关的能量\mathcal{J}_{S C};第三部分为γ系数乘以AOE相关的能量\mathcal{J}_{A O E}

MRC数据集转换

在这里插入图片描述

为了使联合训练dualMRC模型能够顺利进行,在完成原始三元组标注输入前必须对其进行预处理。两个MRC均基于输入句子作为其处理的基础进行运算。

左 MRC 的query:

q_1 = “Find the aspect terms in the text.”

已知AT,右MRC的query:

q_2 (AT) = “Find the sentiment polarity and opinion terms for AT in the text.”

右侧 MRC 生成所有 OT 和给定 AT 情感极性。一个关键问题在于,在右侧 MRC 数量与 AT 数量相等时,左侧 MRC 将会重复相应次数。

推理过程

在这里插入图片描述

在Triple领域中,两者的具体实现存在显著差异.具体而言,在训练阶段,基于所有AT(方面术语)的真实值,系统能够生成右侧对应的MRC实例.由此可见,该过程具有端到端的特点.相比之下,在推理阶段,AT会作为左侧MRC会输出的相关属性信息.因此,我们采用分阶段处理的方式推断两个相关的MRC.

全部评论 (0)

还没有任何评论哟~