当前位置: 代码迷 >> 综合 >> 《An Interactive Multi-Task Learning Network for End-to-End Aspect-Based Sentiment Analysis》阅读笔记
  详细解决方案

《An Interactive Multi-Task Learning Network for End-to-End Aspect-Based Sentiment Analysis》阅读笔记

热度:8   发布时间:2023-11-01 19:53:51.0

An Interactive Multi-Task Learning Network for End-to-End Aspect-Based Sentiment Analysis 阅读笔记

1.摘要

ABSA主要是对一个自然语言的句子进行处理,得到aspect term及其情感列表。这个任务通常是通过pipeline(管道)方式完成的,先进行方面项抽取,然后对抽取的方面项进行情感分类。这种方法容易开发,但是没有充分利用来自两个子任务的联合信息,也没有使用使用所有有用的训练信息源,例如文档标记的情感语料库。

本文提出了一种交互式多任务学习网络(IMN),它联合了文档级、aspect级的多个任务

与传统的多任务学习方法依赖于学习不同任务的共同特征不同,IMN引入了一种消息传递体系结构,通过一组共享的潜在变量将信息迭代传递给不同的任务

2.介绍

AE : aspect term extraction(实体项抽取)
AS:aspect-level sentiment analysis(方面级情感分析)
DS:document-level sentiment classification(文档级情感分类)
DD:document-level domain classification(文档级域分类)

IMN引入了一种新的消息传递机制,允许任务之间相互交互。具体来说,它将不同任务的有用信息发送回共享的潜在表示。然后将这些信息与共享的潜在表示相结合,并提供给所有任务进行进一步处理。此操作是迭代执行的,允许随着迭代次数的增加修改信息并在多个链接之间传播

通过共享任务的学习机制,不仅可以更好地通过共享任务来影响不同的任务,而且还可以通过共享的任务来更好地影响彼此之间的信息。

结合两个文档级别的分类任务,从而允许方面级别任务从文档级任务中获取信息

3. 相关工作

3.1 pipeline的缺点:

  1. 第一步中的错误往往会传播到第二步,从而导致整体性能较差。
  2. 无法利用任务之间的共性和关联(有助于减少训练两个任务所需要的数据量)。

3.2 Multi-Task learning

传统多任务的缺点:没有对任务之间的交互进行明确的建模,两个任务之间的交互只是通过误差反向传播来实现,这种内隐式交互是不可控的

改进:与以往的方法不同,IMN不仅允许共享表示,而且通过使用迭代消息传播方案显式的建模任务之间的交互。传播的信息有助于学习和推理,从而提高ABSA的整体性能。

4.模型

在这里插入图片描述
输入的是句子序列 {x1,…,xn} ,作为所有任务之间共享的特征提取组件 fθs 的输入,该组件是有一个单词嵌入层和几个特征提取器构成的。

fθs 的输出是所有任务共享的潜在向量序列: {hs1,hs2,…,hsn}fθs 初始化之后,通过消息传递将来自不同任务组件的信息组合起来,从而更新潜在向量序列。我们叫 his(t) 表示为 xi 经过 t 轮消息传递后的共享潜在向量的值, his(0) 表示初始化后的值。

{hs1,hs2,…,hsn} 被用作不同任务的输入。每个特定任务的组件又有自己的一组潜在的变量和输出变量,输出变量对应于序列标记任务中的标签序列。在AE中,我们为每个token分配一个标签,表明是否是方面词或是意见词;在AS中,标记每个单词的情感极性。分类任务中,输出对应于输入实例的标签:DS的文档情感,DD的文档域。

每次迭代之后,适当的信息被传递回要组合的共享潜在变量h,这可能是输出变量的值,也可能是潜在变量的值,取决于任务。

消息可以在每个迭代组件中传播。 信息从AE任务传递给AS任务。在消息传递的T次迭代后,允许信息通过多个hops传播,使用输出变量的值作为预测。对于这个问题,我们只使用AS和AE的输出,因为他们是最终的任务,DD和DS仅仅是用于训练。

4.1 aspect-level tasks

AE:序列标注问题{BIO},提取句子中的所有方面和情感词。 Yae = {BA,IA,BP,IP,O} ,分别表示方面项的开始和内部,情感词的开始和内部,以及其他词。

AS:带有标签的序列标记问题,Yas = {pos,neg,neu} ,分别表示正面,负面和中立。

在方面级数据集中,只有方面术语得到情感注释。因此,把AS作为一个序列标注问题,对方面词标注表达的情感。如下图所示,fish表达的情感是 pos 。因为除了方面词的其他位置没有情感标注,所以我们忽略他们的情感预测。

在这里插入图片描述

AE的构成 fθae 参数化为θae和输出 {y1ae,…,ynae}

AS的构成 fθas 参数化为θas和输出 {y1as,…,ynas}

AE 和 AS编码器分别由CNN的 maemas 层组成,他们分别将共享表示映射到 {h1ae,h2ae,…,hnae}{h1as,h2as,…,hnas} .

对于AS编码器,我们在堆叠的CNN上增加了一个自注意层。在注意层,我们使用来自AE的输出 yiae ,因为情感分类可以从情感词(opinion terms)的预测中获益。self-attention矩阵 A 的计算如下:

在这里插入图片描述

其中 hiashjas 与参数矩阵 Was 之间的语义关联(求 i 处跟 j 处的隐层的关系)。后面是距离相关因子,它随着第 i 个令牌和第 j 个令牌之间距离的增加而减小,第三项 Pjop 表示的是第j个令牌是任何意见项的一部分的预测概率。

概率 Pjop 可以通过 yjae 中对相关标签BP和IP的预测求和来计算。这样一来,AS直接受到AE预测的影响,我们将A中的对角线设置为0(不考虑自己对自己的注意力),因为我们只考虑上下文来推断目标标记的情绪

自注意层的输出:

在这里插入图片描述

在AE中,我们将单词嵌入,初始共享表示 his(0) ,和任务特定表示 hiae 串联起来作为第 i 个令牌的最终表示。在AS中,我们连接 his(0)hi’as 作为最终的表示。

对于每一个任务,我们使用一个全连接层和softmax激活作为解码器,它将最终的令牌表示映射到概率分布 yiae(yias)

4.2 文档级任务

为了解决方面级训练数据不足的问题,IMN能够从文档级标记的情感预料库中挖掘知识(进行文档级预训练),这些语料库更容易获得。

一种是文档级情感分类(DS),它预测对输入文档的情感。另一种是文档级域分类(DD),它预测输入文档的域标签。

fθo 由CNN的 mo 层构成,这些层将共享表示 {h1s,…,hns} 映射到 {h1o,…,hno} 。注意力层 atto 和解码层 deco ,其中 o∈{ds,dd} ,注意力权重如下所示:
在这里插入图片描述
这里的 Wo 是一个参数向量,最终文档表示 ho 的计算方法:
ho =
在这里插入图片描述
我们使用一个全连接层和softmax激活作为解码层,映射 hoyo

4.3 消息传递机制

为了利用不同任务之间的交互,消息传递机制聚合了先前迭代中不同任务的预测,并利用这些知识在当前迭代中更新共享的潜在向量 {h1s,…,hns}

消息传递机制集成了 yiae,yias,yds,αids,αidd ,共享隐藏向量 his 的更新如下:

在这里插入图片描述

[:]表示串联操作,我们使用一个具有Relu激活的全连接层作为编码 fθre ,为了共享表示,我们合并了 yiae(t-1)yias(t-1) ,即AE和AS在上一个迭代中的输出,使得这些信息在当前的计算中对两个任务都是可用的。

我们还合并了来自DS和DD的信息。yds 表示输入序列的整体的情绪,这可能对AS有帮助。

DS和DD产生的注意权重 aidsaidd 分别反映了第i个令牌的情感相关度和领域相关性。与情绪相关或领域相关的标记更有可能是观点词或方面词。此信息对于方面级任务很有用。

4.4 learning

方面级问题的实例只有方面级别的标签,而文档级问题的实例只有文档标签。IMN在方面级和文档级实例上交替训练。

方面级损失函数如下:
在这里插入图片描述
T 表示消息传递机制中的最大迭代次数,Na 表示方面级训练实例的总数,ni 表示第 i 个训练实例中包含的令牌数,yi,jae(yi,jas) 表示AE(AS)黄金标签的一个one-hot编码。l 是应用于每个令牌的交叉熵损失。

在模型训练过程中,我们只考虑有情感标注的aspect term的AS预测,以计算AS损失,而忽略其他令牌上预测的情绪。

文档级损失函数:
在这里插入图片描述
其中Nds和Ndd分别记录DS和DD的训练实例数。yidsyidd 表示黄金标签的一个one-hot编码。

训练文档级实例时,不能使用消息传递迭代

因此,我们先在文档级实例(最小化损失函数)上对网络进行预训练,以便DS和DD可以做出合理的预测。

然后用比值 r 对网络进行方面级实例和文档级实例的交替训练,使 LaLd 最小化,训练过程算法如下:
在这里插入图片描述
Da 表示方面级的训练集

DdsDdd 表示DS和DD的训练集,Ddd 至少包含两个域的评审文档,其中 yids 表示域标签。

因为他们在语义上是相关的,因此可以从DD和DS转移到AE和AS中。

预训练结束后,我们固定参数 θds和θdd,不希望他们受到少量的方面级训练数据的影响。

5 实验

数据集:aspect-level
在这里插入图片描述
文档级数据集:Yelp restaurant domain, and the other is from the Amazon electronics domain

实验结果:
这里使用F1来衡量方面项提取和意见项提取的性能。使用 F1-αF1-o 来表示。使用精度(accuracy)和F1来衡量AS的性能,分别用 acc-sF1-s 来表示。

计算综合任务的F1分数,表示为F1-I
在这里插入图片描述

  相关解决方案