美章网 资料文库 文本情感分类中基因遗传算法的应用范文

文本情感分类中基因遗传算法的应用范文

本站小编为你精心准备了文本情感分类中基因遗传算法的应用参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。

文本情感分类中基因遗传算法的应用

摘要:本文以微博文本为主要实验对象,提出适合卷积神经网络进行自我优化的编码方式,分别将每一层看做是一个染色体,将每一层中的参数看做是一个基因片段,采用混合双重非数值编码的方式编码每个CNN框架,设计出适合于CNN网络的选择、交叉和变异的算法,并且把基因遗传算法(GA)和与卷积神经网络相结合,提出了基于情感分析算法的遗传算法(GA-CNN).通过对传统算法与GA-CNN的实验与对比分析,良好地展示了自我优化性.

关键词:基因算法;情感分析;深度学习;自我进化

1引言

随着网络技术的进步和社会应用的普及,网页的交互信息越来越多的被企业、政府所重视.基于网页的信息获取、挖掘、分析也被逐渐提升到了国家安全的高度.网页信息的交互包含浏览历史记录、跳转路径、的信息、微博、视频、语音以及注册的个人信息、账号等等,他们包含每个人的部分或者全部核心信息,如个人的工作、情感、生活、经济、习惯和信仰等等.对网页数据的挖掘与分析将有助于个人乃至国家的发展.本文主要以网页数据中的微博为主要例题,对其中所表露出来的情感进行分析研究,并对算法自我优化的可行性进行分析探讨.情感分析(SentimentAnalysis,SA)又称为倾向性分析和意见挖掘,它是对带有情感色彩的主观性文本进行分析、处理、归纳和推理的过程,其中情感分析还可以细分为情感极性(倾向)分析,情感程度分析和主客观分析等[1].情感极性分析的目的是对自然语言中多包涵的正向情绪、负向情绪和中立情绪进行判别.大多数应用场景中,只分为两类.例如对于“喜欢”和“讨厌”这两个词,表达的就是两种相反的情感.情感分析在建立完善互联网的舆情监控系统,对异常或突发事情的检测以及心理学、社会学、金融预测等领域中都有广泛应用.目前国内外对于微博等短文本的情感挖掘分析已经做出了很多研究[2].常用的方法如朴素贝叶斯[3],逻辑回归[4]、K最近邻分类KNN算法(k-NearestNeighbor)[5]、支持向量机(SupportVectorMachine,SVM)[6,7]和卷积神经网络(ConvolutionalNeuralNetwork,CNN)[8]等,都在不同的目标对象的情况有良好的表现.但是对于不同的任务和不同的数据源,如中文微博和英文微博,对文字微博和表情微博等的分析仍有较大差异[9,10].针对不同的任务,人们会人工尝试不同的算法并通过调整优化来实现最佳匹配和提升效率.对于参数结构众多,探索空间巨大的情况,这种方式不仅时间效率较低,而且探索空间局限,优化效果不明显.因此能够让算法自我进化,并且在全局空间内进行自我优化,不仅能够节省人力,还能够提升算法对不同任务的适应性,在现实工作中具有较强的现实意义[11].本文主要以中文微博数据为例,以情感分析为主要实验对象,结合遗传算法(GeneticAlgorithm,GA),实现对情感分析算法的自我优化,提出了以卷积神经网络为对象的遗传进化算法(GA-CNN),并通过实验,来模拟实现对中文情感分析算法的自我进化过程和结果.

2传统方法情感分析实验

微博以不超过140字为一个表达方式,具备词语种类丰富、语句简短、主题发散及创新词语多等特点,相对于长文本而言,在情感分析的问题上面临的问题和困难更多[12].文本情感分析过程一般包括文本预处理、情感特征提取和情感分类等步骤.文本预处理指对文本进行分词,对词性进行标注,以及停用词的成立等操作;情感特征的提取是指按照一定的规则,把具有明显倾向性的单元要素从微博文本进行抽取的过程;情感分类是利用抽取出来的情感特征对文本进行区分,对主观性文本极性和强度进行分类.中文微博情感分类大致上包括:基于情感词典的分类方法和基于机器学习的分类方法两类[9].

2.1实验环境本文中的所有实验均在如表1所示的实验环境中完成.

2.2数据集的选择与处理试验数据来源于新浪微博的数据集.该数据集包含1.6万余语句,其中1.2万来自于PC端,0.4万条来自移动端.将来自PC端的数据进行分类,按照心理学对情感的归类,将“happiness”、“like”归为正向情感(“pos”);将“anger”、“disgust”,“fear”归为负向情感(“neg”);将“surprise”、“none”归为中性情感(“none”).并通过约20人进行独立认证,采用最高的归类,进行划分.同时将来自移动端的数据被标记直接标注为“正向情感”、“负向情感”和“无情感”3个类别.数据的标记过程仍然采用原先汇总人员进行独立标注,标注中忽略了表情符号所表达的情感,仅对中文自然语言所表达出的情感进行了标记,选取其中比例最高的标注作为单条语句的情感类型.情感类型分为三类,正向情感、负向情感和中性情感,其中正向情感语句4699条,负向情感语句4891条,中性情感语句6548条.采用80%进行训练,20%进行测验.

2.3实验结果对比分析上述传统方法和基础CNN方法在实验环境中的测试结果如表2所示.从试验可知,对于传统分类算法而言,SVM的性能较高,在该数据情况下,朴素贝叶斯算法的精确度较低,其次是逻辑回归以及线性SVM算法.对于深度学习的CNN网络,在这个样本集中,表现出了较好的分类效果.该试验中的CNN分别进行了三类试验,分别是基于预训练词向量的CNN-static、随机编码的CNN-rand和经过调参的CNN-non-static.并分别对CNN进行了人为调整参数.结果显示CNN-non-static比最好的CNN-rand高出0.009,达到了53.5%.但相对于传统的情感分析分类算法,CNN-none-static比SVM-RBF-Grid-Search,精确度效果却并没有提升,甚至还低0.05%.进一步分析说明对于该CNN的网络结构和参数的设定并没有达到CNN网络的最大性能,同样对于SVM的算法也并没有达到其最大的精确度.那么对于CNN这样网络结构复杂,层次可以无限加深,探索空间巨大的情况,人为调参仅能实现局部性搜索优化,无法实现最优或近似最优的效果优化.而对于网格搜索而言,它是一种枚举型收索,它的特点是耗时长,全局性差.对于深度学习的自我探索,谷歌在2017年进行了研究,BarretZoph[13]等人于2017年初尝试了一种基于大型服务阵列上的自我遍历探索优化的尝试,实验结果完成了基于RNN的图像识别的自我增强优化.但这样的自我优化需要较大的资源,对于普通算法的或者资源有限的前提下,需要寻找一个有效的算法进行高效的全局性的自动调整优化.结合BarretZoph等人的探索,本文提出了基于卷积神经网络的遗传进化算法(GA-CNN).

3基于基因遗传算法的自我优化算法

本文中,采用CNN探索模型进行基于遗传算法的优化,主要讨论该模型是否能够通过模拟进化完成结构性和参数性的探索,以达到根据不同任务和数据源进行自我结构和参数的变更,使性能达到最优.

3.1基因遗传算法相关理论遗传算法GA是1975年由美国Michigan大学的Holland教授在其专著《自然界和人工系统的适用性》中首先提出的.遗传算法,也称进化算法,是受达尔文的进化论的启发,借鉴生物进化过程而提出的一种启发式搜索算法.借鉴生物进化论,遗传算法将要解决的问题模拟成一个生物进化的过程,通过复制、交叉、突变等操作产生下一代的解,并逐步淘汰掉适应度函数值低的解,增加适应度函数值高的解.这样进化N代后就很有可能会进化出适应度函数值很高的个体[14,15].

3.2GA-CNN算法的设计CNN网络结构中,可以讨论的参数和结构很多.在GA-CNN的算法探索中,将每一层网络结构看作是一个染色体.GA-CNN算法的系统架构如图1所示;其整体流程如算法1.算法1GA-CNN算法Begin步骤1对数据进行规范处理并分为训练集、评价集和测试集;步骤2初始化CNN框架结构种群,预先设定最大迭代次数G,当前种群代数g=1;步骤3对CNN种群中的每个框架结构进行学习训练;步骤4用评价集对训练的CNN模型,进行评估,获得CNN框架结构种群所对应的适应度;步骤5采用轮盘赌法生成交配目标;步骤6对交配目标进行交叉操作,并进行训练评估适应度;步骤7利用变异操作,对交叉结果进行变异,并进行训练评估适应度;步骤8判断新产生的结果是否优于交配目标,更新CNN结构种群,更新对应的适应度;步骤9如果g<G且不满足收敛条件,g=g+1,转到步骤5,否则转到步骤10;步骤10输出精英个体模型作为最终的分类模型.74算法2GA-CNN算法交叉变异逻辑Begin步骤1采用随机法在CNN种群中选取基模型S1;步骤2在S1周围局部选取,距离为1的交配模型S2;步骤3交叉产生新的模型队列,对产生的新模型进行训练学习,评估其适应度;步骤4比较筛选适应度最高的模型S3;步骤5判断新产生的模型S3是否优于基模型S1,如果优于S1,替换S1;如果不优于S1,舍弃,转到步骤1;步骤6判断是否优于交配模型S2;优于交配模型S2,转到步骤7;不优于交配模型S2,转到步骤8;步骤7替换S2,接着S2变异,转到步骤9;步骤8在S1周围选取一个适应度最差的进行变异;步骤9更新种群和适应度评估.End.GA-CNN算法与传统CNN测试后的结果对比如表3所示.综上所述,可以看出GA-CNN算法,经过进化,进行有效的自我调优,调整了自己的结构和模型参数,提升了模型准确性,从52.68%上升到了77.08%.该进化在85次时达到了收敛,取得了一个近似最优解.

4结论

实验分析,GA-CNN算法有效地解决了人为调参数的局限性,对分布空间广,探索空间大的CNN模型架构以及参数能够有效的探索和自动优化,在探索时间和空间上都相对人为调参有较大提升.相对于枚举法而言具有较好的收敛性.但该算法也存在一定的问题和思考:由于资源空间有限,对基因和染色体种类的模拟具有局限性,大量参数和变数引入可能带来较大的影响.同时对于染色体的编码由于种类较少,类似于二进制编码.初始化的种群结构不同,可能带来的进化时间成本和结构都有所不同.最后的结果可能在最大迭代次数G完成时,仍只能得到一个近似最优解,而这个近似最优解可能存在差异.

参考文献:

[1]蒋延华.风景油画创作的情感分析[J].美术教育研究,2012,2012:25.

[2]王文华,朱艳辉,徐叶强,等.基于SVM的产品评论属性特征的情感倾向分析[J].湖南工业大学学报,2012,26:76.

[3]陈红玉.数据挖掘中贝叶斯分类算法的研究[J].光盘技术,2009,2009:57.

[4]周志华.机器学习[M].北京:清华大学出版社,2016.

[5]贾可亮,樊孝忠,许进忠.基于KNN的汉语问句分类[J].微电子学与计算机,2008,2008:156.

[6]马波.支持向量机多类分类算法的分析与设计[D].扬州:扬州大学,2008.

[7]饶刚.支持向量机(SVM)算法的进一步研究[D].重庆:重庆大学,2012.

[8]张建明,詹智财,成科扬,等.深度学习的研究与发展[J].江苏大学学报:自然科学版,2015,36:191.

[9]任小燕.中文情感分析综述[J].科技信息,2011,31:202.

[10]周胜臣,瞿文婷,石英子,等.中文微博情感分析研究综述[J].计算机应用与软件,2013,30:161.

[12]王岩.基于共现链的微博情感分析技术的研究与实现[D].北京:国防科学技术大学,2011.

[14]王晓天,边思宇.基于遗传算法和神经网络的PID参数自整定[J].吉林大学学报:理学版,2018,56:953.

[15]陈龙.基于遗传算法的约束性多TSP问题及其应用[J].重庆邮电学院学报:自然科学版,2000:67.

作者:彭一明 邢承杰 卞晶 陈光 王梦淑 王雪琴 单位:北京大学计算中心