继续来看基于Aspect的情感分析模型总结第三部分,回顾一下之前:
Attentional Encoder Network for Targeted Sentiment Classification[1]
与以往大多数RNN+Attention的思路不同,作者在这篇论文里给出了注意力编码网络(Attentional Encoder Network,AEN),避免了RNN系模型的缺点(难以并行化,需要大量数据/内存/计算);同时提到先前的工作大都忽略了标签不可信问题(label unreliability issue),这里在损失函数中引入了标签平滑正则项。模型整体框架如下

1.1 Embedding Layer
有两种embedding的方式
使用glove预训练embedding
使用bert预训练embedding:注意将输入转化成bert需要的形式, 即
[CLS] + context + [SEP]和[CLS] + target +[SEP]
1.2 Attentional Encoder Layer
注意力编码层和LSTM层的作用一样,都是计算输入的语义表示得到隐状态矩阵。这一层包括两个子模块:
「Multi-Head Attention:」 MHA就是在attention is all you need那篇论文里的多头注意力机制。这里对context采用的是「Intra-MHA」,即「self-attention」;对target采用的是「Inter-MHA」, 即传统意义上的attention。
「Point-wise Convolution Transformation(PCT):」 逐点卷积,即卷积核的尺寸为1,对上述得到的两个attention encoder进行一下操作,
1.3 Target-specific Attention Layer
将attention encoder后得到的关于context和aspect信息的向量表示 和 再做一次attention操作得到具有更多交互信息的向量,然后与 和 pool以后的向量拼接得到最终的输入表示送入softmax层进行情感分析
1.4 Loss Function
前面提到为了解决标签不可信任问题(比如中性情感是一种非常模糊的情感表达,具有中性情感标签的训练样本就是属于不可信任的),引入了一种新的损失计算Label Smoothing Regularization (LSR),关于LSR的深入理解这里不详细说了可以参考知乎问题:Label Smoothing Regularization_LSR原理是什么?[2]
1.5 试验分析
作者非常nice地开源了论文对应的代码库:songyouwei/ABSA-PyTorch[3] 而且里面还有很多其他模型的实现。赞!
Transformation Networks for Target-Oriented Sentiment Classification[4]
作者提出用attention去提取context和aspect之间的语义相关性存在一定的缺陷,并列举了一个例子:
❝“This dish is my favorite and I always get it and never get tired of it.” 这句话中,attention机制会提取出相对于dish不相关的词语比如"never","tired"等。
于是提出可以利用CNN来取代attention来提取context中相对重要的信息,同时对朴素CNN进行了进一步的处理使其适合该任务,提出了「Target-Specific Transformation Networks (TNet)」
2.1 Bi-LSTM Layer
将文本的上下文信息融入到word的向量表示中是非常重要的
2.2 Context-Preserving Transformation(CPT)
模型再往上一层是Transformation Layer,是由多个CPT模块叠加而成。单独的CPT模块结构如下所示
CPT分为两个部分,Target-Specific Transformation(target转换机制)和Context-Preserving Mechanism(上下文保存机制)
「Target-Specific Transformation」用于动态地生成target的向量表示(这是论文的创新点)。首先将target表示通过一个Bi-LSTM来获得其抽象表示,再将该表示与上一层每个context词的表示做相似度计算,从而调整target的表示。
「Context-Preserving Mechanism」的提出是因为在经过TST的非线性转化之后,现有的向量表达可能已经丢失了原来Bi-LSTM层输出的信息,作者提出了两种解决方案:
Lossless Forwarding:直接将前一层的输出加入到这一层的输出上
Adaptive Scaling:与LSTM中门控机制类似的自适应保存机制,通过门控单元来控制当前层和上层输出到下层的信息。
2.3 Convolutional Layer
作者对于卷积层提出了利用观点词与目标词的距离的改进措施。作者为每一个位置计算一个位置特征
其中C是超参,相当于设置了一个窗口,在这个窗口范围内进行计算。k是target第一个词的位置,m是target的长度,i是当前词的位置。
然后将距离特征融合到词特征上:
再进行卷积和最大池化的操作最后送入softmax层进行情感判定2.4 试验分析
CAN---Constrained Attention Networks for Multi-Aspect Sentiment Analysis(2018)[5]
本文的创新点有以下几个:
引入
orthogonal regularization,使得对于不同的aspect,attention weight聚焦在句子不同的部分;引入
sparse regularization,使得每个aspect的attention weight只关注句子中的几个单词;不同于之前大多数研究一次只得出一个aspect的sentiment,本文可以同时得到句子中所有aspect的sentiment;
引入
multi-task多任务学习,在学习aspect level sentiment classification(ALSC)的同时学习aspect category detection (ACD)任务
模型的整体框架如下:
3.1 Task-Specific Attention Layer
输入为 形式,其中 为句子, 分别表示句子中的aspect及其对应的polarity。
前面的embedding和LSTM层就不具体介绍了。来看看多任务学习层,主要包括:
「ALSC Attention Layer」目的是针对不同的aspect学习到不同的attention weights。输入是LSTM层输出 和句子中的aspect
「ACD Attention Layer」目的是学习句子中包含的aspect类别。输入是LSTM层输出 和aspect set
3.2 Regularization Layer
Regularization Layer用于对前面得到的attention weights加上限制,使得模型可以同时处理多个aspect。「注意:该层只在训练阶段有效,因为需要知道真实标签,在预测阶段直接略过该层。」
「Sparse Regularization」用于限制每个aspect只关注句子中较少的词。以ALSC任务得到的attention weights 为例 ,系数正则项定义为:$$R_s}=\left^{L} \alpha_{k l}^{2}-1\right|$$
「Orthogonal Regularization」用于限制每个aspect关注句子中的不同部分,使其尽量不重叠。将两个任务得到的attention weights分别表示成二维矩阵 和 ,然后计算正则项
3.3 Task-Specific Prediction Layer
「ALSC Prediction」
「ACD Prediction」
3.4 Loss
「ALSC Loss」
「ACD Loss」
所以总体的损失表示为
本文参考资料
[1]
Attentional Encoder Network for Targeted Sentiment Classification: https://arxiv.org/abs/1902.09314
[2]Label Smoothing Regularization_LSR原理是什么?: https://www.zhihu.com/question/61971817
[3]songyouwei/ABSA-PyTorch: https://github.com/songyouwei/ABSA-PyTorch/tree/aen
[4]Transformation Networks for Target-Oriented Sentiment Classification: https://arxiv.org/abs/1805.01086
[5]CAN---Constrained Attention Networks for Multi-Aspect Sentiment Analysis(2018): https://arxiv.org/pdf/1812.10735.pdf
- END -

个人微信:加时请注明 (昵称+公司/学校+方向)


本文深入探讨了情感分析领域的前沿模型,包括Attentional Encoder Network、Transformation Networks和Constrained Attention Networks,解析了各模型的设计理念、关键技术及实验效果,旨在帮助读者全面理解基于Aspect的情感分析。
621

被折叠的 条评论
为什么被折叠?



