裴洪丽
(山东交通学院 信息科学与电气工程学院,山东 济南 250357)
近年来,随着互联网技术的快速发展,社交媒体快速崛起,网民可以在网络上发布对于各类事件的看法,表达自己的态度。与此同时,伴随着电商平台的快速发展,各类购物网站、外卖平台用户持续增长,每天产生数以亿计的评论信息,这些呈指数增长的评论信息数量庞大,难以梳理,但是很有研究价值。
情感分析,有时候我们也叫作倾向性分析,或者意见抽取,或者意见挖掘,或者情感挖掘等,是人们对产品、服务、组织、问题、事件、话题,及其属性的观点、情感、评价和态度的分析。目前情感分析涉及文本、图像、声音、视频等各类表现形式,还包括结合这些表现形式的多模态,分类的结果是将一个特定的带有情感倾向的评论文本分类成积极、消极和中性,甚至更复杂多层次的情感。
情感分析具有极为广泛的应用价值,比如在某些政策出台以后,政府可以从社交平台用户评论发现网民针对这一政策的态度,从而为转变政府职能、指导政策制定提供依据;再比如,在外卖平台从评论中分析菜品的味道、送达时间、送餐态度、菜品新鲜度等属性的情感倾向,帮助其他用户点餐决策,商家可以通过评论改进服务和产品。这些,都属于情感分析所要解决的问题。
前期的情感分析大都选取文本、语音、图片等单一模态信息进行情感识别,研究者做了很多相关研究。但是,随着科技的发展,仅仅依靠单一模态信息,很难满足当前的情感识别需求。此外,单一的模态信息中所包含的情感信息是十分有限的,这会加大情感分析的难度,降低情感分析的准确率。比如,只关注文本信息“我的天啊”,猜测不出来表达者是惊讶还是恐惧,如果添加一张表达者的图片或者一段语音,可能就很容易的猜测出其情感。为了解决单模态的局限性,研究者开始使用多种模态信息进行跨模态的情感分析。
如图1所示,多模态情感分析框架主要包括各个模态的特征提取和各模态之间进行特征融合。其中,模态信息主要包括视频、语音、文本、图片等,虽然多模态数据包含了更多的信息,但如何进行多模态数据的融合,使得利用多模态数据能够提升效果,是多模态情感分析研究的重点。
图1 多模态情感分析框架
一般而言,在没有说明的情况下,情感分析大部分是指文本情感分析。其一般流程主要包括:数据预处理、特征提取和情感分类,如图2所示。
图2 文本情感分析流程
数据预处理操作主要包括数据清洗、分词、词性标注、去停用词等。其中数据清洗是指去除噪声,去除脏数据,例如在文本的数据清洗中,则是去除无效字符和数据,即删去HTML链接、css标签、无用标点符号等。词是最小的、有意义的语言成分,分词是指将原文本分割成一系列单独的符合语义、语境的词序列。其中,中文分词和英文分词是有区别的,在英文中,词与词之间都是由空格隔开的,一个单词代表一个具体的含义,因此不需要特意去划分。在中文表达中,词与词之间没有明显的标识符进行划分,所以还需要通过特定的方法来进行分词操作。其中,常用的分词工具有jieba分词、LTP分词等。词性标注是指在分词之后,对每个词进行标注词性类别。去停用词是指去除那些像介词、连词等没有实际意义词的过程。
特征表示是指将自然语言中的词句转换成计算机可以理解的数字向量。
常见的特征表示方法有one-hot方法、word2vec方法等。one-hot方法是文本特征表示中较为常见的方法,该方法按照位寄存器对个状态进行编码的原理进行的,状态寄存器只有两个状态,即“0”或“1”,将词语在词语集合中的下标作为词的表示。对于文本中的每个特征,如果有个特征值,则经过one-hot编码后,就形成了个二元特征,其中这些特征互斥且每次只有一个状态为“1”。该方法实现简单,但是如果特征值特别多的话,会存在数据稀疏等问题。有人提出word2vec的模型概念来对文本进行词向量的表示,该方法将意思相近的词映射到向量空间中相近的位置,因此可以将one-hot编码转化为低维的连续值,word2vec模型可以分为CBOW和Skip-gram两种模式。CBOW模型是通过上下文关系预测目标词,Skip-gram模型则相反,是从目标词推测出上下文语句。
构成文本的词语数量是相当大的,表示文本的向量空间的维度也相当大,可以达到几万维,因此需要进行维数压缩的工作。特征提取是为了提高分类效率,减少计算复杂度,从而努力移除原始特征中不带情感信息或者情感信息较少的特征。
文本情感分析方法主要包括:基于词典的情感分析、基于机器学习和基于深度学习的情感分析方法。
基于情感词典的情感分析方法,是指将提取出来的情感词与已存在的情感词典进行匹配,从而计算出情感极性得分,根据得分得到情感极性。情感词典包括程度副词、正面情感词、负面情感词和否定词四个部分,常见的情感词典有SentiWordNet、WordNet、HowNet等。基于词典的情感分类,简单易行,而且通用性也能够得到保障,但仍然存在一定的缺陷:语言是一个高度复杂的东西,采用简单的线性叠加显然会造成很大的精度损失;词语权重同样不是一成不变的,而且也难以做到准确;而且随着信息技术的快速发展,涌现出许多网络新词,现有的情感词典需要不断地扩充才能满足需求。为提高情感分类的准确性,克服基于情感词典的情感分析方法存在的缺陷,研究人员开始研究基于机器学习的方法。
基于机器学习的情感分析方法是指使用大量的训练样本,利用机器学习算法进行特征提取,并使用分类器进行文本情感分类,常用的分类模型有SVM、朴素贝叶斯等。基于机器学习的情感分析方法在对文本内容进行情感分析时常常不能充分利用上下文文本的语义信息。由此,许多研究者对基于深度学习的情感分析方法进行了研究。
基于深度学习的情感分析,广泛使用的是RNN。递归神经网络(RNN)是处理各种长度序列(例如句子、视频和音频)的强大工具。因此其在时间序列建模中得到了广泛的应用,但它认为最近的词比以前的词更有意义,这可能会降低用于捕获整个文档语义的效率。而LSTM模型克服了RNN的局限性。由于门控循环单元(GRU)网络,在捕获长期依存关系方面也具有更好的性能,因此也被广泛使用。此外,双向递归神经网络(BRNN)和Bi-LSTM或BGRU等双向版本也被广泛用于捕获语义。另外,引入注意力机制来提高分类的准确率,先使用CNN、RNN和LSTM等网络结构进行向量表示或者特征提取之后,通过注意力机制为得到的特征赋予权重值,使得重要信息被突出,从而增加了分类的准确率。随着Bert的出现,越来越多的研究开始关注预训练模型,用数据集已经训练好的模型,通过对预训练模型的微调可以实现较好的情感分析结果。
语音情感分析一直是一个比较成熟的技术领域,语音也是自然语言中表现情感重要的渠道之一,研究人员结合语音信号处理等技术分析语音情感。
基于语音的情感分析是指从语音中获取有效的语音信号后,提取情感特征,从而对特征进行一个情感分类。基于语音情感分析一般过程包括:数据预处理、特征提取和语音情感分类。
数据处理包括语音降噪、数据分帧和加窗等。语音降噪是指对语音数据进行清洗,去除数据噪声,减少外界环境对语音特征提取的影响,降低信噪比。语音降噪常用的方法是使用多种滤波器来减少噪音的产生。
由于语音信号短时平稳性的特点,所以必须将信号截成一小段一小段来分析。数据分帧即是对语音信号按照一定的标准进行截断,从而形成固定长度的语音数据片段。分帧后每一帧的开始和结束都会出现间断,因此分割的帧越多,与原始信号的误差就越大,加窗就是为了解决这个问题,使成帧后的信号变得连续,并且每一帧都会表现出周期函数的特性。常见的窗函数有:矩形窗、汉明窗、汉宁窗等,在语音信号处理中,通常使用汉明窗,其公式为:
语音特征提取是指压缩语音数据,即消除那些与分析无关的信息,并最大化对语音差异检测有显著贡献的内容。大量研究表明,表征语音情感的特征主要包括韵律特征、音质特征和谱特征等,其中韵律特征又包括基频、时长、能量等,音质特征包括语谱和音色方面的特征,谱特征主要包括梅尔频率倒谱系数(MFCC)、线性预测倒谱系数(LPCC)、对数频率功率系数(LFPC)等参数。目前,已经开发了一些工具包来提取手工特征。比如一个常用的工具是openSMILE,可用于提取声学特征。近年来,随着深度学习的不断发展,也广泛用于语音情感分析中。
对于语音特征分类阶段,传统的情感分析算法主要使用机器学习算法,如SVM、HMM、GMM等,这里就不再赘述。近年来,RNN、CNN和LSTM等深度学习技术显著提高了语音情感识别的整体效率。文献[9]提出了一种基于LSTMRNN的语音情感分类系统。文献[10]使用CNN进行语音特征提取,然后使用LSTM进行情感分类。文献[11]选用双向LSTM网络,对IEMOCAP数据集中包含的语音、表情情感信息进行分类。
多模态情感分析是在单模态的基础上进行的,需要先提取各单模态特征,然后将各模态融合,并进行情感分类。模态融合的方法主要包括特征级融合、决策级融合和混合融合,由于本文只涉及语音和文本两种模态,因此只对特征级融合和决策级融合进行阐述。
特征级融合,又称为早期融合,是指在各个模态的特征数据提取之后就将它们连接起来。在语音和文本的多模态情感分析中,分别将语音和文本的情感特征提取出来,进行一个向量的表示,然后将它们融合起来,最后输入分类器进行情感分析。特征级融合方式简单易行,最大程度保留了各个模态的特征信息,但是很难表示出各模态的同步信息。语音和文本模态特征级融合流程图如图3所示。
图3 特征级融合流程图
例如,HU等人采用openSMILE进行声学特征提取,用基于词典的方法进行文本特征提取,再将二者使用特征级融合方法进行融合,最终利用SVM和CNN方法进行情感分类和比较。文献[13]利用CNN-LSTM提取语音特征,使用CNN提取文本特征,然后使用特征级融合方法进行融合,并使用三层神经网络进行情感分类。文献[14]使用LSTM整合了视频信息,并将其与音频和文本信息通过特征级融合的方式进行训练。
决策级融合也称后期融合。是指将每个模态的特征单独进行分类,将分类结果进行融合,从而得到最终的情感分类结果。在语音和文本的决策级融合中,首先将两个模态的特征提取出来,并使用各自的分类器进行情感分类,最后再使用某种方法,将两种情感分类结果进行决策级融合,从而得到最终的情感分类结果。使用决策级融合,考虑到了模态之间的差异性,但是,由于在不同模态间使用了不同的分类器,使得整个分类过程烦琐而耗时。语音和文本模态决策级融合流程图如图4所示。例如,文献[15]使用多模态模态提出了一种基于深层CNN的特征提取方法。该方法使用CNN对文本情感特征进行提取,同时使用openSMILE进行音频特征提取,再将文本特征和音频特征送入各自的分类器中进行分类,最后将结果进行决策级融合。
图4 决策级融合流程图
本文详细描述了情感分析和多模态情感分析的研究背景、内容、相关工作等,其中对单模态文本和语音情感分析的过程及研究现状进行了详细介绍,并对多模态(语音、文本)情感分析从特征级融合和决策级融合展开分析。