文本情感分析:让机器读懂人类情感

1、引言

在大数据和人工智能的时代,机器能否拥有情感成为人们热议的话题。真正的人工智能系统不仅具有像人类的思考和推理能力,也需要也要能够感知和表达情感。MIT 的Minsky  (人工智能之父)早在 1985年在“The Society of Mind”中指出“问题不在于智能机器能否拥有任何情感 ,而在于机器实现智能时怎么能够没有情感?”。赋予机器情感分析能力引起了社会的广泛关注,研究领域也开展了很多相关的研究工作。科幻电影《她》中人工智能系统和主人公谈恋爱的故事,激发了人们对机器具有人类情感的无限想象。那么,机器是怎样理解人类情感呢?通常来讲,机器理解人类情感是一个多模态的感知过程,通过表情、行为、语言来理解情感。语言通常以文本的形式存在,本文主要是从文本的角度讨论情感分析的研究。

2、文本情感分析定义

文本情感分析([1],[2])是自然语言处理研究的一个热点,是对带有情感色彩的主观性文本进行分析、处理、归纳和推理的过程。按 照Liu[2]对 情 感 的 定 义,情 感 表 达 由 四个元素构成,分别是[Holder,Target,Polarity,Time],其中文本发表的时间通常可以使用简单的规则获取,因此情感分析的目标通常是从无结构的文本中自动分析出Holder(观点持有人)、Target(评价对象)、Polarity(极性)三元素。Holder是观点的发出者;Target是该观点评价的对象(如实体或实体的属性,或者话题);Polarity是所表达的情感类别,由于任务不同,情感类别体系会不同,通常包括褒贬、褒贬中、喜怒哀乐悲恐惊、情感打分(如1-5分)等分类体系。文本中的情感又分为显式情感及隐式情感,显式情感是指包含明显的情感词语(例如高兴、漂亮)情感文本,隐式情感是指不包含情感词语的情感文本,例如“这个桌子上面一层灰”。由于隐式情感分析难度比较大,比较依赖于背景知识及常识知识,目前许多工作集中在显示情感分析研究。

目前的情感分析研究可归纳为:情感资源构建、情感元素抽取、情感分类及情感分析应用系统,具体见图1。

图1 情感分析研究框架


3、情感分析研究任务

情感分析任务和其他自然语言处理任务一样,首先需要资源的支持,在此基础上,开展情感分析元素抽取以及文本情感分类工作,下面我们将进行简要介绍。

3.1    文本情感资源构建


情感资源一般包括情感词典和情感语料库。

目前人工构建情感词典较多的是收集了褒贬情感词的词典,如哈佛大学GI(General Inquiry)情感词典 、匹兹堡大学提供的OpinionFinder主观情感词典 、伊利诺伊大学Bing Liu提供的词典资源 ,而对于喜、怒、哀、乐、悲、恐、惊等情感相应的词典还比较少,英语中主要有WordNet-Affect,随后有不少学者基于WordNet-Affect又陆续扩展到其他语言。由于是人工构建,上述词典规模基本都在几千词范围内。在中文方面,大连理工大学的情感词汇本体 将情感分为七个基本大类和二十一个小类,收录情感词语27466条。

可以看到,人工构建词典需要较大的代价,规模也会受限。(人们开始研究自动构建情感词典的方法,已有方法一般分为两种:基于词典资源和基于语料库的方法。基于词典资源的方法通常利用外部语义词典(如WordNet)中词语之间的语义关系(如同义词、反义词、上位词关系等)生成情感词典;Hu and Liu[3]借助WordNet中的同义词和反义词信息判断形容词的情感极性;Esuli et al.[4]利用同义词集合的注释信息自动构建了情感词典资源SentiWordNet。基于语料库的情感词典构建方法最早源自Hatzivassiloglou和McKeown[5];Google的Velikovich et al.[6]在大规模互联网语料上利用上下文计算词语之间的语义关联构建情感词典,最终获得了大规模(17万左右)的情感词典;Mohammad et al.[7]在Twitter数据上自动构建大规模情感词典,他们人工定义表情符和hashtag的情感种子集合,利用词语和情感种子的点互信息计算情感分值,获得了6.2万情感词语,67万情感短语(Bigram)。

值得一提的是,情感分析的语料库和相关评测也对推动情感分析的进步至关重要。国际TREC、NTCIR,SemEval组织的面向不同任务的情感分析评测以及国内中文信息学会及中国计算机学会相继连续举办中文情感分析评测,促进同行的交流和学习,同时针对不同情感分析任务提供了大量的人工标注语料库。当然,人工标注语料库的领域、规模都会受到一定限制。利用distant supervision方法从评论网站(如Yelp、IMDB)或社交媒体上(如Twitter)自动获取的情感分析语料库[8],为在不同领域、不同任务上开展情感分析研究提供了语料库的支持。

需要指出,无论是自动构建词典还是自动构建语料库,都扩大了情感分析的研究领域,但是由于规模较大,无法直接评估其质量,需要通过具体任务体现。

3.2    情感元素抽取


情感元素抽取旨在抽取文本中的评价发出者、评价对象和情感表达,也称为细粒度情感分析。

评价发出者是文本中观点/评论的隶属者。很自然的,人们会想到评论发布者一般是由命名实体(如人名、机构名)组成,因此早期的研究工作尝试使用命名实体识别和语义角色标注技术来获取观点持有者([9],[10])。也有很多学者将评价发出者的抽取定义为分类任务,这种方法的关键在于分类器和特征的选取。例如,Choi et al.[11]使用CRF模型和抽取模板及各种特征在MPQA数据集上来识别句子中评价的来源。Ku et al. [12]先用SVM来识别作者的意见,再用CRF来标注评价的发出者,在NTCIR7 MOAT 任务上取得了与最好系统接近的性能。虽然在产品评论及社交网络上都有明确的用户ID,使评价发出者抽取研究淡化,但是在一些文本中存在描述第三方情感和观点的情况,需要对其进行抽取。

评价对象和评价表达抽取是情感元素抽取任务的核心。评价对象是指文本中被讨论的主题,具体表现为文本中评价表达所修饰的对象;评价表达抽取主要针对显式情感表达的文本,是指文本中代表情绪、情感、意见或其他个人状态的主观表述,通常以词语或短语形式出现,如“非常漂亮”,“不高兴”。由于评价对象和评价表达紧密联系的,并且可以按照序列标注任务进行识别,尽管两者可以作为独立的任务,但采用联合识别模型会更好的结合两者的信息[13]。目前用来抽取评价表达和评价对象的方法主要分为两种:基于句法规则匹配的方法和基于机器学习的有指导学习算法。Qiu et al.[14]采用了一种称为双向传播(double propagation)的算法,通过使用依存句法分析器获取情感词与评价对象的关系,并在两者之间传播信息,在迭代过程中对种子情感词进行Bootstraping来扩充情感词典并抽取出评价对象。基于机器学习的有指导学习算法通常将评价表达和评价对象抽取看成字符级别的序列标注([15],[16])问题。具有代表性的机器学习的算法包括基于特征的CRF([17],[18],[19],[20])序列标注算法和基于神经网络的序列标注算法。由于前者通常依赖专家撰写的特征模板、外部情感词典资源,领域通用性受限,基于神经网络的表示学习算法受到了越来越多的关注,例如,Irosy和Cardie[21]在词向量的基础上运用深层循环神经网络(Recurrent Neural Network)结构。Liu et al.[22]进一步使用了基于LSTM的循环神经网络(RNN),同时融入了词性(pos tagging)的分布语义表示,并且在多个数据集上证明优于CRF方法。

需要注意的是,在实际的文本语料中,评价对象省略现象,情感的隐晦表达,都会给情感元素的抽取工作带来挑战,需要自然语言处理技术中的指代消解、隐式情感分析技术([23][24])等支持。

3.3    文本情感分类


文本情感分类的目的是判断给定句子或篇章的情感类别,也称为粗粒度情感分析。文本情感分类是情感分析的最终目标,通常可以在情感元素抽取的基础上进行句子或篇章的情感分类。近年来,由于深度学习的兴起,可以越过情感元素的抽取过程,避免级联错误,使端到端的情感分析成为可能。

已有的研究工作可以大体分为基于情感词典和基于特征学习方法,我们将分别从这个两角度介绍已有的相关工作。顾名思义,基于情感词典的方法通常利用情感词或情感短语及情感反转、加强等规则判断句子的情感极性。Turney[25]提出了一种基于搜索引擎的方法,判断每个词语和已有情感词语的相关度,随后进行文本情感分类[2];Ding et al.[26]利用否定词语和转折词语,提升了基于词典的情感分类方法;Taboada et al.[27]利用词语的情感强度以及情感加强和否定规则判断篇章的情感极性。

基于特征学习的方法是近年来句子级和篇章级情感分类的主流方法[2],Pang et al.[28]提出基于特征的机器学习算法解决情感分类,后续有众多学者设计复杂的特征以提高情感分类的性能。由于手工设计特征很耗时并且依赖于专家知识,越来越多的学者尝试自动地从数据中学习文本的特征表示。基于神经网络的语义组合算法被验证是一种非常有效的特征学习手段,Socher et al.[29]提出多个基于树结构的Recursive Neural Network,该方法通过迭代运算的方式学习变量长度的句子或短语的语义表示,在斯坦福情感分析树库(Stanford Sentiment Treebank)上验证了该方法的有效性。Kalchbrenner et al.[30]使用卷积神经网络学习句子的表示,在句子级情感分类任务上取得了非常出色的效果。Tai et al.[31]在序列化的LSTM (Long Short-Term Memory)模型的基础上加入了句法结构的因素,该方法在句法分析的结果上进行语义组合,在句子级情感分类和文本蕴含任务上都取得了很好的效果。

随着社交媒体的日益发展,用户在社交媒体上更侧重于喜怒哀乐多类别情感表达,由于多类别情感语料分布不均衡给情感分析带来一定困难,尽管采取了一些解决方案[32][33],但是多元分类在分类性能上不及褒贬分类。

4、情感分析应用系统

在上述分析技术的支持下产生了大批基于情感分析的系统和应用。总体来看,它们应用在商品/服务评论分析、社交网络分析、情感机器人这三方面。

传统的情感分析应用聚焦于来自消费产品和服务的评论。基于产品评论的代表性平台有Google Shopping ,它还可以为用户提供在线购物平台的商品检索和比价服务;OpinionEQ 允许商业组织和个人按需定制产品分析服务。

微博、Twitter等社交网络服务的爆炸式发展也为研究人员带来了极大的机遇,研究人员能够通过分析大量富情感的数据来分析公众的情绪变化,并对政府管理、经济、娱乐领域产生影响。从政府和管理者角度出发,联合国开发了针对全球情感波动监测的应用Global Pulse ,北航的研究小组推出了第一个针对中文微博的在线情感系统MoodLens ;2012年美国大选时罗姆尼和奥巴马在Twitter上展开了激烈宣传,借此影响普通民众及新闻从业者,成为互联网参与总统竞选典型案例。在金融应用方面,许多研究机构将情感分析技术应用于股票分析及预测系统,例如Stock Sonar 在每只股票的价格旁边展示了每天针对该股的积极和消极的情感信息,为投资者提供即时的参考,UIC开发的Twitter情感分析进行为股市的涨跌进行预测和追踪 。在娱乐领域,阿里云的人工智能系统“小Ai” 在《我是歌手》节目中成功预测李玟夺冠,也是依靠现场数据以及社交网络上的点评数据进行分析预测,这其中都运用了对海量文本情感分析技术。可以看到,对社交媒体的情感大数据的监测和分析预测,不断影响着政府决策和大众选择。

除了在电商平台和社交网络得到广泛应用,情感分析技术还被引入到对话机器人领域。例如,微软的“小冰”机器人 可以通过分析用户的文本输入和表情贴图,理解用户当前的情绪状况,并据此回复文本或者语音等情感回应。部分研究机构还将情感分析技术融入实体机器人中。日本软银公司的Pepper机器人 依据常见的情感认知(喜怒哀惊)及对用户的面部表情、肢体语言和措辞的分析,了解用户的情绪并选择恰当的方式与用户交流。而香港Hanson Robotics公司开发的Han机器人 不仅可以理解用户的情感,它还可以将情感反馈以模拟的面部表情展现出来。国内的Gowild公司也推出了可以提供生活助理和年轻人强社交情感交流服务的“公子小白”机器人 。这些工作实际上并不是从认知机理出发,而是通过外在的形式(词语,表情,肢体)判断人类情感。


5、挑战与趋势

正如前文所述,现在的情感分析工作已经能够完成一些简单的任务,在上述任务上都表现出机器具有识别人类情感的能力,但也面临许多挑战。

  • 在情感研究对象上,随着应用领域的不断扩展,情感对象从之前的对产品、服务等的褒贬倾向性评论到对社交媒体中的用户、话题情绪分类,表现形式更加多样,情感种类更加繁多,研究的内容也会发生相应转变,包括更加关注用户的信息以及针对社交媒体中事件用户情感的变迁。
  • 在情感表达形式上,人们对于情感的表达也多样化的,有直截了当的,也有含蓄不露的,更有通过修辞手段及反讽的多种形式表达情感,因此需要更深层次的机器学习技术以及情感常识库的支持,如何构建常识知识库是亟待解决的问题。
  • 在情感分析学习算法上,深度学习的崛起,无疑也为情感分析中的许多任务提供了良好的工具,并在一些任务上初现端倪,随着情感分析研究不断扩展和深入,会发挥更多的作用。
  • 从认知科学角度,情感分析是人工智能的一部分,虽然尚不能完全了解人类情感产生的机理,但是可以和认知科学研究者开展合作研究,通过观察脑电波探知产生各种情感的脑波形和反射情况,为情感分析研究提供科学依据。
  • 在情感分析应用上,情感分析和人工智能结合,将产生一系列的应用,在聊天机器人中识别用户情感,并给予情感抚慰。更进一步,未来情感分析应用于对文章及诗词的鉴赏,自动生成自己的观点、立场及情绪,表达机器自身的情感,从而向强人工智能迈进。

总之,情感分析研究及应用前途广大,尤其是和实体机器人结合,将多媒体技术融为一体,结合语音、图像处理技术,可以从语言、表情和行为方面理解人类情感并给出相应的情感回复,打造一个具有情感的机器人时代已经不远了!

参考文献

[1]    Pang B, Lee L. Opinion mining and sentiment analysis[J]//Foundations and trends in information retrieval, 2008, 2(1-2):1–135.

[2]    Liu B. Sentiment analysis and opinion mining[J]//Synthesis Lectures on Human Language Technologies, 2012, 5(1):1–167.

[3]    Hu M, Liu B. Mining and summarizing customer reviews[C]//Proceedings of the tenth ACM SIGKDD Conference on Knowledge Discovery and Data Mining, 2004:168–177.

[4]    Esuli A, Sebastiani F. Sentiwordnet: A publicly available lexical resource for opinion mining[C]//Proceedings of LREC, 2006, 6:417–422.

[5]    Hatzivassiloglou V, McKeown K. Predicting the semantic orientation of adjectives[C]//EACL, 1997:174–181.

[6]    Velikovich L, Blair-Goldensohn S, Hannan K, et al. The viability of web-derived polarity lexicons[C]//Human Language Technologies: The 2010 Annual Conference of the North American Chapter of the Association for Computational Linguistics, 2010:777–785.

[7]    Mohammad S, Kiritchenko S, Zhu X. NRC-Canada: Building the State-of-theArt in Sentiment Analysis of Tweets[C]//Proceedings of the Seventh International Workshop on Semantic Evaluation (SemEval 2013), 2013:321–327.

[8]    Go A, Bhayani R, Huang L. Twitter sentiment classification using distant supervision. CS224N Project Report, Stanford, 2009:1–12.

[9]    Kim S.M, Hovy E. Determining the Sentiment of Opinions[C]// Proceedings of the 20th international conference on Computational Linguistics, 2004:1367-1373.

[10]    Kim S.M, Hovy E. Identifying Opinion Holders for Question Answering in Opinion Texts[C]//Proceedings of AAAI-05 Workshop on Question Answering in Restricted Domains, 2005.

[11]    Choi Y, Cardie Y, Riloff E, Patwardhan S. Identifying Sources of Opinions with Conditional Random Fields and Extraction Patterns[C]// Proceedings of Human Language Technology Conference and the 2005 Conference on Empirical Methods in Natural Language Processing, 2005:355-362.

[12]    Ku, Lun-Wei, Lee, Chia-Ying, Chen, Hsin-His. Identification of opinion holders[J]// Computational Linguistics & Chinese Language Processing, 2009, 14 (4):383–402.

[13]    Yang B, Cardie C. Joint inference for fine-grained opinion extraction[C]//Proceedings of the 51st Annual Meeting of the Association for Computational Linguistics, 2013:1640–1649.

[14]    Qiu G, Liu B, Bu J,Chen C. Opinion Word Expansion and Target Extraction through Double Propagation [J]//Computational Linguistics, 2011.

[15]    Johansson R, Moschitti A. Syntactic and semantic structure for opinion expression detection[C]//Proceedings of the Fourteenth Conference on Computational Natural Language Learning, 2010:67–76.

[16]    Johansson R, Moschitti A. Extracting opinion expressions and their polarities: exploration of pipelines and joint models[C]//Human Language Technologies: The 49th Annual Meeting of the Association for Computational Linguistics: short papers, 2011(2):101–106.

[17]    Breck E, Choi Y, Cardie C. Identifying expressions of opinion in context[C]//In IJCAI, 2007:2683–2688.

[18]    Jakob N, Gurevych I. Extracting Opinion Targets in a Single-and Cross-Domain Setting with Conditional Random Fields[C]//Proceedings of the 2010 Conference on Empirical Methods in Natural Language Processing, 2010:1035–1045.

[19]    Choi Y, Cardie C. Hierarchical sequential learning for extracting opinions and their attributes[C]//Proceedings of the 48th Annual Meeting of the Association for Computational Linguistics Short Papers, 2010:269–274.

[20]    Bishan Yang and Claire Cardie. Extracting opinion expressions with semi-markov conditional random fields[C]//Proceedings of the 2012 Joint Conference on Empirical Methods in Natural Language Processing and Computational Natural Language Learning, 2012:1335–1345.

[21]    Irsoy O, Cardie C. Opinion mining with deep recurrent neural networks[C]//Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing, 2014:720–728.

[22]    Liu P, Joty S, Meng H. Fine-grained opinion mining with recurrent neural networks and word embeddings[C]//Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing, 2015:1433–1443.

[23]    L. Zhang, B. Liu. Identifying noun product features that imply opinions[C]//Proceedings of NAACL, 2011:575-580

[24]    J. Wiebe, L. Deng. A conceptual framework for inferring implicatures[C]//Proceedings of ACL 2014, 2014:154-159

[25]    Turney P D. Thumbs up or thumbs down?: semantic orientation applied to unsupervised classification of reviews[C]//Proceedings of Annual Meeting of the Association for Computational Linguistics, 2002:417–424.

[26]    Ding X, Liu B, Yu P. A holistic lexicon-based approach to opinion mining[C]//Proceedings of the International Conference on Web Search and Data Mining, 2008:231–240.

[27]    Taboada M, Brooke J, Tofiloski M, et al. Lexicon-based methods for sentiment analysis[J]//Computational linguistics, 2011, 37(2):267–307.

[28]    Pang B, Lee L, Vaithyanathan S. Thumbs up?: sentiment classification using machine learning techniques[C]//Proceedings of the 2002 Conference on Empirical Methods in Natural Language Processing, 2002:79–86.

[29]    Socher R, Perelygin A, Wu J, et al. Recursive Deep Models for Semantic Compositionality Over a Sentiment Treebank[C]//Proceedings of the 2013 Conference on Empirical Methods in Natural Language Processing, 2013:1631–1642.

[30]    Kalchbrenner N, Grefenstette E, Blunsom P. A Convolutional Neural Network for Modelling Sentences[C]//Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics, 2014:655–665.

[31]    Tai K S, Socher R, Manning C D. Improved Semantic Representations From Tree-Structured Long Short-Term Memory Networks[C]//Proceedings of the 53rd Annual Meeting of the Association for Computational Linguistics, 2015:1556–1566.

[32]    W. Y. Li, H. Xu. Text-based emotion classification using emotion cause extraction [J]//Expert Systems with Applications, 2014, 40:1742-1749

[33]    W. Gao, S. S. Li, S. Y. M. Lee, et al.. Joint learning on sentiment and emotion classification [C]//Proceedings of CIKM, 2013:1505-1508!


本文来源于哈工大SCIR

原文链接点击即可跳转

哈尔滨工业大学社会计算与信息检索研究中心

入门理论NLP情感分析文本处理综述
3