基于电商评论的文本情感分类

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:qianpu1234
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:中文文本的情感分类是文本分类的重要领域,文章通过文本数据的采集、数据处理、文本数据向量化、分类器分类这四个步骤展示了文本分類的过程。采用TF-IDF和Word2Vec两种特征提取方式在同一种分类器下的分类效果,得出更适合实验数据集的特征提取方法。随后探讨了随机森林、SVM、KNN、AdaBoost四种文本分类算法在数据集上的表现效果,对四种分类效果进行了分析和比较。
  关键词:情感分类;特征提取;随机森林;SVM;KNN;AdaBoost
  中图分类号:TP181 文献标识码:A
  文章编号:1009-3044(2019)11-0290-03
  Abstract: Sentiment classification of Chinese text is an important field of text classification. The article shows the process of text classification through four steps: text data collection, data processing, text data vectorization and classifier selection. By comparing the classification effects of TD-IDF and Word2Vec in the same classifier, a more suitable feature extracting method was obtained. Then, the performance effects of four text classification algorithms including random forest, SVM, KNN and AdaBoost on the data set are discussed, and the four classification effects are analyzed and compared.
  Key words: sentiment classification; feature extraction; random forest; SVM;KNN; AdaBoost
  1引言
  随着近年来网络信息技术的飞速发展,网上购物已经成为人们生活中不可或缺的一部分。消费者在无法直接体验商品的时候,商品的评论数据就为消费者决策提供了很强的参考性。通过对评论数据进行情感分类,生产者可以了解购买商品的客户对商品的满意度,并对下一步的产销计划做出调整。
  文本情感分析,又称为倾向性分析,是对带有情感色彩的主观性文本进行分析、处理、归纳、推理的过程[1]。文本情感分析按照处理文本粒度从小到大的方式可以划分为词语、句子、段落、篇章。现阶段情感分析方法主要有两大类:一是基于词典的情感分析,根据句子中的情感词程度的不同赋予不同的权值,计算句子、段落、篇章的情感分值[2],从而判定文本的倾向性。二是基于机器学习的情感分析,主要是将情感分析问题看成一个二分类的问题,对文本内容进行结构化的处理,输入到分类模型中进行训练,对测试数据用模型来预测结果。
  本文对某国外一款手机的评论信息进行数据爬取及处理,通过机器学习的方法对数据进行情感倾向性分析,最终分类的正确率达到了86.4%,在评论数据集上表现出较好的分类效果。
  2 数据获取及处理
  2.1 数据获取
  各大购物网站上有很多购买者对购买的商品使用后发表的评论,采用Python爬虫对该手机相关的评论数据进行采集。经过对目标内容进行分析后,发现请求的目标地址的规律,通过urllib库中的request请求目标地址,返回json字符串,对此进行解析,从而得到评论的内容,写入CSV文件中,数据采集的流程如图1所示。
  爬虫程序采集到的正向情绪评论和负向情绪评论示例如表1所示。
  2.2 数据处理
  文本数据的预处理主要包括分词和去停用词两个步骤[3]。
  中文分词是指将一个汉字序列划分成一个个单独的词。中文在表现形式上和英文有明显的不同,英文的每个单词之间会用空格进行分隔[4],而中文使用标点符号进行句子的分隔,对组成句子的词并没有形式上的分隔符。本文采用jieba分词对评论数据进行分词处理。
  停用词是指一些完全没有用或者没有意义的词。本文使用的是哈工大停用词表,去除掉评论数据中的无意义的词语,可以更好地判断评论数据要表达的情感倾向。
  3 特征提取
  特征提取是指将一组原始化的特征项转化成具有明显物理意义、统计意义的特征。由于文本是非结构化的语言,计算机很难直接对它进行运行和处理,这时候我们就需要将文本转化成能够被计算机识别的机构化的表示,这个过程就相当于文本的特征提取。
  常用的文本提取方法有以下三种:
  (1)CountVectorizer通过计数将文本中的词语转化成词频向量。CountVectorizer中考虑每种词汇在训练文本中出现的次数,没有考虑词语之间的相互关系和词语的在句子中的重要性。
  (2)词频-逆向文件频率(TF-IDF)是统计每个词出现的词频(TF)再乘以一个逆文档频率(IDF)。逆向文档频率是将总的文档数目除以包含该词语的文档数,再取以10为底的对数。逆向文档频率可以衡量一个词语的重要性。TF-IDF能够过滤掉常见的词语,保留句子中重要的词语。
  (3)Word2Vec是使用词向量来表示文本信息,是通过一个嵌入空间来表示文本的相似性,文本之间相似性越高,空间上的距离就越近。Word2Vec中有两个模型,一个是CBOW,它是通过给定的上下文来推测输入的词语;另一个是Skip-gram,它与CBOW刚好相反,是通过输入的词语预测上下文。Word2Vec首先生成模型,然后再通过模型将文本向量化。   本文分别采用了IF-IDF算法和Word2Vec两种方法对评论文本进行向量化,可以通过对比实验结果来判断哪种方法对于本文使用的数据集能产生更好的分类效果。
  4 情感分类
  4.1 分类模型
  文章使用了KNN、随机森林、SVM、AdaBoost四种算法来进行分类,同过对比能够看出不同算法在本文数据集上的分类效果。
  KNN算法是根据样本周围的一个或者多个邻近样本来确定自身所属的类别的,核心思想就是如果一个样本点在特征空间中的K个最相邻的样本大多数属于某一个类别,那么该样本点就是属于这个类别[5]。KNN算法适用于类域交叉或者重叠较多的待分类的样本集。
  随机森林是以决策树为基学习器构成的集成算法,在决策树的训练过程中加入了随机属性选择。决策树在构建时是通过在当前结点的所有属性结点中选择一个最优的属性,随机森林是对基决策树的每个结点,从该结点的所有属性中随机选择一个包含K个属性的子集,然后再从子集中选择一个最优属性进行划分[6]。随机森林算法简单、容易实现、计算开销小。
  支持向量机(SVM)通过将二维线性不可分的样本空间映射到多维空间中,使其在特征空间中变得可分。支持向量机在小样本、线性不可分、高维模式识别上表现出优势。
  AdaBoost的思想是针对同一训练集训练不同的弱分类器,然后将这些弱分类器集合起来,组成一个强分类器。AdaBoost算法是通过改变数据分布来实现的,根据每次训练集之中每个样本的分类是否正确,以及上次的总体分类的准确率,来确定每个样本的权值。将修改过权值的新数据集送给下层分类器进行训练,最后将每次训练得到的分类器最后融合起来,作为最后的决策分类器[7]。AdaBoost算法能够排除一些不重要数据的特征的干扰。
  4.2 模型性能评价
  不同的分类模型有不同的实验结果,本文通过计算不同分类模型的精度、查准率、查全率和F1值,来判断分类模型在该数据集上的分类效果。
  在二分类问题中可以将样本真实的类别和模型预测的类别组合划分为真正例(true positive)、假正例(false positive)、真反例(true negative)、假反例(false negative)[8],分类结果的混淆矩阵如表2所示。
  5 分类结果
  5.1 TF-IDF和Word2Vec分类结果
  实验采用了TF-IDF和Word2Vec分别对评论文本进行了向量化处理,并且分别计算出了不同的向量维度上样本的正确率。在比较不同特征提取方法对正确率的影响时选用了随机森林算法作为分类器,便于比较。Word2Vec和TF-IDF产生不同维度下随机森林分类器的正确率如图2所示。
  由图2可以得知,通过Word2Vec和TF-IDF分别对文本进行向量化,最后用相同的分类器具有完全不同的结果,使用Word2Vec进行文本向量化,随机森林作为分类器分类的正确保持在74.4%左右,而在使用TF-IDF进行文本向量化时,最后随机森林分类器的分类正确率在86.0%左右,从正确率方面来说,使用TF-IDF进行文本的向量化,模型的分类效果会更好。
  5.2 不同分类器的分类结果
  在此次实验中选用TF-IDF对文本进行向量化处理,在比较不同分类器在评论数据集上分类效果时,选用了随机森林算法、支持向量机、KNN算法、AdaBoost算法,根据正确率、查准率、召回率及F1值评估算法在评论数据集上的适用性。不同分类器分类结果的正确率如图3所示。不同分类器的查准率P、召回率R、F1值如表3所示。
  由图3不同分类器分类结果图可以得出,随机森林分类器的分类正确率在词向量维度100维时最高为86.43%,AdaBoost分类器的分类正确率在词向量维度150时分类正确率最高为85.89%,KNN分类器在词向量维度25维时分类的正确率最高82.32%,SVM分类器的分类正确率在词向量的维度为25时最高75.68%,由此可见从分类正确率方面来说随机森林分类器在评论数据集上表现效果最好。
  表3表现了不同词向量维度时不同分类器的查准率、召回率及F1值。SVM分类器在召回率上面表现得很好,但是查准率方面明显低于其他三种算法,KNN分类器在查准率上达到90%左右,但是在召回率上表现不如其他三种算法。相对来说,随机森林算法和AdaBoost算法在查准率和召回率都表现得比较均衡。最后从F1值可以得出,随机森林>AdaBoost>KNN>SVM,综合考虑随机森林在评论数据集上表现出更好的分类效果。
  6 结束语
  本文实验了TF-IDF和Word2Vec两种文本向量化的方式下,随机森林算法的分类的正确率,很明显TF-IDF向量化的方法更好。接下来,在TF-IDF文本向量化方法下,采用了随机森林、SVM、KNN、AdaBoost算法分别进行了分类,可以得出随机森林在评论文本数据集上具有更好的分类效果。
  在下一步的研究工作中,可以通过扩大数据集、数据清洗、词向量方法改进、分类方法改进来进一步提高分类的性能。
  参考文献:
  [1] 刘建波,杨峰.面向舆情分析的短文本频繁模式聚类算法[J].北京电子科技学院学报,2010,18(4):6-11. DOI:10.3969/j.issn.1672-464X.2010.04.002.
  [2] 李晨,朱世伟,魏墨济,等. 基于词典与规则的新闻文本情感倾向性分析[J]. 山东科学,2017,(1):115-121.
  [3] 张燕,姚志远,陈文社.支持向量机在文本分类中的研究与应用[J].电脑编程技巧与维护,2018,(8):68-69,85.
  [4] 李艷凤. 基于电商评论的个性化产品推荐系统研究[D].哈尔滨工业大学,2017.
  [5] 左晶. 基于相变理论的癫痫脑电时空演变机制研究[D].重庆邮电大学,2017.
  [6] 孙凯.随机森林在医学影像分析中的应用研究进展[J].北京生物医学工程,2018,37(4):413-418. DOI:10.3969/j.issn.1002-3208.2018.04.015.
  [7] 孙为民,王晖,高涛, 等.将人工神经网络和Adaboost相结合提高绝缘子图像识别的准确率[J].电子世界,2017,(24):27-28,31.
  [8] 唐燕,王苹.随机森林算法在中医药院校贫困生认定预测中的应用研究[J].中国医药导报,2017,14(14):164-168.
  【通联编辑:梁书】
其他文献
1998年引入乌梅极早甜樱桃,经7年栽培观察,表现花期抗寒性强,丰产稳产;结果早,早期产量高,定植后3年结果,5年生树每公顷产量达16845kg;果实近圆形,平均单果重5、5g,果皮红色,果肉红至深
<正>IgA肾病是最常见的原发性慢性肾小球肾炎,其诊断主要依赖于肾活组织检查(活检)发现IgA为主的免疫球蛋白分子在肾小球系膜区沉积,常常伴有补体C3和程度不等的IgG和(或)IgM
随着移动互联网技术的快速发展与智能手机的普及,大家的阅读与学习方式、知识获取途径都发生了翻天覆地的变化,越来越多的人利用空余时间移动碎片化学习。该文以高职《ASP.NE
介绍了河曲海红果的植物学特征,生物学特性、开发利用价值及栽培技术要点。
实行套袋栽培要严格疏花疏果,大型果品种20~30cm留1花序,中、小型果15—25cm留1花序;每花序留中心果。花期进行人工或壁蜂授粉,以确保坐果。套袋前疏除果形不正的果、病虫果和小果
化学除草剂因省时、省力、省工、除草效果好和便于机械化操作,越来越受到广大农民的欢迎。但是,由于农田作物施用除草剂时存在诸多问题,农田临近的果园受到不同程度药害的情
&#39;不自由,毋宁死&#39;是从古至今人类对自由最高度的评价,虽然经过上千年的斗争,人类逐渐取得了对自由权的掌控,但对自由权的争取永不停歇,有人类足迹的地方,便有自由权遭
宜宾智慧公厕管理平台建设有力推进公厕革命进程,利用信息化手段辅助“轻出口、入厕难”等问题改变,扭转“重建轻管”不良倾向,创造一个清洁、卫生的入厕环境,对建设宜居幸福
室内进行11种杀螨剂常用剂量对山楂叶螨和二斑叶螨的杀卵效果比较试验。结果表明:对山楂叶螨的杀卵效果表现为螨即死〉哒螨酮〉甲氨基阿维菌素苯甲酸盐〉尼索朗〉四螨嗪〉螺螨