赞
踩
《文本大数据情感分析》(高凯 徐华 王九硕 岳重阳 高成亮著)一书介绍社交网络等海量异构信息采集算法;对文本挖掘与自然语言处理中涉及到情感分析、微博情绪诱因分析、电商产品评价与意见挖掘等内容进行研究,并提供丰富的应用案例。
本文不仅对前四章进行了概括性的总结,并且参考了《数学之美》(吴军著)、一种基于认知评价理论的汉语文本情感识别方法(毛峡,2010)以及基于微博文本的情绪诱因分析方法研究(王九硕,2015),该书前四章目录如下:
一、引言
二、自然语言处理与应用综述
三、文本情感与情绪分析综述
四、面向微博文本的情绪及其诱因分析
我们把一个要表达的意思,通过某种语言的一句话表达出来,就是用这种语言的编码方式对头脑中的信息做了一次编码,编码的结果就是一串文字。而如果对方懂得这门语言,他就可以用这门语言的解码方法获得说话人要表达的信息。这就是语言的数学本质。
自然语言处理是指利用人类交流所使用的自然语言与机器进行交互通讯的技术。通过人为的对自然语言的处理,使得计算机对其能够可读并理解。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。本书重点介绍了自然语言处理应用于机器翻译、词法分析、句法分析、命名实体识别与特征信息提取和文本摘要。
自然语言处理主要有两种处理流派。基于规则(也称为理性主义或符号主义)和基于统计(也称为经验主义或归纳法)。现在的认知是:两种方法并非相互排斥,恰恰相反,二者的融合才是对自然语言处理问题的正确技术路线。然而在技术不断发展,观念不断创新的过程中,二者有一段时间是彼此对立的。
理性主义是以建立形式化的知识系统描述语言的。它使用通过内省方式得到的规则描述语言现象,其本质是一种确定性的演绎推理。但这种方法很多时候可能不能覆盖所有应用场景,如果添加新规则,还需要注意新规则与已有规则间的相容性。这种方法的优点包括形式描述和生成能力强、较有效地处理句法分析中的长距离依存关系等,但其缺点是适应性差、不能通过学习的方法自动获取知识等。
基于统计的方法主要是基于概率和数理统计等统计机器学习方法进行处理。它一般使用概率或随机方法研究语言,通过建立语言的概率模型,利用统计学、模式识别、机器学习、深度学习等方法训练模型参数,希望可借助智能算法发现语言使用的普遍规律,并通过机器学习、深度学习等智能算法自动获取语言知识以及对未知语言现象进行推理和推测。其最大的优点是可以基于数据驱动的方式研究语言。
这两种流派各有优缺点。基于规则分析的方法的理论基础比较完善,但模型的跨领域脆弱性比较明显,适应性通常较差;基于统计的方式能够在大规模训练数据中学习到不同的文本特征,可应对不断扩张的应用场景,在基于统计模型的语音识别,机器翻译等领域能发挥作用,但其准确率受算法、训练数据量大小等因素影响,有时准确率不高。将二者结合起来,优势互补,并借此实现面向大规模真实文本的信息处理与自然语言理解是可行的。一般来说,在某些领域(如中文分词的未登录词识别方面),基于统计的机器学习方法要优于传统的基于规则的方法。
最初,也即20世纪50年代,学术界对人工智能和自然语言理解的普遍认识是这样的:要让机器完成翻译或语音识别这样只有人类才能做的事情,就必须先让计算机理解自然语言,而做到这一点就必须让计算机有类似和我们人类这样的智能。为什么会有这样的认识?因为人类就是这么做的。对于人类来讲,一个能把英语翻译成汉语的人,一定能非常好地理解这两种语言的。这是直觉的作用。在人工智能领域,包括自然语言处理领域,后来把这种学派叫做鸟飞派。也就是看看鸟是怎么飞的,就能模仿鸟造出飞机,而不需要了解空气动力学。事实上我们知道,怀特兄弟发明飞机靠的是空气动力学而不是仿生学。
实际上,大部分人都错误地以为这两个应用靠的是计算机理解了自然语言而完成的。事实上他们靠的都是数学,more precisely,是统计。
所以在20世纪六十年代时,摆在科学家面前的问题是怎么样才能理解自然语言。当时普遍的认识是首先要做好两件事。即分析语句和获取语义。学习西方语言,都要学习他们的语法规则,词性和构词法等。这是我们人类学习语言的好工具。而非常巧的是,这些语法规则又很容易用计算机的算法描述,所以更加坚定了大家对基于规则的自然语言处理的信心。
20世纪80年代以前,自然语言处理工作中的文法规则都是人写的。这和后来才用机器总结的做法大不相同。直到2000年后,很多公司还是靠人来总结文法规则,比如著名的机器翻译公司SysTran。
科学家们原本以为随着对自然语言语法概括得越来越全面,同时计算机计算能力的提高,这种方法可以逐步解决自然语言理解的问题。但是这种想法很快遇到了麻烦。从下图来看,一个短短的句子居然分析出这么一个复杂的二维树结构,而且居然需要八条文法规则。这样一旦句子稍微长一些,这棵树会变得非常复杂。
如果想用文法规则覆盖哪怕20%的真实语句,文法规则的数量至少是几万条。而且这些文法规则写到后来甚至会出现矛盾。为了解决这些矛盾,还要说明各个规则特定的使用环境。如果想要覆盖50%以上的语句,文法规则的数量将会多到每增加一个新句子就要加入一些新的文法。例如无论在中学和大学的英语考试成绩多么好,也未必能看懂英文的电影。原因就是我们即使学了十年的英语语法,也不能涵盖全部的英语。
并且,用计算机语言解析自然语言是相当困难的。描述自然语言的文法和计算机高级程序语言的文法不同。自然语言在演变的过程中,产生了词义和上下文相关的特性。因此他的文法是比较复杂的上下文有关文法,而程序语言是我们人为设计的。属于上下文无关文法。对于上下文无关文法,计算复杂度基本上是语句长度的六次方。也就是说,长度同为10的程序语言的语句和自然语言的预计。计算机对他们进行语法分析的计算量。后者是前者的一万倍。而且随着句子长度的增长,而这计算时间的差异会以非常大的速度扩大。因此,在20世纪70年代,即使是制造大型机的IBM公司,也不可能采用规则的方法分析一些真实的语句。
20世纪70年代,基于规则的语法分析很快走到了尽头。而对于语义的处理则遇到了更大的麻烦,首犯,自然语言中词的多义性很难用规则来描述,而是严重依赖于上下文或是常识。著名人工智能专家明斯基举了一个简单的反例。'the pen in the box' 和 'the box in the pen'。第一句话的意思是钢笔在盒子里。而第二句话则会让外国人有一些困惑,为什么盒子可以装到钢笔里?对于英语是母语者的人来说则很简单。因为这里pen是围栏的意思,整句话翻译成中文就是‘盒子在围栏里’。这里的pen指的是盒子还是围栏通过上下文已经无法解决,需要常识。具体来说就是‘钢笔可以放到盒子里,但是盒子比钢笔大,所以不能放到钢笔里’。这个简单的例子说明了当时自然语言处理研究方法上存在的问题。明斯基是当时世界上数一数二的人工智能专家,他的意见对美国政府的科技决策部门产生了重大影响,自然科学基金会等部门对传统的自然语言处理研究非常失望,以至于在较长时间内对这方面的研究资助大大减少。可以说,利用计算机处理自然语言的努力直到20世纪70年代初是相当失败的。
1970年以后统计语言学的出现使得自然语言处理重获新生。推动这个技术路线转变的关键人物是弗里德里克·贾里尼克。当时并非所有的研究者都认可这个方向,两者得争执后来还持续了15年左右。直到20世纪90年代初,这期间两路人马各自组织和召开自己的会议。到90年代以后,坚持前一种方法的研究人员越来越少,参会人数自然也越来越少,而后者却越来越多。由此,参会路线的技术转变就完成了。
这场争议之所以持续了15年,是因为一种新的研究方法的成熟需要很多年。上世纪70年代,基于统计的方法的核心模型,是通信系统加上隐马尔可夫模型。最早获得成功的语音识别是如此,接下来第二个获得成功的词性分析也是如此。在机器翻译中,虽然输出的依然是一维的句子,但是次序会有很大的变化,所以上述的方法就不太管用了。1988年彼得·布朗等人提出了基于统计的机器翻译方法,框架是对的,但是当实际没有足够的统计数据,也没有足够强大的模型来解决不同语言语序颠倒的问题。所以在很长一段时间里,传统方法的捍卫者攻击对方的武器就是,基于统计的方法只能处理浅层的自然语言处理问题,而无法进入深层次的研究。
随着计算能力的提高和数据量的不断增加,过去看似不可能通过统计模型完成的任务渐渐都变得可能了,包括很复杂的句法分析。到了上个世纪90年代末期,大家发现通过统计得到的句法规则甚至比语言学家总结的更有说服力。2005年后,随着Google基于统计方法的翻译系统全面超过基于规则方法的SysTran翻译系统,基于规则方法固守的最后一个堡垒被拔掉了。
基于传统的规则和统计的方法,解决了很多自然语言处理与分析过程中的问题。如依据向量空间模型将文本形式化为向量空间模型、基于词袋模型结合独热编码的文本表示方法等,这些方法生成出的文本表示具有离散、稀疏、高维等特点。虽然上述方法在信息检索、自然语言处理等应用中获得过不错的效果,但由于生成的文本表示往往是相互独立的,因此一般不能很好地反映文本间的语义关系和上下文联系。随后,有研究工作侧重于特征构造,选择与生成。这就需要构建任务相关的特征词库,然后结合语言学资源对原始特征词库进行新特征生成或特征词库扩充,但特征之间并不能建立起有效关联关系,且单纯基于特征抽取方法对于隐式特征的识别和学习而言较困难,一般也难以识别上下文中的结构依赖特征。
深度学习方法的优势在于其强大的判别能力和特征自学习能力。不同模型对特征学习方式有不同优势,常见的有卷积神经网络(Convolutional Neural Network, CNN)、循环神经网络(Recursive Neural Network, RNN)、长短时记忆网络(Long Short-Term Memory, LSTM)、强化学习(Reinforcement Learning, RL)、对抗生成网络(Generative Adversarial Network, GAN)等。
这里介绍对抗生成网络(GAN)的概念。GAN认为,与其用一个神经网络优化权重和偏差时期误差最小化,不如建立两个相互竞争的神经网络达到同样的目的。GAN有一个生成新数据(即“假”数据)的网络(即生成网络)和一个评估由生成网络生成数据的真假可能性网络(即辨别网络)。两种网络不断学习并相互博弈:一个学习如何更好的生成“假”数据;另一个学习如何区分提供给它的数据的真假。它们在每个epoch中都进行迭代,直至二者都收敛。也就是当评估生成数据的网络不再能够区分数据是来自“假数据”还是真实数据的时候。
【综述是针对某一专题,对大量原始研究论文中的数据、资料和主要观点进行归纳整理、分析提炼而写成的,反映出这一专题的历史背景、研究现状和发展趋势。因而在本报告中提及的各类技术在原文中均有大量前沿方法介绍,限于篇幅,不过多展开】
NLP的应用涉及面较广,这里仅介绍词法分析、句法分析、命名实体识别与特征信息抽取。
词法分析的任务是将输入句子从子序列转换为词和词性序列。这里面临的主要问题包括词的定义、词性的定义、未登录词的识别、分词歧义的处理。
对基于词典的最大匹配分词方法来说,按照匹配操作的扫描方向不同,匹配方法又分为正向匹配,逆向匹配和双向匹配;按照不同长度优先级匹配划分,则可分为最大匹配和最小匹配;按照与词性标注过程相结合,则可分为单纯分词方法以及分词与词性标注相结合的方法。
实际使用时,可把基于词典分词作为基础,再结合语言的其他特征提高切分的效果和准确度(如利用词性和语法信息,对分词结果进行校验,调整)。对基于统计的中文分词来说,可根据机器学习模型,如隐马尔科夫模型(Hidden Markov Models, HMM)、最大熵模型(Maximum Entropy Models, MEM)、条件随机场(Conditional Random Field, CRF)模型等通过对中文文本中相邻出现的各个字的组合频度等进行统计,并由此计算不同字词的共现信息,以期能解决未登陆的新词处理问题。
其中,基于HMM完成分词的本质是根据可观察状态的序列找到一个最大概率的隐藏状态序列;MEM对未知条件不做任何偏向性假设,在保留所有不确定性前提下,使基于概率预测的风险最小;CRF是一个在给定输入节点条件下计算输出节点的条件概率无向图模型,通过分析条件序列的条件概率预测最可能的标记序列。
作为词汇与句法连接的桥梁,词性(Part Of Speech, POS)分析是在给定句子中判定词的结构和类别并确定其词性的过程。目前,词性标注的方法主要有基于规则的方法、基于统计的方法(HMM,CRF,SVM)、统计与规则相结合的方法。目前学术界和业界主要研究基于大数据驱动的自动分析方法。近年来,随着深度学习技术的发展,研究者也提出了很多基于深层神经网络的词性标注方法。
随着时代的进步和语言的变迁,网络语言以及实际生活中会涌现许多未在词典中收录的新词。歧义排除是确定多义词在给定上下文语境中的意义,也是自然语言处理领域中重要的研究课题之一。如果无法有效识别和处理未登录词和低频词就会影响自然语言处理系统(包括深度学习模型和传统模型)的性能。
针对未登录词和低频词识别的一类方法旨在提高Softmax输出层的计算速度,它可减轻UNK标签多的问题,却无法解决低频词问题。将输入输出的词单元改变为字符或字节码也是一类方法,其中Sennrich等人使用Byte Pair Encoding(BPE)算法对单词进行分隔,可找到一个符号集,使得用于文本编码的符号数据量是较少的。还有一类方法是使用上下文信息识别未登录词和低频词,其中Gulcehre等人使用注意力指针机制解决了对未登录词的识别问题,在机器翻译和文本摘要中取得了一定效果。
歧义排除方法包含有监督的、无监督的和基于知识等的方法。可以用划分多义词的上下文类别的方法区分多义词词义。虽然一些有监督的歧义排除系统在提供特定单词的情况下表现良好,但缺乏足够词汇标记训练数据仍可能是存在的核心问题。对于无监督学习来说数据则是未经标注的。Raganato提出了一种利用序列学习模型的方法解决歧义问题,并提出一系列直接针对任务定制的End-To-End神经架构。
在自然语言处理的过程中,可能需要依赖句法对句子词汇间的依存关系进行分析,句法分析的基本任务是确定句子的句法结构或词汇间的依存关系(一般以句法树的形式表示)。句法分析方法有基于规则的方法(一般是建立在某个形式语法基础上,再通过限制条件实现句法结构歧义的消除,该方法可能对真实文本中出现的复杂现象有一定缺陷)、基于统计的方法,基于神经网络的方法。相关的理论有短语结构语法(PSG)、广义短语结构语法、中心语驱动的短语结构语法、词汇功能语法和树邻接语法等。
命名实体识别与特征信息提取是自然语言处理的一项基本研究任务,目的是获取文本中特定的关键信息(如人名,地名,机构名,时间等),广泛应用于文本分析、意见挖掘、抽取式摘要生成等领域(如面向微博话题数据的评价搭配抽取)。
相关工作中,有基于众包机制的的对抗学习方法,使用了两个双向LSTM模块分别学习众包标注数据中的公有信息和属于不同标注员的私有信息,并基于LSTM-CRF模型构建了标记器;也有采用深层条件随机场的生物医学命名实体识别方法,构建多层结构的深层条件随机场模型,在不同层次的特征上结合增量式学习策略进行生物医学命名实体评测。更多策略详见书中正文。
文本自动摘要是利用文本挖掘和自然语言处理等相关技术对文本内容进行提炼、总结的过程,它在新闻标题自动生成、图书自动摘要、评论精选、舆情分析等应用中都能发挥一定的作用。相关方法包括抽取式摘要(即从文档中抽取已有句子形成摘要)和生成式摘要。自动摘要涉及重要信息评估、冗余信息过滤、碎片化信息聚合、多源信息排序与组织等工作,其中影响句子重要性的测度包括句子位置、是否包括线索词等。可利用传统的基于规则的方法、统计机器学习方法、以及深度学习中CNN、RNN、编解码器,序列到序列等方法实现。目前常用的摘要评价方法是面向召回率的评价方法,即基于ROGUE(Recall Oriented Understudy for Gisting Evaluation)的评价方法,其主要思想是比较自动抽取的摘要与专家摘要相重合的基本评价单元数目。
借助机器翻译,可以使机器自动将一门语言转换为另一门语言,其方法主要有基于统计学习的方法以及基于深度神经网络的方法,如注意力机制,编解码器等。相关工作详见书中正文。
文本情感与情绪分析的主要任务是识别人们谈论话题中所表达的观点,主要包括情感信息抽取、立场挖掘、情绪诱因识别、情绪分类等。从电商评论、信息检索到票房预测、舆情分析等,都能从中看到文本分析、情绪分析起到的作用。文本情感与情绪分析对认知科学中情感与情绪的研究从感性上升到可计算模型,也是面向和谐的人机交互领域中不可或缺的重要研究内容;从应用角度看,微博、微信等社交网络开放域文本已经成为人们重要的信息来源之一,这些可能富含情绪的碎片化信息在大数据环境下被整合,具有潜在舆情价值,而通过情感分析或情绪识别,了解大规模人群的情绪特点,可使之成为决策中的重要参考和依据。
文本情感分析的主要任务是通过一些方法分析给定的一段带有主观描述的文本中可能带有的情感倾向,包括文本情感信息抽取、文本情感分类、立场分析等,其中信息抽取的质量将直接影响后续的情感分类和意图挖掘。本节主要介绍情感信息抽取、情感分类、立场分析方法。
情感信息抽取是情感分析的基础,主要包括情感词抽取、评价对象抽取、评价搭配抽取。其中,情感词是指带有情感倾向性的单词或短语,评价对象是评论文本中评价词所修饰的对象,评价搭配抽取是在识别出评价对象后对评价对象和评价修饰短语进行的匹配。如例句“这款相机性价比高”中的<性价比,高>为一个评价搭配的二元对。
在情感词抽取方面,一般可将情感词的极性分为正向、负向、五偏向等类型。在基于词典和规则的方法中,一般会基于已构建好的情感词典,结合用户预先定义的规则进行情感词抽取。基于机器学习的抽取方法一般是利用机器学习中的序列标注模型进行情感词的抽取。基于深度学习的方法一般在尽可能少的人工标注下利用深度神经网络将情感词抽取任务构建为序列标注模型,通过神经网络自动提取有效短语特征表示。
评价对象抽取旨在寻找评论文本中所讨论的对象是什么。评价对象的抽取可转化为一个序列标注任务,将文本中的词语作为观测序列,基于CRF模型为观测序列找到最有可能的状态序列,其模型输入为从外部数据源获取的预训练的词的分布式表示,利用RNN自动提取有效特征,并将面向特定任务的特征向量作为附加特征应用于模型。除基于序列标注模型方法外,将无监督学习方法应用于评价对象抽取也是研究方向之一。
评价搭配抽取旨在识别评论中的被评价对象,然后对被评价对象和评价修饰短语进行搭配。
文本情感分类(或倾向性分析)是从带有主观描述的文本中辨别出文本总体情感类别的技术,其中基于规则的方法是通过事先定义好的规则完成对文本的倾向性分析。但是,随着应用场景和句式变化的不断增多,基于规则的情感分类方法的弊端就显现出来。为进一步提高情感分类的准确率,基于机器学习的情感分析方法受到关注,可利用朴素贝叶斯、最大熵和支持向量机分类器对评论文本进行情感分类研究。
立场分析是文本情感分析的子领域,目的是识别针对某话题的立场态度。由于立场分析任务面临着比普通情感分析更多的挑战,因此单纯利用传统方法可能会有更多局限。基于深度学习的方法能以自主的特征学习取代人工特征选择,同时可以循序渐进的方式对文本特征进行学习,而且利用深度学习进行集成的策略,比独立的深度学习分类模型更有优势。研究者也尝试使用双向RNN架构将文本和话题分别在两个同步的网络层计算(可搭配注意力机制等)。
近年来,越来越多的研究者致力于研究基于深度学习的集成策略。在利用深度学习方法对文本分类任务的灵活处理的基础上,如何通过已有模型扩展至某他领域的文本分析简化学习过程,以集成模型为基础,提取原有训练数据中的主要特征,并使用新话题训练,基于跨领域迁移的学习方式完成新话题及其评论的预测,也是近期的研究热点之一。
文本情绪分析是指通过文本挖掘与分析等方法检查和处理文本大数据,以便确定作者主观情绪(如对于特定主题的大众情绪或某一群体的意见)的过程。目前学术界在多项研究中被广泛采用的是一个更定性的情绪分类体系,如将情绪细分为多种类别。
传统的情绪分析方法主要指基于词典和规则的情绪分析方法,以及基于统计机器学习的情绪分析方法等。
(一)基于词典的情绪分析
基于词典的情绪分析是借助词典将文本的非结构化特征提取出来。它主要是通过构建一系列情绪词典并制定一定的规则,在对文本依次进行拆句、分析(如基于词性分析或句法依存分析)的基础上计算情绪值,以情绪值为评判标准,实现对文本大数据的情绪倾向分析。
情绪词典的建立是基础。情绪词典的构建往往需要结合人工标注、语义词典扩展或基于语料库抽取标注等方法。英语中的情绪词典资源是WordNet-Affect,该词典的构建是从WordNet开始,通过选择和标注代表情绪概念的WordNet中的同义词集获得6种基本情绪相关的词语,然后继续利用WordNet中定义的关系、情绪标签和领域标签进行扩展,找到情绪同义词所在的同义词集,逐步扩展得到情绪词典。
情绪词典中的情绪词往往在较大程度上有领域依赖性,同一词汇在不同领域可能会表达完全不同的情绪。情绪词典中的情绪词对语言也有一定的依赖性。为解决语言依赖性问题,往往需要构建面向特定语言的情绪词典。然而,对于中文来说,情绪词汇仍然是不容易获得的,目前只有为数不多的中文情绪词典,如大连理工大学的中文情感词汇本题库(DU-TIR)。
在词典情绪词覆盖率和标注率较高的情况下,基于词典的情绪分析方法对于短文本和特定领域的文本进行情绪分析的效果比较好。但由于构建的词典往往只针对某个特定领域,因此跨领域的分析效果不好。此外,这种方法通常还依赖时间、语言等方面的背景知识,难以捕捉新词、变形词,难以自动构造高质量的情绪词典。
(二)基于规则的情绪分析
基于规则的情绪方法往往是在词典和分析情绪语料的基础上,结合表情符号、情绪词、程度副词等情绪影响因素,设置情绪分类规则库,并依据规则库规则进行情绪分析的一种方法。
鉴于一种情绪往往是由诱因事件触发的,诱因事件是情绪分析的重要组成部分,因此情绪原因检测是情绪处理中的一个新的研究领域。
(三)基于统计机器学习的情绪分析
1)基于有监督学习的情绪分类
基于有监督的情绪分类方法认为情绪分类是一个基于大量有标注数据的统计分类。它分析处理训练样本数据,通过某种数学模型产生一个推断功能,再利用训练后的模型映射新的样本数据。
2)基于无监督学习的情绪分类
分类器的训练需要大量有标签的数据,但大量准确标记的数据往往不易获得。另外,文本的情绪解释是高度主观的,有些情绪很难被准确标注出来,且某种程度上情绪特征并不容易识别,自动标注方法可能会损失一些准确率。基于无监督学习的方法的应用面更广。
3)基于半监督学习的情绪分类
传统监督学习的方法依赖于带标记的语料。半监督方法结合了结合了监督学习和非监督学习的优点,通过这种方法可以快速获得标签数据的大量子集,从而缓解了传统监督学习缺乏大量有标注数据的问题。
近年来,深度学习已成为机器学习中具有强大学习能力的一个分支。基于深度学习的词法分析、句子表示、文档表示以及知识表示等引起自然语言处理研究者们的极大兴趣。基于CNN的文本表示模型擅长局部特征信息的学习工作,它对特征学习的方式与N元语言模型类似,通过调节卷积窗口的大小控制每次卷积模型处理局部特征的范围。长短期记忆(LSTM)网络模型是一种特殊的RNN,它添加了单元状态用于保存序列信息并传送到下一个LSTM神经元,通过3个门(输入门、输出门、遗忘门)保护和控制神经元状态,对远距离结构特征的学习能力较为突出(LSTM能够对过去的信息有记忆,是因为它能够保证误差向后传递时较少衰减,实现了对过去较长时间范围内的信息保持),能更好地从文本中学习长期依赖信息。基于注意力机制的主要思路是日标序列的每步额外增加是来自源序列的信号,而信号为源序列每步输出的加权处理。得益于词嵌入技术的发展,基于深度学习技术的模型能更好地模拟词语之间的联系,使模型具有局部特征抽象化以及记忆功能,在情绪分析任务中具有很大的优势。
大规模标注数据集不易获得且成本昂贵。为克服这些困难,迁移学习是一个不错的选择。迁移学习为情绪分析研究提供了新的思路。
大多数已存在的迁移学习方法或假设源任务与目标任务共享相同的句子表示,或将每个句子的表示划分为共享特征空间和两个任务特定的特征空间。前一种方法可能导致学习句子表示时更多关注一些情感词,同时忽略其他模糊情感词,然而这些模糊词可能也是情绪分类中不可或缺的一部分;后一种方法可捕捉特定情绪词。然而,一些情感词只出现在源情感分类任务中,这些词在特定源特征空间中往往会受到更多的关注,在共享特征空间中受到的关注较少,因此,在情绪分类任务中这些情感词可能被忽视。但在标准的情绪分类任多中,任何情感词都蕴含着情绪,它们不应该被情绪分析任务所忽略。
目前很多模型是基于单一数据集完成情绪分类任务的。当以训练好的模型应用于其他数据集时,处理精度可能会下降,可见模型训练具有数据依赖性。有相关工作提出一种旨在提高模型的鲁棒性的多任务联合学习模型,该模型在多个文本情绪分析语料库上进行训练,每个数据集作为一个单独任务训练单个模型,最后在多个任务之间共享参数,实现联合学习。实验表明,在相同神经网络框架下,联合学习模型优于单任务学习模型。
一些情绪分类方法被视为单标签学习问题(即每个句子表达一种情绪),这种任务的性能要么取决于情绪词汇词典及相应标签,要么需要利用现有的学习方法完成分类任务。然而,在实际中,一个句子可同时拥有多种情绪,因此基于多标签学习的方法应引起重视。一般地,需要选择分类器输出的阈值并且将高于阈值概率的多个情绪分配给句子。但是,上述单标签和多标签方法都是在处理一个句子包含哪些情绪标签的问题,无法解决与情绪相关的歧义问题。为此,有文献提出标签分布学习方法,该方法可以表示与每个标签相关联的强度解决文本中的歧义问题,并提出一种多任务卷积神经网络,用于在单个句子中预测不同程度的多种情绪,可同时学到分布预测和情绪分类任务。具体地,给定一个句子,CNN模型首先将其表示为句子嵌入向量矩阵,然后使用多个不同宽度的过滤器和最大池化操作,由于大多数数据集仅为句子提供单个标签,因此提出了一种基于词典的转换策略,用于生成单标签数据集的主导标签情绪分布。
个人情绪的产生、表达和感知的过程受到很多因素的影响,相应的情绪诱因可以看作是触发相应情绪的事件或者条件,因此,情绪诱因识别和抽取是挖掘公众观点与知识发现的关键因素。本章以情绪产生的形式为中心,分别从事件结果、主体行为和实体对象三个方面进行情绪诱因提取,而这三个方面可以看作是情绪产生的直接原因,而对于复杂社会环境下的外部事件也是本课题所要考虑的诱因因素之一。最后通过情绪校验方法来得到更为准确的诱因提取结果。
本章建立了一个情绪分类体系模型——ECOCC (Emotion-Cause-OCC)模型,它是对 OCC 心理模型中情绪规则的修正,并结合心理学与计算机科学来分析对应的情绪诱因事件。该模型描述了一个具有 22 种情绪类型的层次结构,此结构包含三个主要分支,分别是事件结果、主体行为和实体对象,并以此来形成基础情绪。而其他的分支形成复合情绪和延续情绪,情绪间可能具有某种继承关系。
所谓的情绪诱因指的是诱发情绪产生的条件或者事件,也可能受到外部环境的影响,对于情绪诱因的探测性研究是继情绪分类之后的一个新的研究领域,是挖掘网络谣言传播根源和传播途径的关键问题所在。
微博,在中国作为一个基于信息共享、传播及获取的平台,用户可通过它发表140 字以内的文字信息,了解时事,回复、转发、评论他人消息,拓展自己的社交圈等,可随时将自己所想、所做等琐碎内容发送给朋友等人。它还是一个包含着大量情绪的载体,分析微博中情绪诱因的产生过程需要结合其实时性、短小精悍和具有口语化的特点。对于微博中的情绪诱因,本文将从两方面进行考虑:外部事件和内部事件。外部事件指的是当前社会环境中发生的最为突出的事件;内部事件指的是微博用户本身所陈述的引起情绪波动的事件。
根据此领域关键技术的分析,其方法多为建立在情绪框架和诱因语料库标记之上,采用基于规则的方法,以及将相关语言模型和基于情绪状态与诱发情绪条件的增量知识库联系在一起的情绪诱因抽取方法。从词性角度看,事件往往由一系列动词、名词、形容词、表语从句或介词短语组成,相关研究成果已表明,情绪诱因事件可看作是由一系列子事件构成的,多数子事件可看作是由一系列 E=(名词, 动 词, 名词)这样的三元组所在的短语构成的。故本文从“外部事件”和“内部事件” 这两个方面进行诱因事件的识别和提取。
通过分析新浪微博的特点可知,在微博中具有“#话题#”结构的短句往往是当前社会的热点话题,而对于外在因素在一定程度下可能会对个体的情绪变迁产生一定影响,因此可将其作为影响用户情绪的“外部事件”。
内部事件是触发主体情绪变化的直接原因,此事件的提取首先需要对博文中的事件进行识别,这也是为以后的诱因事件提取做准备。因此,本文以命名实体识别、依存句法分析、语义角色标注等为基础,建立用于提取子事件集的模型。主要步骤包括:
1)识别出人名、地名和机构名;
2)通过依存句法分析,识别出文本中可能存在的主谓/动宾等核心关系;
3)将文本中的词语进行动词、名词、形容词等词性标注;
4)通过语义角色标注识别出文本中表示施事、受事、时间、地点、主题等标记的短语。
在 ECOCC 情绪框架中,已通过分析得到 22 种细粒度的情绪,但其中可能有部分分类结果存在错误,导致这方面的原因有:在将微博文本中相关内容与模型成分中的评价成分和评价标准进行映射时可能存在误差;微博文本短小、灵活、口语化、情绪符号化等特点可能会影响情绪诱因规则的识别。为此,完成情绪映射关系后的 关键问题是如何对22种情绪进行校验。拟将粗粒度情绪分为五类基础情绪(即:“高兴”、“愤怒”、“厌恶”、“恐惧”、“悲伤”),对使用前述 ECOCC 情绪诱因模型得到的22 种细粒度情绪进行校验,将误差大的结果去掉。
本文首先利用卡方测试将高频词及类别相关度大的词选出来进行特征选择,然后通过使用 SVR 算法将情绪分成6类基础情绪,但由于22种情绪类型中没有一种情绪与粗粒度情绪中的“惊奇”相对应,因此本文将粗粒度情绪设定为5种。
最后,利用 ECOCC 模型得到的 22 类情绪与利用SVR 算法得到的基础情绪进行校验并将误差大的结果去掉(即:如果细分类中的一个情绪不属于经过 SVR 算法分类出的基础情绪中的某个情绪,则将其看做一个误差,并将其去掉)。
通过使用情绪诱因识别与提取技术,可以得到关于情绪与诱因事件之间的对应关系,多种诱因事件可能导致一种情绪,也可能一种诱因事件导致多种情绪,不同的诱因事件对情绪产生的作用力也有所不同,即一个诱因事件在导致情绪产生的所有诱因事件中所占的成分比例的大小会有所不同,其成分比例越大,说明该诱因事件产生某种情绪的概率越大,这为寻找产生情绪的主要诱因事件提供了有效的方法.
在微博文本中,一些语言特征在影响诱因事件情绪强度中起到了一定的作用,比如在微博文本中往往包含着大量的表情信息,而这些表情最能直接反映用户的当时的情绪,就拿 这一表情来说,它包含了强烈的高兴情绪,此外还有程度副词、32 否定词、关联词、标点符号。因此,有效地识别语言特征可更加准确地计算情绪诱因成分的比例。
贝叶斯算法普遍应用到自然语言处理的多个领域,比如文本分类、中文自动分词、信息抽取等。本文结合贝叶斯概率模型的特性,从已知先验概率和条件概率的结合下描述了在不同的情绪下产生诱因事件的成分比例。
上式中,已知先验概率即P(Emo)看作是一条微博文本中包含的第m个情绪所占所有情绪的比例的概率分布的P(Emo|Cau) 表示为在已知情绪类别为m时的n个诱因事件Cau出现的概率密度函数。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。