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

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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

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

相关文档
最新文档