APP下载

基于机器学习的微博情感分类研究

2018-09-04冯成刚田大钢

软件导刊 2018年6期
关键词:机器学习特征选择微博

冯成刚 田大钢

摘 要:针对目前国内外学者对微博情感只作二分类研究,仅仅从正面和负面研究微博情感不足的问题,选取NLPCC2013-2014年多情感的微博数据集,重点研究常用的3种机器学习算法、3种特征选择以及特征权重方法对中文微博情感多分类的影响。实验表明:不管选择哪种特征权重,使用SVM的微博文本分类准确率都最高,KNN的准确率最低;不同特征权重下,信息增益作为特征选择的方法时,3个算法各自准确率都是最高的;当信息增益为特征选择,TF-IDF为特征权重时,支持向量机的文本分类准确率最高。由于微博简短、口语化,词袋模型忽视了词与词间的联系,导致微博情感分类准确率不高。

关键词:机器学习;情感分类;微博;特征选择;特征权重

DOI:10.11907/rjdk.173073

中图分类号:TP301

文献标识码:A 文章编号:1672-7800(2018)006-0058-04

Abstract:The current domestic and foreign research on micro-blog emotion is focused on binary classfication which is divided merely to positive and negative sides to study the weakness of micro-blog emotion. NLPCC multi-emotional micro-blog data set from the year of 2013 to 2014 is selected with the research focus of the three commonly used machine learning algorithm, three kinds of feature selection and feature weighting method on Chinese multi-bog emotional multi-classfication. The experiment shows that SVM text classification has the highest accuracy regardless of the choices of feature weights while KNN has the lowest accuracy ; the three algorithms have the highest accuracy under different feature weights with information gain as the feature selection method. When the information gain is the feature selection and TF-IDF is the feature weight, the accuracy of text classification of SVM is the highest. The final analysis shows that due to the short and colloquial features of micro-blog, the bag-of-words model ignores the connection between words and phrases, which leads to low accuracy rate of micro-blog classfication.

Key Words:maching Learning; emotion classfication; micro-blog; feature selection; feature weighting

0 引言

微博是一种分享和评论的平台,用户可以表达自己的观点和情感。近年来,微博已经成为人们沟通及情感交流的途径之一,产生的海量数据为文本情感分类提供了数据基础[1]。国内外研究文本情感分类主要是基于机器学习的方法[2],利用机器学习对微博语料进行训练,再利用训练好的模型时测试文本进行分类。

目前国内外学者一般对微博情感作二分类研究,仅仅用正面和负面划分微博情感。Pang[3]将传统机器学习方法引入电影评论的褒贬分类中,实验表明,支持向量机的效果最理想。但是中文文本与英文分词、语法是有区别的,英文分类的结论不一定适合中文。国内研究中,何跃等[4]对比多种文本分类方法构建最优分类器,实验结果表明机器学习方法适合于规模较大的研究并且SVM模型更适合细粒度的情感分类。欧阳纯萍等[5]在研究基于朴素贝叶斯情绪微博识别问题的基础上,提出基于多策略(SVM和KNN算法)的微博情绪分类方法。实验证明基于多策略的分类方法优于单一的方法。在特征选择和特征权重方面,Paltoglou等[6]利用TF-IDF算法计算分类特征的权值,以提高SVM分类器的效果[7-8]。刘志明[9]使用机器学习算法和特征选择对微博进行褒贬二分类,实验结果表明,信息增益为特征选择时,微博的情感分类效果最好。国内关于微博情感二分类有较好研究成果,但关于微博情感多分类问题的特征选择与特征权重研究较少。

由于情感多分类问题更加细腻,有些情感类词含义之间的区别十分微妙,机器学习方法对该部分学习能力值得进一步研究。本文重点研究机器学习算法、特征选择以及特征权重对微博情感多分类问题的影响,通过实验找到最优的机器学习方法以及特征選择和特征权重。整个实验过程都是在python软件下编写执行,数据集选用nlpcc2013-2014多类别的微博情感数据集,分词选用可直接调用分词准确率高的结巴分词。

1 文本分类流程

基于机器学习的文本情感分类问题,处理过程可以分为两个部分:一是文本学习过程,二是文本分类过程。其中,学习过程是指对微博训练集进行训练得到分类器,分类过程是指用训练好的模型来对测试文本进行分类。如果已知测试集类别,可用准确率评价分类器的好坏。

2 微博情感分类理论基础

2.1 机器学习分类算法

2.1.1 支持向量机(SVM)

在文本分类中,支持向量机是一种效果显著的方法。支持向量机将文本数据转化为支持向量,通过算法得到决策平面,从而解决文本分类问题。Thorsten Joachims将核函数引入SVM中,用线性核函数解决非线性的分类问题,就是将低维空间数据用核函数变换到高维空间中去,然后在转换后的高维空间找分割平面,期望使得分割平面两侧到训练点的间隔最大。

2.1.2 朴素贝叶斯(NB)

贝叶斯算法将一个文本看作一个特征,求文本所在类别的条件概率就是文本分类的过程。按照NB算法,先计算每个文本对所有类别文本的先验概率,再计算测试文本可能属于某一类别文本的后验概率,后验概率中数值最大的就是测试文本的类别。

根据式(2),可以将测试文本视为后验概率最大的类别。

2.1.3 K-最近邻算法(KNN)

KNN算法简单明了:如果一个样本在特征空间中的k个最相似样本大多数属于某一个类别,则该样本也属于这个类别。也就是分类的依据是该样本距离哪个类别最近就归属为哪个类别[10]。

KNN算法主要依靠周围的样本,对于文本特征交叉比较大、难以区分的文本而言, KNN方法比支持向量机和贝叶斯算法更为适合,而且新的测试文本加入训练集中,不需要再进行模型训练。但是当用KNN训练大语料时,计算开销大,花费时间长。

2.2 特征选择

2.2.1 信息增益(IG)

信息增益(Information Gain,IG)是某特征词语出现或不出现对文本类别分类的信息量大小,根据训练文本,将文本特征的信息增益值计算出来[11],计算方法如式(3):

2.2.2 互信息(MI)

互信息(Mutual Information,MI)可以衡量两个事件的关联度:

2.2.3 加权似然对数(WLLR)

加权似然对数法与MI方法类似,统计了特征词t-i与类别c-j之间的关联性,计算公式如下:

2.3 特征权重选择

2.3.1 布尔权重(presence)

布尔权重是一种计算特征项权值最简单的方法,如果特征项t-k出现在文档d-i中,则权值为1;如果不出现在文本d-i中,其权值就为0,其公式表示如下:

2.3.2 词频权重(TF)

如果在一个文本中,某个文本特征词出现的次数越多,那么它对文本类别的判定贡献越大:

2.3.3 TF-IDF

TF-IDF算法的主要思想是:如果某个词在一个文本中的出现次数多,但是在其它文本中却很少出现,那么就认为该词语具有很好的文本类别区分能力。

2.4 评价方法与指标

实验中用3个指标评价模型:准确率、召回率和F值。准确率衡量的是微博文本被预测类别与真实类别的一致性。

准确率=判断正确的样本数判断为该类别的样本数

召回率,是指微博文本被判定正确的个数占总的正例的比重。

召回率=判断正确样本数应判断正确为该类别的样本数

因为准确率高时召回率会低,而在召回率高时准确率会低。为了衡量该两个指标就用F值。

3 实验设计

数据来源:本文采用NLPCC 2013年和2014年情感评测任务的两个公开数据集,数据集中共有7种情感:happiness、like、sadness、disgust、 anger、 fear和surprise。由于有的微博句子不止一种情感,但是本文研究时只取其主要情感作为该微博的情感类别。两个数据集的统计信息如表1所示.最终的训练集11 575个,测试集文本7 720个。

3.1 特征权重

实验中选取3种特征权重(bool,TF,TF-IDF),分别测试3种不同的权重下,3种机器学习方法对微博情感分类的影响。

从图2可以看出:

(1)不管选择哪种特征权重,使用SVM的微博文本分类准确率都最高,KNN的准确率最低。

(2)同一种算法在不同特征权重下性能不一样,SVM在TF-IDF下分类效果最好,KNN在TF下分类效果最好,NB在3种特征权重下,分类效果变化不大。

3.2 特征选择

通過上述实验,得到在不同特征权重下,3种机器学习算法的分类效果。下列实验是当已经确定特征权重和机器学习算法的情况下,不同特征选择对分类效果的影响。根据上一节的结果(参考图2),由于采用TF-IDF为特征时支持向量机的效果最好,故对支持向量机采用TF-IDF特征(见图3)。同理,对贝叶斯采用TF-IDF特征(见图4),对K-近邻采用TF特征(见图5)。

图3中,在TF-IDF为特征权重,SVM为分类算法时,3种特征选择对分类效果的影响。得出如下结论:①随着特征数量的增加,3种特征选择都使准确率不断上升;②当特征数量达到22 500时,3种特征选择方法的效果趋于稳定并基本相同;③当特征数量小于22 500时,随着特征数量的增加,IG作为特征选择时微博文本分类准确率最高,MI作为特征选择时文本分类效果最差。

图4为采用TF-IDF为特征权重、贝叶斯算法下3种特征选择对分类效果的影响。从图中可以得出如下结论: ①当特征数量在18 000~22 500时,WLLR的性能表现比IG好;②随着特征数量的增加,3种特征选择都使准确率不断上升;③当特征数量达到22 500时,此时3种特征选择性能趋于稳定,文本分类准确率最高。

图5为在TF为特征权重、K-近邻算法下3种特征选择对分类效果的影响:①不同于图3、图4的结论,图5中随着特征数量的增加,IG和MI准确率不是平稳上升,而是来回波动;②特征数量不是越多越好,当IG、MI作为特征选择时,过多的特征数量反而降低了文本分类的准确率;③当特征数量达到22 500时,此时3种特征选择性能趋于稳定;④当特征数量在15 000左右时,此时的微博文本分类准确率较高,原因还有待进一步的研究.

3.3 一定特征数量下,3种算法在不同特征选择与特征权重下的比较

参考图5的特点,选取特征数量为15 000,测试在一定特征数量下,特征选择和特征权重对微博文本分类的共同影响。从表2可以得到如下结论:

(1)不同特征权重,信息增益作为特征选择的方法时,3个算法各自准确率都是最高的。

(2)当信息增益为特征选择时,TF-IDF与SVM组合准确率最高,KNN与TF-IDF组合准确率最低。

(3)当互信息为特征选择时,Bool与SVM组合准确率最高,KNN与TF组合准确率最低。

(4)在加权对数为特征选择下,WLLR与SVM组合准确率最高,KNN与TF-IDF组合准确率最低。

3.4 微博单类情感P、R、F值比较

根据表2的结论,测试在最优组合下,单种情感P、R、F值的对比,对表3中7种情感F值的大小作图6比较。

图6中可以看出,“高兴”、“悲伤”、“厌恶”F值比较大,而“愤怒”、“喜好”、“恐惧”、“惊讶”的F值较小。通过分析主要由3个方面造成:①“高兴”、“悲伤”、“厌恶”这类情感区分度大,而像“高兴”与“喜好”、“恐惧”、“悲伤”与“厌恶”这类情感,彼此之间会有情感交叉,导致区别度并不是很高;②一个文本中往往不只一种情感,大多数文本中都会包含1~2种情感,只是主情感强烈而已,但是不强烈的情感却为微博文本情感的分类造成了难度;③语料库不均衡,也会导致情感分类不准确,从图6看“惊讶”的F值最小,并且“惊讶”的训练数据量只有630,也很低,过小的数据量导致算法无法获得“惊讶”区别于其它情感更好的特征词。

4 结语

本文对微博文本情感分类进行研究,通过实验对比了在3种算法、3种特征选择、3种特征权重下的分类效果,当以SVM作为机器学习算法、IG为特征选择、TF-IDF为特征选择时,分类效果最好,但是最好的分类效果下准确率只有60%。主要是由于微博内容过于简短、语言含各种噪声(错别字、缩写、表情符号等非正式用语等),使得对微博数据的文本情感分析相对于传统的文本情感分析有一定难度和特殊性。文本本身表示模型VSM存在非常严重的数据稀疏性问题,使得分类器面临维度灾难,忽略了特征的次序和位置关系,且不考虑文本长度,不考虑语义联系,从而大大降低了分类性能。能找到一种更好的微博短文本表示方法,是解决短文本分类难题的一个方向。

参考文献:

[1] 赵妍妍,秦兵,刘挺.文本情感分析[J].软件学报,2010:1834-1848.

[2] LI H. Text classification using machine learning techniques[J]. Wseas Transactions on Computers, 2008,4(8):966-974.

[3] BO P, LEE L, VAITHYANATHAN S. Thumbs up: sentiment classification using machine learning techniques[C]. Acl-02 Conference on Empirical Methods in Natural Language Processing, 2002:79-86.

[4] 何跃,邓唯茹,张丹.中文微博的情绪识别与分类研究[J].情报杂志,2014(2):136-139.

[5] 欧阳纯萍,阳小华,雷龙艳,等.多策略中文微博细粒度情绪分析研究[J].北京大学学报:自然科学版,2014,50(1):67-72.

[6] PALTOGLOU G, THELWALL M. A study of information retrieval weighting schemes for sentiment analysis[C]. Proceedings of the Meeting of the Association for Computational Linguistics, 2010:1386-1395.

[7] O'CONNOR B, BALASUBRAMANYAN R, ROUTLEDGE B R, et al. From tweets to polls: linking text sentiment to public opinion time series[C].Washington, Dc, Usa, May:DBLP, 2010.

[8] JANSEN B J, ZHANG M. Twitter power: tweets as electronic word of mouth[J].Journal of the American Society for Information Science & Technology,2009:2169-2188.

[9] 劉鲁,刘志明.基于机器学习的中文微博情感分类实证研究[J].计算机工程与应用,2012,48(1):1-4.

[10] 王超学,潘正茂,马春森,等.改进型加权KNN算法的不平衡数据集分类[J].计算机工程,2012,38(20):160-163.

[11] 任永功,杨荣杰,尹明飞,等.基于信息增益的文本特征选择方法[J].计算机科学,2012,41(11):460-462.

(责任编辑:何 丽)

猜你喜欢

机器学习特征选择微博
何以解忧?基于社交媒体大数据的睡眠健康公众叙事研究
Kmeans 应用与特征选择
前缀字母为特征在维吾尔语文本情感分类中的研究
事实与流言的博弈
基于支持向量机的金融数据分析研究
重大突发事件中微博之力不微
联合互信息水下目标特征选择算法
基于特征选择和RRVPMCD的滚动轴承故障诊断方法
基于二元搭配词的微博情感特征选择