ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

基于特定实体的文本情感分类总结(PART III)

2021-03-31 21:02:58  阅读:257  来源: 互联网

标签:word target attention PART aspect LSTM 文本 III 句子


0. 写在前面

继续之前的系列:

【论文串烧】基于特定实体的文本情感分类总结(PART I)

基于特定实体的文本情感分类总结(PART II)

记录一些关于ABSA问题的paper

1. Targeted Aspect-Based Sentiment Analysis via Embedding Commonsense Knowledge into an Attentive LSTM(Ma/AAAI-18)

作者在对论文review之后给出了几个仍未解决的问题:

  • target包含多个实体或单词时,现有的研究都是认为各部分重要性一致并且简单地计算平均值作为向量表示;

  • 使用hierarchical attention建模得到的target和情感词之间的关联是一个黑箱;

  • 未引入包含更多信息的外部知识

  • 全局的attention会编码与任务不相关的信息

对此,文章给出了三个解决方案:

  • .创建了多层attention模型来分别明确计算目标词(target)和整个句子;

  • 将外部知识引入传统LSTM网络;

  • 将常识性情感知识融入深层神经网络。

整体框架如下所示,主要包括两个组分:sequence encoderhierarchical attention

图片

  1. word embedding: 原始句子

图片变为向量表示图片

  1. sequence encoder: 将向量送入双向LSTM得到每一个词的隐状态表示图片

  2. Target-Level Attention: 对句子中的所有target实例(如上图中的棕色框框)做self-attention获得target word attention representation;

  3. Sentence-Level Attention: 把步骤3得到的target words attention 向量和步骤2得到的所有隐状态向量给contact起来,再做一次attention;

  4. Output: 将步骤4得到的attention向量经过一个dense层和一个softmax层,得到最终的分类概率输出。

Commonsense Knowledge:SenticNet 
引入外部知识库SenticNet,含有50000个实例,每个实例对应一系列情感属性。情感属性提供了每个实例的表示,也将各个aspect与其情感链接起来。

图片

Sentic LSTM
为了能够有效利用secticnet,本文对LSTM做了延伸:输入门中情感概念的存在可以防止记忆细胞受到与已有知识冲突的输入标记的影响。同样,输出门使用这些知识过滤存储在记忆网络中的无关信息,调控模型是否使用情感知识。
图片


2、Aspect Level Sentiment Classification with Deep Memory Network(Tang/EMNLP2016)

文章借鉴了来自QA领域的记忆网络解决ABSA问题。Memory Network提出的目的之一就是为了解决RNN、LSTM等网络的记忆能力较差的问题。它维护了一个外部的记忆单元用于存储之前的信息,而不是通过cell内部的hidden state。关于Memory Network更为详细的解读可以参考Memory Networks论文串烧。整体解决方案如下图所示

图片

Embedding

输入是一个原始句子,需要将其映射到向量空间后输入到模型中。常规操作,将context word和aspect word分别用向量表示

Attention

包括了两部分:content attention和location attention

content attention

就是传统的Key Value Query的形式
图片图片图片

location attention

我们从直观上来看,通常情况下,与aspect word距离较近的context word对于相应aspect的情感倾向的判断更重要。于是就有了location attention。所谓的location attention其实就是把context word的位置信息加入到memory中。文中定义了四种方式来encode位置信息:

  • 方式一:图片图片

  • 方式二:图片图片

  • 方式三: v_{i} 作为模型的一个参数,随机初始化,通过梯度下降学习得到。图片

  • 方式四: 与方式三类似,加了一层sigmoid。图片

Loss

图片

CODE HERE


3、Recurrent Attention Network on Memory for Aspect Sentiment Analysis(Tencent AI Lab/EMNLP 2017)

论文采用多层注意力机制结合记忆网络去捕获句子中target word 与context word之间的联系。整体框架如下,主要分为

  • input module,

  • memory module,

  • position-weighted memory module,

  • recurrent attention module,

  • output module.

    图片

BLSTM for Memory Building

在Tang(2016)的论文中的记忆网络只是简单地将word embedding作为memory,并不能准确识别例如Except Patrick, all other actors don’t play well这类的实体情感。于是在本文中引入双向LSTM来捕获这之间的深层次关联。
如果有L层BLSTM叠加,最终得到的memory vector表示为图片

Position-Weighted Memory

当然,作者认为target word在输入句子中的位置信息也非常重要,更靠近target word的context word应该具有更高的重要性。图片图片图片图片

Recurrent Attention on Memory

这一部分的目的就是利用之前计算好的memory来表示出情感,然后用于分类。和上一篇论文一样,使用GRU和堆叠的attention。


4、Aspect Based Sentiment Analysis with Gated Convolutional Networks(Xue/ACL2018)

针对ABSA任务,之前研究效果较好的模型都是采用了LSTM+attention机制,这类模型过于复杂且参数较多训练起来比较费时。

LSTM processes one token in a step. Attention layer involves exponential operation and normalization of all alignment scores of all the words in the sentence. Moreover, some models needs the positional information between words and targets to produce weighted LSTM, which can be unreliable in noisy review text.

因此作者提出一种基于门控机制的可并行训练的CNN模型。

  • 将原始输入embedding后送入包含两个卷积操作的卷积层,第一个卷积对句子提取sentiment feature,第二个卷积额外加上了aspect embedding提取aspect feature,而且两者使用的非线性激活函数也不一样

图片图片

  • 将上述得到的两个输出按位相乘,图片

    图片


    以上是针对Aspect-Category Sentiment Analysis(ACSA),如果是Aspect-Term Sentiment Analysis(ATSA)问题呢,我们没有给定的aspect词,每个句子需要预测的target term都不同,这时候可以用另外一个CNN来提取target term的representation

    图片

CODE HERE


5、CAN---Constrained Attention Networks for Multi-Aspect Sentiment Analysis(2018)

本文的创新点有以下几个:

  • 引入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)任务

模型的整体框架如下:

image.png

Task-Specific Attention Layer

输入为图片形式,其中S为句子,图片分别表示句子中的aspect及其对应的polarity。

前面的embedding和LSTM层就不具体介绍了。来看看多任务学习层,主要包括:

  • ALSC Attention Layer目的是针对不同的aspect学习到不同的attention weights。输入是LSTM层输出H和句子中的aspect U图片

  • ACD Attention Layer目的是学习句子中包含的aspect类别。输入是LSTM层输出H和aspect set图片

Regularization Layer

Regularization Layer用于对前面得到的attention weights加上限制,使得模型可以同时处理多个aspect。
注意:该层只在训练阶段有效,因为需要知道真实标签,在预测阶段直接略过该层。

  • Sparse Regularization用于限制每个aspect只关注句子中较少的词。以ALSC任务得到的attention weights a_{i}为例

图片 ,系数正则项定义为:图片

  • Orthogonal Regularization用于限制每个aspect关注句子中的不同部分,使其尽量不重叠。将两个任务得到的attention weights分别表示成二维矩阵和,然后计算正则项

  • image.png
  • 图片

图片

Task-Specific Prediction Layer

  • ALSC Prediction

图片
图片图片

  • ACD Prediction

图片图片

Loss

  • ALSC Loss 
    图片

  • ACD Loss

图片

所以总体的损失表示为图片其中正则项R可以是前面的图片


原文链接:

https://blog.csdn.net/Kaiyuan_sjtu/article/details/89850685


标签:word,target,attention,PART,aspect,LSTM,文本,III,句子
来源: https://blog.51cto.com/15060464/2678591

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有