论文标题:
Recursive Deep Models for Semantic Compositionality Over a Sentiment Treebank
发表日期:
2013年10月(EMNLP 2013)
发表单位:
斯坦福大学(Stanford University)
原文链接:
https://aclanthology.org/D13-1170.pdf
项目链接:
http://nlp.stanford.edu/sentiment
开源代码链接:
http://nlp.stanford.edu/sentiment
开源数据集链接:
http://nlp.stanford.edu/sentiment(Stanford Sentiment Treebank)
演示链接:
http://nlp.stanford.edu/sentiment(在线演示)
如果让一台机器读影评:“这部电影既不搞笑也不机智”,它会怎么判断?按词袋思路,这句话里“搞笑”和“机智”都是正向词,那应该是夸吧?——结果原作者其实在吐苦水:既不搞笑也不机智,基本等于烂片预定。这种“词都对,意思全反”的场景,恰恰是2013年那篇后来被引了9600多次的经典论文要正面硬刚的问题。今天这篇回顾,龙哥带各位重温斯坦福团队在EMNLP 2013上提出的《Recursive Deep Models for Semantic Compositionality Over a Sentiment Treebank》。这篇论文一口气端出两样硬货:斯坦福情感树库(Stanford Sentiment Treebank),以及递归神经张量网络(Recursive Neural Tensor Network,简称RNTN)。前者是第一个给句法树每个节点都标注了细粒度情感的语料库,后者是那个时代最能打组合语义的模型。这两样东西凑一块,直接把单句正负情感分类的SOTA从80%推到了85.4%。图1是论文原图。这颗句法树上的每个节点都被RNTN预测了一个从“––极负面”到“++极正面”的五档情感值,注意看“not only”那一支:整棵子树没有简单地把“funny”和“witty”当成褒义词叠加,而是把“not”的否定作用范围一路传递到父节点——这恰恰是词袋模型做不到的。理解了这个图,基本就理解了这篇论文为什么值9624次引用。
情感分析的新突破:递归神经张量网络
在深度学习还没统治NLP的2013年,情感分析的主流玩法是词袋模型(Bag of Words)——把句子里的词拆散,数一数哪些词出现了,然后交给朴素贝叶斯或者支持向量机分类。这种方法在长文档上效果还行,因为几万个词里总有几个“awesome”、“terrible”这种情感色彩强烈的词兜底;但到了短句、特别是带否定和转折的句子上,词袋模型就露馅了。它根本分不清“not good”和“good”的区别,更不可能理解“not bad”其实是在说“还行”。当时学术界其实已经意识到这个问题:组合语义(Compositional Semantics)——即短语的意思由词义按照语法结构组合而成——是绕不开的方向。但做组合语义研究面临两个硬伤:一是没有一个足够大、标注足够细的数据集来支撑训练,二是没有一个足够强的组合函数模型。这篇论文给出的答案,就是Self-contained的“数据+模型”打包方案。先说数据集。
斯坦福情感树库:首个全标注解析树语料
斯坦福团队从烂番茄网站上挑了大量电影评论句子,这些句子最初由Pang and Lee在2005年整理发布,一共10,662句,正负标签各半。论文用Stanford Parser把每句话解析成句法树,其中大约1,100句在解析时被切分成了多个句子,最终得到11,855个句子、215,154个短语。然后发动Amazon Mechanical Turk众包平台,让标注者对每个短语打分。图3是标注界面,滑块初始位置设在“中性”,有25个刻度。为了消除上下文干扰,每个标注任务里的短语都是从全库随机抽样的,不会连续出现同一句话里的前后短语,这样标注者看到“not bad”时不会因为刚标过“bad”而受引导。每个短语由3个人标注,最终聚合出情感标签。统计发现大部分标注者会滑到五个位置之一(负面、有点负面、中性、有点正面、正面),极少使用极值,也极少停在刻度之间,所以最终把25档粗粒化成5档,用细粒度情感分类(Fine-grained Sentiment Classification)来描述这个任务。图2展示了不同长度短语的情感分布:短短语以中性为主,随着短语长度增加,情感色彩越来越分化。这也是符合直觉的:单独一个“the”没有任何情感,但“the movie is a masterpiece”就很有倾向。这种标注密度是此前任何语料都没有的——以往的影评数据集只给整句打标签,从来没给句法树上的每个子短语都打标签。有了这个语料,模型的训练和评测就完全不一样了:不只是看整句预测对不对,还能检查每个短语节点预测得准不准。也正是因为这个特性,后来无数工作把Stanford Sentiment Treebank当成了情感组合研究的标配基准,今天的BERT在SST-5上刷分时,用的还是这215,154个短语。
实验分两大块:整体精度评测和语言现象专项分析。对比模型包括朴素贝叶斯(NB)、支持向量机(SVM)、二元词袋朴素贝叶斯(BiNB)、词向量平均模型(VecAvg)、标准RNN、MV-RNN以及本文的RNTN,覆盖了从词袋到组合模型的完整光谱。数据划分为8544句训练、1101句开发、2210句测试;剔除中性句后,二分类实验对应6920/872/1821。表1是核心结果。几个关键数字:细粒度五分类全节点准确率方面,RNTN达到80.7%,比词袋基线最高值(VecAvg的73.3%)高出7.4个百分点;整句正负二分类上,RNTN达到85.4%,而此前最好的方法只有80%上下。注意RNN和MV-RNN也用了同样的树库数据,但RNTN在全部四项指标上都领先,说明优势确实来自张量组合函数,而不是单纯“数据变多了”。图6的准确率曲线更细致地展示了模型在各短语长度上的表现差异:递归模型在短短语上优势明显——因为2到4个词的短语恰恰是组合语义最密集的场景;词袋模型在较长短语上才慢慢追上,因为词多了以后凑统计量就相对容易。RNTN在所有n-gram长度上都压着其他模型。泛化精度之外,论文还专门设计了两个针对语言现象的测试,这是真正让RNTN“封神”的地方。第一个是对比转折结构(Contrastive Conjunction):只挑“X but Y”形式的句子,要求模型同时正确判断X和Y各自的情感,以及整个转折结构的情感倾向。类似“这部电影很长,但很精彩”这种句式,转折词“but”之后的分句通常才是真正的情感落点。图7的例子里,前半句“very good”偏正面,后半句“the performances are uneven”偏负面,整句情感因为“but”的存在落在后半句上。RNTN在131个测试样本上拿到41%的准确率,MV-RNN、RNN和BiNB分别只有37%、36%和27%。第二个是高层否定现象(High-level Negation),分两组测试。第一组是正句加否定词,比如“This movie is good”变“This movie is not good”,要求模型把情感从正面翻转为负面;第二组是负句加否定词,比如“The movie was terrible”变“The movie was not terrible”,注意:负句被否定后情感不一定变成正面,更合理的判断是“没那么坏了”,即情感应该减轻而非反转。表2的结果非常亮眼:正句否定反转上RNTN达到71.4%,MV-RNN只有52.4%;负句否定上RNTN达到81.8%,MV-RNN是54.6%。图9展示了具体预测样例,值得注意的是“not terrible”这种否定,RNTN把整句从负面修正为中性,符合人类语言直觉,而不是机械地把所有否定都变成极性反转。图8把两类否定实验中各模型对情感激活值的平均改变量可视化了出来。RNTN在正句否定上大幅降低正面激活,在负句否定上明显增加正面激活,方向完全符合人类直觉;而RNN和MV-RNN要么幅度不够,要么方向错了。这也是论文里最有说服力的一张图——它表明RNTN学到的不只是“见到否定词就翻转极性”这种粗糙规则,而是理解否定词与不同情感倾向短语组合后的语义变化。另外补充一句:实验还观察了模型学到的n-gram情感映射,见下表:表3中,“not good”能出现在最消极n-gram列表里,说明模型真的学到了否定对情感的翻转作用。
Socher, R., Perelygin, A., Wu, J. Y., Chuang, J., Manning, C. D., Ng, A. Y., & Potts, C. (2013). Recursive Deep Models for Semantic Compositionality Over a Sentiment Treebank. In Proceedings of EMNLP (pp. 1631–1642).Pang, B., & Lee, L. (2005). Seeing Stars: Exploiting Class Relationships for Sentiment Categorization with Respect to Rating Scales. In Proceedings of ACL.Socher, R., Huval, B., Manning, C. D., & Ng, A. Y. (2012). Semantic Compositionality through Recursive Matrix-Vector Spaces. In Proceedings of EMNLP.Klein, D., & Manning, C. D. (2003). Accurate Unlexicalized Parsing. In Proceedings of ACL.Duchi, J., Hazan, E., & Singer, Y. (2011). Adaptive Subgradient Methods for Online Learning and Stochastic Optimization. Journal of Machine Learning Research.项目主页与在线演示:http://nlp.stanford.edu/sentiment论文原文:https://aclanthology.org/D13-1170.pdf