句子情感分类(正负)——2015A joint segmentation and classification framework

这是Tang Duyu 在2015发表在TASLP上的一篇文章。中心思想是通过同时训练句子划分和句子分类解决句子中短语和其构成单词情感不一致的问题。本文模型的核心就是提出了句子分割模型作为模型的一部分,而不是简单的把句子划分成一个个单词,以单词作为计算单元。模型分为三个层次:候选生成模型,划分排序模型,情感分类器。分类器训练结果的误差反向传播,不仅用于更新分类器,而且用来更新分割排序模型,使得分割模型不断优化,得到的分割结果对分类尽可能有用。


在摘要部分,作者就明确表明本文是为了解决句子中短语及其组成部分的情感不一致问题。对于模型的使用也有两种方法,一个是训练,一个是预测。

首先讲训练过程。

  • 为每个句子生成至少一个划分
  • 随机选择一个划分结果,利用它的分类特征初始化情感分类器
  • 随机初始化划分打分模型
  • 联合训练分类器和划分模型:对每个划分结果,利用当前的分类器预测其情感,然后利用他们更新划分打分模型。再利用新的划分打分模型更新分类器:首先对每个划分候选抽取划分特征,用这些特征计算得分,对每个句子选择得分最高的前k个划分,用这k个划分结果训练分类器。
  • 经过R次迭代,得到分类器和划分打分器。
而预测过程比较简单,只需要为每个句子生成一组划分,利用打分模型排序,对每个句子选择前k个划分,再利用分类器分类,选择k个分类中预测的主要情感作为句子的情感。

在这里先说明模型中用到的两个特征抽取器:划分特征抽取器和分类特征抽取器。划分特征抽取器是用来计算句子的一个划分得分的,包括embedding特征和面向分割的特征;而分类特征抽取器抽取的特征用作分类器的输入,同样包含embedding特征,另外包含了面向分类的特征(这些特征的解释见分割得分模型和分类模型的详细介绍)。

上面介绍的是模型的框架,接下来介绍模型的各部分的具体实现。

1、候选生成模型

搜索空间和句子中的单词数成指数增长关系。采用受约束的beam搜索方法,约束条件就是划分的每个单元必须是出现在词组词典中的单词或者短语。首先从海量的语料中可以生成一份短语词典,比如用Mikolov的方法,根据句子中相邻单词出现的频率作为是否组成短语的指标(利用一元组的频率和二元组的频率)。按一个分割里包含的单元数的倒数进行排序,将前N个分割保存到beam中。

2、划分排序模型

为每个划分候选打一个分数,表明这个划分对分类的用处。用log线性模型计算得分,目标函数是边界log似然(最大化命中候选hit candidate的得分)。每个命中候选是可以预测正确情感的一个划分结果。一个句子可以有多个命中候选。

所有句子的划分中,得分最高的前k个分割被用于训练分类器。个人认为选一个句子前k个分割而非所有候选分割训练分类器的原因是前k个是对正确分类有用的分割,是有潜力成为hit候选的分割,这样得到的误差才是正确的,对打分比较靠后的分割候选,表明该分割本身对情感分类是有问题的,比如that , is , not, bad这个分割,预测出的结果应该是negative的,而句子的标记是positive的,如果用positive的标记去训练模型,显然把模型导向错误的方向。

这个模型用到的特征有两种,一种是短语embedding特征,一种是面向分割(segmentation-specific features)的特征。每个分割最终的特征表示都是这两种特征的串联。短语embedding就是按照Mikolov的方skip-gram方法进行训练得到,得到短语的表示后,用max、min、avg函数计算一个分割的表示。作者全用到了,用这三种池化方法得到的向量的串联形式作为分割的短语表示。另外,作者设计了四种面向分割的特征:分割里的计算单元数、计算单元数处以句子长度、句子长度减去计算单元数、包含至少两个单词的计算单元数。

这个模型是标准的模型+目标函数+学习方法(L-BFGS)的过程。

3、情感分类模型

用传统的监督学习方法训练分类器。每个句子的特征也包含两部分:embedding特征和面向分类(classification-specific)的特征。embedding特征和前面提到的一样。本文通过三个人工创建的情感字典和两个自动生成的情感字典提取面向分类的特征。这些特征包括是否全部大写、是否存在表情符号、hashtag的数目、包含加长单词(gooood)的计算单元数、情感单词的数目、一个分割中否定词作为独立单元的数目、bag-of-unit、标点符号、cluster。并使用LibLinear工具训练线性核SVM分类器。

最后作者从比较了本文方法和多个baseline之间的结果、比较了联合模型和流水线模型之间的性能,测试Beam大小N的影响、测试top-ranked segmentation number K的影响。

你可能感兴趣的:(情感分析)