2017acl---Linguistically Regularized LSTM for Sentiment Classification笔记

.下面是关于一篇论文的报告

9.报告内容主要来自一篇2017的acl会议的情感分析论文,文章来源的机构是清华大学

10.情感分类是自然语言处理领域的一个经典问题,它往往是将给定的文本根据情感分为positive或negative。

有些场景下,需要对情感进行更加细粒度的分类,例如将positive区分为strong positive和weakly positive。

例如,这三句话中,第一句属于强正性情感,第二句属于中性情感,第三句属于弱负性情感。zhe

 

11.接下来是研究现状

12.近年来,神经网络模型广泛地应用在情感分类任务上。主要分为三个流派:

第一类是循环神经网络,以及一些变种,例如GRU、LSTM等

第二类是卷积神经网络,借鉴了图像处理领域的思想,在句子上通过卷积抽取feature

第三类是递归神经网络,基于语法树进行合成,以及它的变种Tree-LSTM,它在一个著名的数据集SST上达到了最优的性能。

另一方面,一些资源也被应用在情感分类任务中。最初,情感分类任务只通过情感词典来完成,后续又陆续有一些工作将否定词、情感增强词加入到情感分类的工作中,并得到了不错的性能提升。

13.以情感词典为例,应用比较广泛的有2004年提出的情感词典和MPQA词典,他的主要过程有

1.获取reviews,并进行文本处理

          获取评论属于爬虫工作,关于文本处理,主要在于分词和词性标注(POS)

2..通过association mining 获取评论中产品的特征

这篇论文只关注那些作为名词出现在评论中的特征。因此本文即选取一些出现频率较高的名词或名词词组作为特征。采用的方法是association mining,作者基于假设即评论者的选词相近,且频繁项往往能代表特征。由于过程简单,因此选取到的features可能会质量不好,因此作者还分别进行紧凑修剪和冗余修剪。紧凑修剪是找出没有按单词顺序排列的词组,剔除出去,冗余修剪是按features的p-support值排列,剔除低于阈值(本文设置为3)的单词或词组。

 

3.获取顾客评论中各句子的情绪值

       句子的情绪值由词语的情绪值决定,如果词语的情绪值总和为正,那么情绪为positive,如果词语的情绪值总和为负,那么情绪为negative。那么首先就是要判断各词语的情绪值,判断词语的情绪值主要通过判断评论中形容词的情绪值来确定,作者先获得评论中的形容词 list,然后设定30个常见形容词作为种子 list,即已判断好情绪值的形容词,然后根据wordNet逐步判断出形容词list中形容词的情绪值,在判断的过程中已判断的形容词会逐步加到种子list中,从而得到所有词语的情绪值。当所有词语情绪值总和为0时,可以用前一个句子的情绪值替代。

4.计算各特征的两类情绪的评论数量,从而形成产品特征的summary。

 

 

14.尽管各种各样的神经网络模型已经提出,然而,之前的模型要么十分依赖短语级别的注释,当训练时只有句子级别的注释时大多数有显著地退化表现;要么不能充分的使用语言的资源,比如情感词典,否定词,强度词

 

 

15.下面我将介绍论文的研究内容

16.首先,我们来看一个例子。我们用单向LSTM从右往左合成 It‘s not an interesting movie。

从时刻1到时刻2,输入了一个情感词interesting,仅凭直觉就可以断言,代表着interesting movie的情感分布p2,一定比movie的情感分布p1有一个偏移量,这个偏移量应该与情感词interesting保持一致。所以,在我们的模型中,我们使用一个情感词正则化去约束p1和p2的关系,当然这个正则是与interesting相关的,并且是可学习的。

从时刻2到时刻3,输入了一个非情感词,凭着我们的先验知识,an interesting movie与interesting movie的情感分布应该是近似的,所以我们使用一个非情感词正则化去约束p2和p3的关系。

从时刻3到时刻4,输入了一个否定词not,我们知道加入not后情感应该会发生很大的变化,通常是一定程度的反转。所以我们为否定词not学习一个否定词正则化,并用它去约束p3和p4的关系。

 

下面我们将详细介绍每一种正则是如何约束相邻的情感分布的。

 

17.NSR的基本想法是,如果相邻的两个词都是不表达意见的词,那么这两个词的情感分布应该是比较相近的。

将这种想法结合到模型中,有如下定义:

 

其中M是边界参数,Dkl(p,q)是对称KL散度,pt是要预测的位置t处的词的分布,它的向量表示是ht。

KL散度是用来衡量两个函数或者分布之间的差异性的一个指标,两个分布的差异越大,KL散度值越大;两个分布的差异越小,KL散度值越小;当两个分布相同时,KL散度值为0。

这里所用的对称KL散度定义如下:其中p,q是在情感标记l上的分布,C是标记的数量。

所以我们可以看到,当相邻的两个词分布较近,KL散度小于M时,NSR的值为0;随着两个词的分布差异增大时,NSR值变大。

 

18.SR的基本想法是,如果当前词是情感词典中的词,那么它的情感分布应该和前一个词以及后一个词有明显不同。

例如:This movie is interesting.

在位置t=4处的词“interesting”是一个表达正向情感的词,所以在t=4处的情感分布应该比t=3处要积极得多。这个叫做情感漂流。

为了将这种想法结合到模型中,作者提出一个极性漂流分布sc,情感词典中的每一类词,有一个漂流分布值sc。例如,情感词典中的词可能划分为以下几类:strong positive,weakly positive,weakly negative和strong negative,对于每一类情感词,有一个漂流分布,由模型学习得到。

SR定义如下:

 

 

所以我们可以看到,当前词t是情感词典中的词的时候,前一个位置t-1的情感分布加上漂流分布之后,如果与位置t的分布相近的话,SR值为0,随着其分布差异的增大,SR值增大。

19.否定词通常会反转文本的情感倾向(从正向变为负向,或者是从负向变为正向),但是具体情况是跟否定词本身和它所否定的对象有关的。

例如:“not good”和“not bad”中,“not”的角色并不一样,前者是将正向情感转为负向情感,后者是将负向情感转为正向情感。

对否定词的处理,本文是这样做的:针对每一个否定词,提出一个转化矩阵Tm,这个矩阵是模型自己学出来的。如果当前词是否定词的话,那么它的前一个词或者后一个词经过转化矩阵之后的分布与当前词的分布应该是比较近的。

 

 

我们可以看到,如果在当前词是否定词的情况下,如果它的前一个词或者后一个词与当前词的分布较近,那么NR的值比较小。

 

20.程度副词改变文本的情感强度(比如从positive变为a litter positive),这种表达对细粒度情感分析很重要。

程度副词对于情感倾向的改变和否定词很像,只是改变的程度不同,这里也是通过一个转化矩阵来定义IR的。如果当前词是程度副词的话,那么它的前一个词或者后一个词,经过转化矩阵之后得到的分布,应该与当前词的分布比较接近。

21.我们将语言正则损耗插入到原始的交叉熵损失中:其中,yi是样本的实际分布,pi是预测得到的样本分布,Lti是上述规则中的一个或者多个的组合,i是句子的索引,t是位置的索引。

 

 

模型训练的目标是最小化损失函数,让样本的实际分布与预测分布尽可能接近的同时,让模型符合上述四种规则。

22.下面是实验结果分析

23.论文的实验数据有两项,其中Movie Reviews,包括negative和positive两类;

 

 

而斯坦福的sst数据集,包括very negative,negative,neural,positive,very positive五个类别。

24.从实验结果可以看出,

LR-LSTM和BI-LSTM与标准LSTM相比都有较大提升;

LR-BI-LSTM在句子级标注数据上的结果与BI-LSTM在短语级标注数据上的结果基本持平,通过引入LR,可以减少标注成本,并得到差不多的结果;

本文的LR-LSTM和LR-BI-LSTM和Tree-LSTM的结果基本持平,但是本文的模型更简单,效率更高,同时省去了短语级的标注工作。

25.从实验结果可以看出,

NSR和SR对提升模型性能最重要,NR和IR对模型性能提升重要性没有那么强,可能是因为在测试数据中只有14%的句子中含有否定词,只有23%的句子含有程度副词

26.为了进一步研究NR和IR的作用,作者在又分别在仅包含否定词的子数据集(Neg.Sub)和仅包含程度副词的子数据集(Int.Sub)上做了对比实验,实验结果如下图,

从实验结果可以看出,

在这些子数据集上,LR-Bi-LSTM的性能优于Bi-LSTM;

去掉NR或者IR的约束,在MR和SST两个数据集上模型性能都有明显下降

27.为了更好的揭示否定词的作用,我们对比一个短语对的带和不带否定词的预测的情感分布。这个情感分析运行在MR上的结果如图。每个点表示一个短语对,(例如,<interesting, not interesting>),其中x轴表示表示一个短语不带否定词的正性分数,y轴表示对于短语带否定词的正性分数。

首先,没有点在右上和左下块,表明否定词一般转换强正向或强负性短语到其他极性。这样的短语包括not very good, not too bad。

其次,左上和右下的点分别表明否定词的情感改变结果:改变负性到正性和正性到负性。这样的短语包括never seems hopelessly ,, not interesting等等。还有一些正性或负性短语转换到中性情感的点对例如 not so good, and not too bad。

最后,点在中心表明中性短语保持中性情感,不管有没有伴随着否定词。这样的短语包括not at home, not here,其中否定词修饰非情感词。

 

 

28.为了进一步揭示强度词的作用,论文在SST数据集上进行实验,我们展示矩阵表明在被强化词修正以后情感如何转换。每个矩阵ij中的数据表明有多少情感标记被预测为i的短语由于强度词改变被预测为标记j。例如,矩阵m_21的数字20在第二个矩阵,表示这里有20个短语预测为负向类别,但是在被强度词修正后预测改变到强负向。

第一个矩阵的结果表明,对于most,有21/21/13/12个短语在被强度词修正后情感转换了,从负向到强负向,正向到强正向,中性到负向,中性到正向。

还有许多短语在被强度词修正后保留原情感,对于强正向或负向短语,短语被强度词修正依然保持强情感。对于左边的短语,保持强度的有三个分类:首先被强度词修正的词是非情感词,例如most of us, most part;第二,强度词不够强到转换情感,例如 most complex;第三,我们的模型伴随强度词没有转换情感

29.这篇文章通过损失函数将语言学规则引入现有的句子级情感分析的LSTM模型。在没有增大模型复杂度的情况下,有效的利用情感词典、否定词和程度副词的信息,在实验数据集上取得了较好效果。随着深度学习的发展,人们慢慢忽略了宝贵的经典自然语言资源,如何有效将这部分知识有效地融入到深度学习模型中是一个非常有意义的工作。

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值