摘要
本文主要讨论句子级情感分类。虽然近来已经有多种神经网络模型被提出,但是,以往的模型要么依赖于昂贵的短语级标注,大多数模型在仅用句子级标注训练时性能明显下降;要么没有充分运用语言资源(如情感词库、否定词、强度词)。在本文中,我们提出了用句子级注释训练的简单模型,同时也尝试对情感词库、否定词和强度词的语言作用进行建模。结果表明,我们的模型能够捕捉情感词、否定词和强度词在情感表达中的语言作用。
1 介绍
情感分类的目的是将文本划分为情感类,如正面或负面,或更细粒度的类,如非常正面、正面、中性等。为此已经有多种方法,如基于词典的分类(Turney,2002;Taboada等,2011),以及早期基于机器学习的方法(Pang等,2002;Pang和Lee,2005),最近还有神经网络模型,如卷积神经网络(CNN)(Kim,2014;Kalchbrenner等, 2014;Lei等,2015)、递归自动编码器(Socher等,2011,2013)、长短期记忆(LSTM)(Mikolov,2012;Chung等,2014;Tai等,2015;Zhu等,2015)等。
尽管这些神经模型取得了巨大的成功,但以往的研究还存在一些缺陷。首先,树形结构模型,如递归自动编码器和Tree-LSTM(Tai等,2015;Zhu等,2015),依赖于解析树形结构和昂贵的短语级标注,当只用句子级标注训练时,其性能大幅下降。其次,语言学知识,如情感词典、否定词或否定词(如,不是,从来没有)、强度词或强化词(如,非常,绝对),在神经模型中还没有得到充分的应用。
本研究的目标是开发简单的序列模型,同时也试图充分运用语言资源来帮助情感分类。首先,我们试图开发简单的模型,不依赖于解析树,不需要短语级注释,因为在现实世界的应用中,短语级注释过于昂贵。其次,为了获得有竞争力的性能,简单模型可以从语言资源中获益。本文将讨论三种类型的资源:情感词典、否定词和内密词。情感词典提供了一个词的先验极性,这对确定长文本(如短语和句子)的情感极性很有用。否定词是典型的情感转移词(Zhu等,2014),它不断改变情感表达的极性。强化器会改变修改后文本的价位,这对细粒度的情感分类很重要。
为了建立情感、否定、强度词的语言作用模型,我们的中心思想是在序列模型中,将当前位置(注意,在序列模型中,当前位置的隐藏状态也会编码前进或后退的上下文)的预测情感分布与上一个或下一个位置的预测情感分布之间的差异规律化。例如,如果当前位置是否定词不(not),否定词应该相应地改变下一个位置的情绪分布。综上所述,我们的贡献在于两个方面:
-我们发现,对情感、否定和强度词的语言作用进行建模可以增强句子级情感分类。我们通过在序列LSTM模型上施加语言学启发的正则化器来解决这个问题。
-与以往依赖解析结构和昂贵的短语级注释的模型不同,我们的模型简单而高效,但性能与最先进的模型相当。
本文的其余部分组织如下。在下一节中,我们将对相关工作进行调查。在第3节中,我们简要介绍了LSTM和双向LSTM的背景,然后在第4节中详细描述了情感/否定/强度词的语言正则器。实验在第5节中介绍,结论在第6节中介绍。
2 相关工作
2.1 情绪分类的神经网络
有许多神经网络被提出用于情感分类。最引人注目的模型可能是递归自动编码器神经网络,它从子词组递归地建立句子的表示(Socher等,2011,2013;Dong等,2014;Qian等,2015)。这种递归模型通常依赖于输入文本的树形结构,为了获得有竞争力的结果,通常需要对所有子词组进行标注。序列模型,例如卷积神经网络(CNN),不需要树状结构的数据,在情感分类中被广泛采用(Kim,2014;Kalchbrenner等人,2014;Lei等人,2015)。由于长短期记忆模型能够对前缀或后缀上下文进行建模,因此长短期记忆模型也是学习句子级表示的常见方法(Hochreiter和Schmidhuber,1997)。LSTM可以普遍应用于顺序数据,也可以应用于树状结构数据(Zhu等,2015;Tai等,2015)。
2.2 应用语言学知识进行情感分类
语言知识和情感资源,如情感词典、否定词(not、never、nither等)或否定词,以及强度词(very、extremely等)或强化词,对一般的情感分析很有用。
情感词典(Hu和Liu,2004;Wilson等人,2005)通常定义了一个词条的先验极性,对于基于词典的模型(Turney,2002;Taboada等人,2011)和机器学习方法(Pang和Lee,2008)很有价值。最近有一些从社会数据自动构建情感词典的工作(Vo和Zhang,2016)和多语言的工作(Chen和Skiena,2014)。在(Teng et al.,2016)中可以看到一个值得注意的工作,将情感词典超级化,该工作将一个句子的情感得分视为否定词和情感词的先前情感得分的加权和,其中权重由神经网络学习。
否定词在修饰文本表达的情感方面起着至关重要的作用。一些早期的否定词模型采用了反转假设,即否定词反转了被修改文本的情感值的符号(Polanyi和Zaenen,2006;Kennedy和Inkpen,2006)。移位假说假设否定者以恒定的数量改变情感值(Taboada等,2011;Liu和Seneff,2009)。由于每个否定者可以以不同的方式影响修改后的文本,因此,恒量可以扩展为否定者特定的量(Zhu等,2014),进一步,否定者的影响也可以取决于修改后文本的语法和语义(Zhu等,2014)。其他否定词建模的方法可以参见(Jia等,2009;Wiegand等,2010;Benamara等,2012;Lapponi等,2012)。
一个词组的情感强度表示相关情感的强度,这对于精细的情感分类或评级相当重要。强度词可以改变修改文本的价位程度(即情感强度)。在(Wei等,2011)中,作者提出了一个线性回归模型来预测内容词的价值。在(Malandrakis等,2013)中,提出了一个基于内核的模型,结合语义信息来预测情感分值。在SemEval-2016任务7子任务A中,提出了一个采用对偶策略的学习到排序模型来预测情感强度得分(Wang等,2016)。语言强度并不局限于情感或强度词,有作品将低/中/高强度等级分配给形容词,如好的、好的、伟大的(Sharma等,2015)或可分级词(如大的、巨大的、巨大的)(Shivade等,2015)。
在(Dong等人,2015)中,提出了一个情感解析器,作者研究了当一个短语被否定词或加强词修改时,情感如何变化。
将语言正则化应用到文本分类中可以看到(Yogatama and Smith,2014)引入了三种基于解析树、主题和层次词簇的语言动机结构正则化器,用于文本分类。我们的工作不同的是,(Yogatama and Smith,2014)将组套索正则化器应用于模型参数的逻辑回归,而我们的正则化器则应用于KL分歧的中间输出。
3 长短期记忆网络
3.1 长短期记忆(LSTM)
长短期记忆已经被广泛采用于文本处理。简而言之,在LSTM中,隐藏状态ht和记忆单元ct是它们之前ct-1和ht-1以及输入向量xt的函数,或形式上如下:
隐藏状态ht∈Rd表示位置t的表示,同时也编码了位置的预让上下文。关于LSTM的更多细节,我们推荐读者参考(Hochreiter和Schmidhuber,1997年)。
3.2 双向LSTM
在LSTM中,每个位置的隐藏状态(ht)只对前向的前缀上下文进行编码,而后向的上下文则不考虑。双向LSTM(Graves等人,2013)利用两个平行通道(向前和向后),将两个LSTM的隐藏状态并联起来作为每个位置的表示。前向和后向LSTM分别制定如下:
其中g(LSTM)与式(1)中的相同。特别是两个LSTM中的参数是共享的。整个句子的表示方式是[h→n,h←1],其中n是句子的长度。在每一个位置t,新的表示方式是ht=[h→t,h←t],它是前向LSTM和后向LSTM的隐藏状态的并集。这样,前向和后向语境可以同时考虑。
4 语言规范化的LSTM
本文的中心思想是通过对句子相邻位置的输出进行正则化,来模拟情感、否定和强度词在句子级情感分类中的语言作用。例如在图1中,在句子 "It’s not an interesting movie “中,”*an interesting movie(星号表示当前位置。)"和 "*interesting movie "处的预测情感分布应该很接近,而 “*interesting movie “处的预测情感分布应该与前面的位置(向后)(”*movie”)有很大不同,因为看到了一个情感词(“interesting”)。
图1:语言正则化LSTM的概述。请注意,由于大多数否定词和加强词都在修饰它们的下面的词,所以我们应用后向的LSTM(从右到左)来编码句子。
我们基于以下语言学观察,提出了一个通用正则化器和三个特殊正则化器:
非情感正则器(Non-Sentiment Regularizer):如果相邻的两个位置都是非观点词,那么这两个位置的情感分布应该是相互接近的。虽然这并不总是正确的(比如肥皂电影),但这个假设在大多数情况下是成立的。
情绪正则器(Sentiment Regularizer):如果该词是词库中发现的情绪词,那么当前位置的情绪分布应该与下一个或上一个位置的情绪分布有显著不同。我们用情感类特定的移位分布来处理这一现象。
否定词规则化(Negation Regularizer):否定词,如 "不 "和 “从不”,是关键的情感转移器或转换器:一般来说,它们将情感的极性从积极的一端转移到消极的一端,但有时取决于否定词及其所修饰的词。否定正则器通过特定否定词的转换矩阵来模拟这种语言现象。
强度正则器(Intensity Regularizer):强度词,如 "非常 "和 "极度 "会改变情感表达的价位:例如,从积极到非常积极。模型化这种效果对于精细化的情感分类是相当重要的,强度正则器是通过特定词的变换矩阵来制定这种效果。
更正式地说,位置t的预测情绪分布(pt,基于ht,见式5)应该与前面(t - 1)或后面(t + 1)位置的情绪分布进行语言上的正则化。为了强制模型产生一致的预测,我们在原来的交叉熵损失中插入一个新的损失项:
其中yˆi为句子i的黄金分布,yi为预测分布,Lt,i为上述正则器或这些正则器在句子i上的组合,α为正则化项的权重,t为句子中的词位。
请注意,我们不考虑否定词和强度词的修饰跨度,以保持所提出的模型的简单性。否定范围解析是另一个复杂的问题,已经被广泛研究(Zou等人,2013;Packard等人,2014;Fancellu等人,2016),这超出了本工作的范围。相反,我们求助于序列LSTMs来编码给定位置的周围上下文。
4.1 非情感正则化器(NSR)
这个正则化器约束,如果额外的输入词xt不是一个情感词,那么相邻位置的情感分布不应该有太大的变化,形式上如下:
其中,M是余量的超参数,pt是位置t状态下的预测分布,(即ht),DKL(p||q)是一个对称的KL分歧,定义如下:
其中p、q是在情感标签l上的分布,C是标签的数量。
4.2 情感正则化器(SR)
情感正则器约束,如果输入词是一个情感词,那么相邻位置的情感分布应该有相应的漂移。我们再来看看 "这不是一部有趣的电影 "这个例子。在位置t=2(向后的方向),我们看到了一个正向的词 “有趣”,所以预测的分布会比位置t=1(电影)的分布更正向。这就是情绪漂移的问题。
为了解决情感漂移问题,我们提出了一个极性偏移的分布sc∈RC,适用于词典中定义的每个情感类。例如,一个情感词典可能有强积极、弱积极、弱消极、强消极等类标签,对于每个类,都有一个偏移分布,这个偏移分布将被模型学习。情感正则器指出,如果当前的词是一个情感词,就应该观察到与前一个位置相比,更详细的情感分布漂移。
其中,p是考虑位置t处状态对应的移位情绪分布后的漂移情绪分布,c(xt)是词xt的先验情绪类,sc∈θ是一个需要优化的参数,但也可以用先验知识设置固定。需要注意的是,这样一来,同一情感类的所有词都共享相同的漂移分布,但在精细化的环境下,如果有大规模的数据集,我们可以为每个情感词学习一个漂移分布。
4.3 否定正则化器(NR)
否定正则器接近否定词如何转移修改文本的情感分布。当输入的xt是一个否定词时,情感分布应该被相应地转移/反转。然而,否定词的作用比由情感词的作用要复杂得多,以考试为例,"不好 "和 "不坏 "中的 "不 "字在极性变化中的作用是不同的。前者将极性变为消极,而后者则变为中性而非积极。
为了尊重这种复杂的否定效应,我们为每个否定词m提出一个变换矩阵Tm∈RC×C,该矩阵将被模型学习。正则化器假设如果当前位置是否定词,则当前位置的情绪分布应该与下一个或上一个位置的情绪分布接近,并进行变换。
其中p(NR)t-1和p(NR)t+1是转化后的情感分布,Txj∈θ是一个否定词xj的转化矩阵,是训练过程中要学习的参数。我们总共为m个否定词训练了m个变换矩阵。这种针对否定词的转化与每个否定词有其独立的否定效果的发现是一致的(Zhu等,2014)。
4.4 强度正则器(IR)
一个词组的情感强度表示相关情感的强弱,这对于精细化的情感分类或评级相当重要。强度正则器可以改变内容词的价度。强度正则器对强度词如何影响一个短语或一个句子的情感价位进行建模。
强度效应的表述与否定式正则器中的表述完全相同,当然参数不同。对于每个强度词,都有一个变换矩阵,以偏重各种强度词对情感漂移的不同作用。为了简洁起见,我们在这里不再重复公式。
4.5 将语言正则化器应用到双向LSTM上
为了保持我们提案的简单性,我们不考虑否定词和强度词的修饰跨度,这在NLP界是一个相当具有挑战性的问题(Zou等人,2013;Packard等人,2014;Fancellu等人,2016)。然而,我们可以通过利用双向LSTM来缓解这个问题。
对于单一的LSTM,我们采用从句子末尾到句子开头的后向LSTM。这是因为,在大多数时候,否定词和强度词的修改词通常在修改文本的右侧。但有时,修改后的词语是在否定词和强度词的左侧。为了更好地解决这个问题,我们采用双向LSTM,让模型决定应该选择哪边。
更正式的说,在Bi-LSTM中,我们在前向LSTM的p→ t-1上计算一个转换后的情感分布,在后向LSTM的p←t+1上也计算一个转换后的情感分布,并计算当前位置的分布与两个分布的最小距离。这可以表述为:
其中pR(t-1)和pR(t+1)分别是由上一个分布pt-1和下一个分布pt+1转化而来的情感分布。注意,R∈{NR,IR}表示该公式对否定式和强度正则器都有效。
基于同样的考虑,我们同样重新定义Lt(NSR)和Lt(SR)与双向LSTM。公式相同,为简洁起见,省略。
4.6 讨论
我们的模型通过数学运算来解决这些语言因素,用移位分布向量或变换矩阵进行参数化。在情感正则器中,情感转移效应用类特定分布进行参数化(但如果数据较多,也可以用词特定分布)。在否定和强度正则器中,效果用特定词的变换矩阵进行参数化。这是为了尊重这样一个事实,即否定和强度词如何转变情感表达的机制是相当复杂的,高度依赖于单个词。否定/强度效果也取决于修改文本的语法和语义,然而,为了简单起见,我们在本文中采用序列LSTM对周围语境进行编码。我们通过应用Eq.11和Eq.14中的最小化算子以及双向LSTM来部分解决修改范围问题。