APP下载

基于隐马尔可夫模型的文本情感分析

2020-12-03李秋伶

关键词:特征词维数分类器

李秋伶,郑 静

(杭州电子科技大学经济学院,浙江 杭州 310018)

0 引 言

情感分析又被称为观点识别、情感挖掘、情感倾向性分析等,在社会重大舆论、商业营销策略及平台推荐系统中起着重要作用。2003年,K.Dave等[1]研究开发的ReviewSeer是全球第一个情感分析工具,2000年左右,随着情感词典概念的诞生,哈佛大学构建的GI评价词典、普林斯顿大学的WordNet,以及董振东、董强父子研发的HowNet情感词典等受到广泛关注,而后Google、百度、阿里巴巴等平台也根据网络评论不断更新各自的推荐系统。文本数据的情感分析已成为文本数据挖掘研究的重心。2019年,E.Georgiadou等[2]使用相关工具挖掘Twitter文本情感,并将分析结果应用于脱欧谈判,辅助政府决策。早期的情感分析方法是构造情感词典,通过比对文本中含有的正向或负向情感词来判断文本表达的情感倾向[3]。词典的构建工作量大、时效性低。随着深度学习方法在文本分类领域的广泛应用,长短期记忆神经网络(Long Short-Term Memory,LSTM)在文本处理领域崭露头角。Wang Y.Q.等[4]提出了基于注意力机制的LSTM模型,加强了提取句中指定特征信息的能力。顾军华等[5]使用卷积操作提取文本注意力信号,提出了基于卷积注意力机制的长短期记忆神经网络模型。常宸等[6]针对文本数据的真值发现问题,通过双向门控循环单元模型并包含注意力机制的算法来获得可靠的文本答案,算法优于传统真值发现算法。但是,上述算法需占用大量的训练时间和资源。

隐马尔可夫模型(Hidden Markov Model,HMM)是一类处理时序数据的弱分类器,是一种结构最简单的动态贝叶斯网的生成模型,在自然语言处理领域得到广泛应用。P.Frasconi等[7]在模型中加入了遗传算法以减少HMM进入局部极小的概率。杨建等[8]提出将HMM应用于自动文本分类,对文档类别中出现的不同特征词集合,进行多类别文本的分类。何建民等[9]选择网民特征、信息主题和信息内容完整度三维指标来构建HMM,揭示微博舆情演化发展的一般规律。M.Kang等[10]构建了基于文本的HMM,通过训练文本中的词序列以取代情感词典,对文本进行分类。

HMM的训练不需要大规模词典集,并且能够在状态转换序列中体现不同情感类别文档的形成演化过程,反映一定的文本语义性质。但在实际应用场景中,HMM参数调试繁琐、训练效率低下,分类准确率也不高。自适应增强(Adaptive Boosting,AdaBoost)算法通过训练一系列弱分类器并对其进行组合,得到一个准确度高的强分类器,构造过程简单,且不易发生过拟合,是一种使用广泛的提升算法。为了进一步优化模型,本文HMM与Adaboost结合起来进行训练,得到由多个HMM分类器构成的自适应-隐马尔可夫模型Ada-HMM,有效提高了分类性能。

1 情感分类模型

1.1 数据采集与处理

本文以互联网电影资料库(Internet Movie Database,IMDB)数据集为例进行情感分类。IMDB影评数据集包含ID、情绪和文本等3项内容,分为训练集和预测集。首先对训练集进行预处理,主要包括删去标点、数字以及特殊字符、去除停用词、词形还原等。然后对文本数据进行向量化,即由该文档每个词表示的向量集构成文本向量。文本向量化后,对文本向量进行特征选择,以降低向量维数。特征提取就是在保证原文含义的基础上,提取出对文本特征类别最具有代表性的信息。本文选取词频-逆文本频率(Term Frequency-Inverse Document Frequency,TF-IDF)进行特征提取。

为进一步简化模型的复杂度,改进矩阵性能,提高结果精确度,本文选择奇异值分解(Singular Value Decomposition,SVD)对特征选择后的词句矩阵进行降维处理。SVD分解公式如下:

1.2 训练HMM分类器

HMM由两层构成,隐藏层是一个由马尔可夫链随机生成不可观测的状态随机序列,观测层是由各个状态生成的一个可观测的随机序列。HMM由初始的概率分布、状态转移概率分布以及发射概率分布确定。设S是所有可能的状态的集合,C是所有可能的观测值的集合,即有:

S={S1,S2,S3,…,SN},C={c1,c2,c3,…,cM}

其中,N为马尔可夫链状态个数,M为状态可能生成的不同观测值个数。

将HMM引入文本处理中,因其分类准确度不依赖情感词典和规则集的特点,使得模型能有效应对文本的变化。HMM在适应话题变动与舆论环境发展的同时,还能将词汇的概率分布特征融入模型中,提取文本中的时序信息,体现文档演化过程,并且反映出一定的文本语义,尤其适用于不含显著情感词汇或隐含情感的文本。

对文本进行情感分析时,主要是通过分析词汇的情感极性、情感强烈程度及隐含情绪的语法来判定其情感类别。在本文的训练数据集中,情感分析包括正向与负向情感,因此模型中存在正向情感和负向情感这2个类别,需要训练2个HMM。通过统计学方法计算模型参数,得到初始状态分布矩阵π、状态转移矩阵A以及发射矩阵B。

使用正向情感文本训练得到正模型参数,负向情感文本训练得到负模型参数。λy表示相应的HMM分类器参数,y=1为正向HMM,y=-1为负向HMM,模型参数内含相应正向或负向的文本演化、特征词输出规律,包括隐含情绪的修辞手法等。以“这部电影真有趣”为例进行分类,分类器模型如图1所示,将观测序列转化为对应的隐藏状态序列,πq1为状态q1的初始分布概率,P(o1|q1)为隐状态q1向观测值o1发射的概率,Pq1,q2为隐状态q1向q2转换的概率。

图1 隐马尔可夫模型分类示例

HMM能综合文本中的所有特征分布,考虑上下文间的影响,得出最后的分类结果。将待分类文本分别带入正、负模型参数,计算该文本在正、负HMM中的生成概率,生成概率最大的模型即为该文本的分类结果,最大生成概率为:

1.3 构建AdaBoost提升器

构建单一的HMM分类器是弱分类器,准确度较低。因此,本文在HMM的基础上,通过AdaBoost算法将若干个分类器综合起来,提出Ada-HMM模型,大幅提高了分类准确度,具体结构如图2所示。

图2 Ada-HMM模型结构

算法主要流程如下。

(1)输入训练数据集L={(x1,y1),(x2,y2)…(xN,yN)},其中xi∈X⊆Rn表示文本向量,yi∈Y={-1,1}表示文本的情感类别。

(2)令h=1。

(4)h逐次递增,取值为1,2,3,…,循环操作,直至h=H。

①采用自助抽样法从数据集L中抽取正向和负向的训练样本。

④若eh≥0.5,则跳转至①;否则继续循环。

⑤h=h+1,直到h=H,结束循环。

2 实验结果及分析

2.1 实验结果

实验使用的数据集包括:①二元分类的影评数据集(Movie Reviews,MR),获取地址为http://www.cs.cornell.edu/people/pabo/movie-review-data/;②消费者评论数据集(Customer Reviews,CR),获取地址为http://www.cs.uic.edu/~liub/FBS/sentiment-analys;③斯坦福情感(Stanford Sentiment Treebank,SST-2)数据集,是MR的拓展数据集,获取地址为http://ai.stanford.edu/sentiment/;④IMDB数据集,共计5万条,获取地址为http://ai.stanford.edu/amaas/data/sentiment/。

将Ada-HMM模型与具有代表性的文本分类方法及前沿分类方法进行比较,对比模型包括支持向量机(Support Vector Machines,SVM)、多项式朴素贝叶斯分类器(Multinational Naïve Bayes,MNB)、矩阵向量递归神经网络(Multi-View Recurrent Neural Network,MV-RNN)模型[11]、多通道架构的卷积神经网络模型(CNN-Multi)[12],比较结果如表1所示。

表1 不同模型的分类准确率对比 %

从表1可以看出,对每个数据集使用10折交叉验证发现,在除SST-2之外的测试数据集中,Ada-HMM模型的分类准确率优于SVM,MNB,MV-RNN和CNN-Multi。在SST-2数据集中,Ada-HMM模型的分类准确率排名第2,仅次于CNN-Multi。

在IMDB数据集中,通过准确率、精确率、召回率以及F1值4个指标进行多模型对比,结果如表2所示。从表2可以看出,Ada-HMM模型不仅优于SVM,MNB等传统机器学习模型,对比LSTM,CNN等深度学习模型以及基于卷积注意力机制的双向长短期记忆神经网络(CNN-ATT-BiLSTM)模型[6]等改进的深度学习模型,准确率等指标均有所改进。

表2 IMDB数据集实验结果对比

2.2 模型参数分析

基于IMDB数据集探究对Ada-HMM模型分类性能产生影响的主要参数,包括分类器个数、特征词个数以及SVD维数。在评估模型分类性能时可选择的评估指标有准确率、精确率、召回率、F1值。在需兼顾精确率和召回率、让两者同时达到较高平衡点的情况下,选取两者的调和平均数——F1值来评价模型的表现。Ada-HMM性能随不同参数变化的情况如图3所示。

图3 参数变化对Ada-HMM模型性能的影响

图3(a)中,随着分类器个数的增加,F1值波动上升,并且波动幅度逐渐减弱、上升趋势显著,说明分类器个数与模型性能存在显著正相关关系。图3(b)中,随着SVD维数的增加,F1值始终在0.9上下浮动,说明模型性能与SVD维数无显著关系。图3(c)中,随着特征词个数的增加,F1值有小幅度提升,特征词个数的增加虽然减少了特征提取阶段损失的原始数据信息,但对模型性能的影响较弱。依据TF-IDF原理,特征词所含的文本信息依次递减,增加特征词改善的模型精度有限。通过图3可知,不论改变哪个参数,Ada-HMM模型在测试集与训练集的F1值相当,表明模型有较好的适用性。

为进一步寻找模型的最优参数,进行了控制变量的参数调整实验。当SVD维数为300,特征词个数为1 200时,调节分类器个数,得到模型各指标变化数据如表3所示。分类器个数为15,特征词个数为1 200时,调节SVD维数,得到模型各指标变化数据如表4所示。分类器个数为15,SVD维数为300时,调节特征词个数,得到模型各指标变化数据如表5所示。

表3 分类器个数对Ada-HMM模型指标的影响

表4 SVD维数对Ada-HMM模型指标的影响

表5 特征词数对Ada-HMM模型指标的影响

实验发现,在HMM分类器数量逐渐上升的情况下,Ada-HMM模型的正负文本分类准确度等指标均稳定提升。除分类器个数以外,特征词个数以及SVD维数也是影响模型效率与性能的关键参数。

在构造分类器时,需兼顾性能与效率,找到合适的最优参数。由于分类器个数对模型表现影响较大,因此需确定最优分类器个数。通过表3可知,最优分类器个数为15时,F1值最高值为0.933。在此基础之上,选取表4中的最优参数,由图3(b)可知,SVD维数与分类器性能无显著关系。尽管SVD维数为650时,F1值最高值为0.948,但随着SVD维数的升高,模型训练效率不断降低,因此应选取使模型训练效率最高时的值,即SVD为300维时,F1值为0.933。同理,提升特征词个数使得模型增加的训练时间成本远大于提升的精度,因此在表5中,特征词个数为1 200时,模型训练效率最高,F1值为0.933;特征词个数为1 800对应F1值虽为0.943,但模型训练效率低下,故舍去。综上分析,实验得到的最优参数为:分类器个数15,SVD维数300,特征词个数1 200。由表4知,模型按该参数组合对数据集进行分类时,得到的F1值为0.933。

3 结束语

本文通过自适应增强算法对HMM模型进行改进,提出适用于文本的Ada-HMM模型,克服了情感分析中文本不含显著情感词汇或运用修辞手法隐含情感倾向的问题,提高了文本情感分类模型的性能,具有较好的分类效果。但是,本文的研究是针对二分类任务,下一步将对多分类文本展开研究。

猜你喜欢

特征词维数分类器
一类平面数字限制集的维数
基于Simhash改进的文本去重算法
学贯中西(6):阐述ML分类器的工作流程
基于SVD 与数学形态学分形维数谱的战场声特征提取*
基于类信息的TF-IDF权重分析与改进①
基于朴素Bayes组合的简易集成分类器①
含非线性阻尼的二维g-Navier-Stokes方程全局吸引子的维数估计
一种面向财务文本分类的TF-IDF改进算法
基于动态分类器集成系统的卷烟感官质量预测方法
一种自适应子融合集成多分类器方法