一种基于深度学习模型的商品评论情感分析方法与流程

文档序号:16247733发布日期:2018-12-11 23:44阅读:145来源:国知局
一种基于深度学习模型的商品评论情感分析方法与流程
本发明涉及自然语言处理领域,特别涉及一种基于深度学习模型的商品评论情感分析方法。
背景技术
随着互联网和电子商务的高速发展,网络上涌现出许多电子商务网站(如淘宝、京东、亚马逊等)。这些网站有一个共性,就是在产品销售的同时,还为消费者提供了一个发表产品评论的平台。消费者能及时的把自己对商品的评价展现出来,这些评论信息能反馈给商家和潜在的消费者。商家能根据反馈改进商品或调整销售策略,潜在的消费者通过参考别人对商品的评论,做出正确的购物选择。但是互联网上信息数量巨大,面对如此庞大的评论文本信息通过逐条浏览或者通过人工规则进行归纳都很费时费力,应用人工智能技术以及自然语言处理领域的相关技术对评论文本的情感倾向进行深度自动挖掘可以很大程度上改善和提升用户体验。正是因为产品评论挖掘有着强大的现实应用意义和重要的科学研究价值,情感分析(sentimentanalysis)成为越来越多的研究者和工业界的关注焦点。目前主流的情感分析方法大致分为两类。第一种是基于规则的方法,主要先根据情感词典找出文本中出现的情感词,然后进行简单的情感极性统计,根据最终得分与事先设定的阈值进行比较得出情感极性结论。第二种是基于传统机器学习的方法,通过对大量标注语料的训练,生成情感分类器,用来对测试文本进行分类。而基于规则的方法易丢失文本数据中隐藏着的重要模式,而且随着语言现象日益增多,这种方法的覆盖面会越来越窄,很难构建比较完备的情感词典或相关的搭配规则,导致准确率低。同时,基于传统机器学习的方法主要通过人工抽取特征和机器学习算法相结合构建情感分类模型,然而,人工抽取特征需要专家的领域知识和大量的人力物力,系统适应性差。技术实现要素:为了解决上述技术问题,本发明提出一种基于深度学习模型的商品评论情感分析方法,包括:s1、将商品评论数据中的一星和二星评价标注为积极评论,四星和五星评价标注为消极评论,将商品评论数据分为训练集和测试集,并进行预处理;s2、构建出情感要素词典集和情感特征向量,根据训练集预处理得到的词序列和情感特征向量得到词向量,多个词向量连接形成文本向量;s3、构建动态卷积神经网络模型,以文本向量作为训练对象通过bp算法和随机梯度下降算法更新动态卷积神经网络的网络参数,最终得到情感分类模型并对测试集进行情感标注。优选的,将商品评论数据分为训练集和测试集,并进行预处理包括:s11、通过五折交叉验证选取商品评论数据的80%作为训练集,其余20%作为测试集;s12、采用结巴分词工具对商品评论数据进行分词;s13、去掉商品评论数据中的无关信息,其中包括:标点符号、多余空格、重复无用的单字和特殊字符。优选的,步骤s2包括:s21、构建出情感要素词典集,包括正向情感词典、负向情感词典、否定词典、转折词典和主张词典;s22、利用情感要素词典捕捉含有情感要素的词,并通过构建词的情感特征向量对情感要素词典集中的五种情感要素进行建模表达;s23、将词向量序列与情感特征向量拼接在一起,形成词向量m(wi);s24、多个词向量m(wi)拼接形成文本向量s,文本向量s表示为:其中,为连接运算符,m(wi:i+j)表示由词向量m(wi)~m(wi+j)组成的特征向量矩阵,n表示文本向量的长度。优选的,步骤s22包括:s221、在构建词语wi的情感特征向量e(wi)时,首先初始化e(wi)为零向量,表示为e(wi)=[0,0,0,0,0];s222、将词语wi的情感特征向量e(wi)中的元素从左到右分别表示情感要素词典中的正向情感词典、负向情感词典、常用否定词典、常用转折词典、常用主张词典;s223、将词语wi分别与情感要素词典中的五类情感词典的词进行匹配,匹配成功时将该词典对应的情感特征向量e(wi)中的元素赋值为1,得到词语wi的五维情感特征向量e(wi)=(e1,e2,e3,e4,e5)。优选的,步骤s3包括:s31、输入层:将文本向量s作为动态卷积神经网络输入特征;s32、卷积层:为了捕捉不同的特征,使用m个卷积滤波器对输入特征进行卷积操作,得到最终卷积结果;s33、判断文本向量s中是否包含转折词,若包含对转折词前后的情感词进行分割并多段保留最大值来进行分段池化;否则利用k最大池化法;s34、将分段池化后的特征向量p或k最大池化后的特征向量v作为softmax函数的输入进行情感分类。优选的,所述最终卷积结果c表示为:c=[c1,1,…,c1,n-h+1;c21,…,c2,n-h+1;cm,1,…,cm,n-h+1],c∈rm×(n-h+1);cji=f(ωj·m(wi:i+h-1)+b);其中,cji表示通过第j个卷积滤波器ωj得到的特征图中第i个特征值,n表示文本s的长度,m(wi:i+h-1)表示文本中第i个词到第i+h-1个词所对应的词向量,b为偏置项,f(·)为激活函数,h为卷积滤波器ωj的卷积核滑动窗口长度,m表示特征映射的数量。优选的,步骤s3中的分段池化包括:若特征映射输出cj被转折词划分为两个部分,对特征值前后部分分别进行池化,此过程表示为:pji=max(cji);其中,1≤j≤m和1≤i≤n;pji表示特征映射输出cj的分段池化,连接所有pji形成分段文本特征向量p,m表示特征映射的数量。优选的,步骤s3中的k最大池化法包括:利用k最大池化法取所有特征值中得分前ktop的特征,并且保留ktop个特征卷积之后的先后顺序;根据动态函数调整最大池化数,动态函数k表示为:利用动态函数k对最终卷积结果c进行池化,k最大池化表示为:其中,ktop为神经网络中顶层最大池化数,l表示当前卷积层的层数序号,l表示卷积层的总层数,为向下取整操作,连接所有形成k最大值文本特征向量v。优选的,步骤s34包括:将分段池化后的特征向量p和k最大池化后的特征向量v作为softmax函数的输入进行情感分类,表示为:p(y|p,wp,bp)=softmaxy(wp·p+bp);p(y|v,wv,bv)=softmaxy(wv·p+bv);其中,y∈{+1,-1},且当y为+1时表示积极评论,当y为-1时表示消极评论;wp表示分段池化后的特征向量p的权值,wv表示k最大池化后的特征向量v的权值;bp表示k最大池化后的特征向量v对应的偏置项,bv表示k最大池化后的特征向量v对应的偏置项。本发明引入情感要素词典,充分考虑了情感要素对情感分析的影响,提高了分类性能;结合动态卷积神经网络能够提高分类模型泛化能力,能够实现较好的分类效果并且提高模型泛化能力。附图说明图1为本发明一种基于深度学习模型的商品评论情感分析方法的流程图;图2为本发明采用的word2vec词向量模型中的cbow模型结构图。具体实施方式为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将结合附图,对本发明实施例中的技术方案进行清楚、完整地描述,,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在不付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明提出一种基于深度学习模型的商品评论情感分析方法,如图1,包括:s1、将商品评论数据中的一星和二星评价标注为积极评论,四星和五星评价标注为消极评论,将商品评论数据分为训练集和测试集,并进行预处理;s2、构建出情感要素词典集和情感特征向量,根据训练集预处理得到的词序列和情感特征向量得到词向量,多个词向量连接形成文本向量;s3、构建动态卷积神经网络模型,以文本向量作为训练对象通过bp算法和随机梯度下降算法更新动态卷积神经网络的网络参数,最终得到情感分类模型并对测试集进行情感标注。在本发明的实施过程中,舍弃三星评价,将商品评论数据分为训练集和测试集,并进行预处理包括:s11、通过五折交叉验证选取商品评论数据的80%作为训练集,其余20%作为测试集;s12、采用结巴分词工具对商品评论数据进行分词;s13、去掉商品评论数据中的无关信息,其中包括:标点符号、多余空格、重复无用的单字和特殊字符。本发明利用word2vec对预处理后的词语序列进行训练,其中word2vec包含两个核心模型,即连续词袋模型(continuousbagofword,cbow)模型和skip-gram模型,本发明使用cbow模型,cbow模型如图2。假设已有词语序列为[wi-2,wi-1,wi,wi+1,wi+2];cbow模型指的是在已知当前词wi的上下文[wi-2,wi-1,wi,wi+1,wi+2]的前提下,预测当前词wi。对于未登陆词采用均匀分布u(-0.01,0.01)来随机初始化词向量,该向量的维度可根据需要进行设置,词wi的词序列表示为v(wi),若该序列是k维实数向量,可表示为:v(wi)=(x1,x2,…xk)。优选的,步骤s2包括:s21、构建出情感要素词典集,包括正向情感词典、负向情感词典、否定词典、转折词典和主张词典;s22、利用情感要素词典捕捉含有情感要素的词,并通过构建词的情感特征向量对情感要素词典集中的五种情感要素进行建模表达;s23、将词向量序列与情感特征向量拼接在一起,形成词向量m(wi);s24、多个词向量m(wi)拼接形成文本向量s,文本向量s表示为:其中,为连接运算符,m(wi:i+j)表示由词向量m(wi)~m(wi+j)组成的特征向量矩阵,n表示文本向量s的长度;由于词向量序列v(wi)的纬度为k,情感特征向量e(wi)的纬度为5,因此词向量m(wi)的维度为d=k+5,若文本向量的长度为n,则可以文本向量的值域表示为s∈rn×d,r·表示·维实数域。本发明为了捕捉文本中含有情感要素的词,分析了影响评论文本情感极性的要素,并且构建出情感要素词典集,本发明的情感要素词典集包括正向情感词典、负向情感词典、否定词典、转折词典、主张词典等五类词典其中,正向情感词典和负向情感词典采用hownet的“情感分析用词语集(beta版)”中的正向情感词、负向情感词、正面评价词和负面评价词4个情感词语集,否定词典可根据评论文本中常出现的否定词总结出无、没有、非、不、未、不曾、不是、未免、未必、并非、别、甭、别、不想、不要等15个否定词,转折词典也可根据对评论文本的观察分析总结出可是、但是、但、偏偏、可、而、不过、然而、只是等9个转折词,主张词典采用hownet的“情感分析用词语集(beta版)”中的主张词语集,表1中给出一个情感词典的一个示例。表1情感词词典示例词典名称情感词示例正向情感词典表扬、表彰、称道、称赏、称颂、恭贺、恭敬负向情感词典哀愁、哀怜、悲哀、悲愁、讥嘲、讥刺、讥讽否定词典无、没有、非、不、未、不曾、未免、未必转折词典可是、但是、但、偏偏、可、而、不过、然而主张词典察觉、触目、耳闻、发觉、发现、感到、感觉在为词语wi构建情感特征向量时,首先将词语wi的情感特征向量e(wi)初始化为e(wi)=[0,0,0,0,0],将词语wi的情感特征向量e(wi)中的元素从左到右分别表示情感要素词典中的正向情感词典、负向情感词典、常用否定词典、常用转折词典、常用主张词典;接着将将词语wi分别与情感要素词典中的五类情感词典的词进行匹配,匹配成功时将该词典对应的情感特征向量e(wi)中的元素赋值为1,得到词语wi的五维情感特征向量e(wi)=(e1,e2,e3,e4,e5),若正向情感词为dpos、负向情感词为dneg、常用否定词为drev、常用转折词为dtur、常用主张词为dcla,则词语wi的情感特征向量中的五个元素可以分别表示为:优选的,步骤s3包括:s31、输入层:将文本向量s作为动态卷积神经网络输入特征;s32、卷积层:为了捕捉不同的特征,使用m个卷积滤波器对输入特征进行卷积操作,得到最终卷积结果c;s33、判断文本向量s中是否包含转折词,若包含对转折词前后的情感词进行分割并多段保留最大值来进行分段池化,得到分段文本特征向量p;否则利用k最大池化法,得到k最大值文本特征向量v;s34、将分段文本特征向量p或k最大值文本特征向量v作为softmax函数的输入进行情感分类。在构建动态卷积神经网络模型在取自所述数据集的训练集上进行训练的过程中,将文本向量s作为动态卷积神经网络输入特征,在卷积层中,为了捕捉不同的特征,通过第j个卷积滤波器得到的特征图中第i个特征值的过程表示为:cji=f(ωj·m(wi:i+h-1)+b);其中,h为卷积滤波器的卷积核滑动窗口长度,m(wi:i+h-1)表示文本中第i个词到第i+h-1个词所对应的词向量,cji为通过第j个卷积滤波器得到的特征图中第i个特征值,1≤i≤n-h+1,b为偏置项,f(x)为激活函数。在本实施例中,为了加快模型的收敛速度,激活函数采用softplus-relu激活函数来训练模型,激活函数f(x)可表示为:f(x)=(1-α)log(1+ex)+αmax(0,x),α∈[0,1];因此,x为函数中的变量,在本实施例中令x=ωj·m(wi:i+h-1)+b,使用m个卷积滤波器ωj∈rh×d(1≤j≤m)对输入特征进行卷积操作,得到最终的卷积结果c,表示为:c=[c1,1,…,c1,n-h+1;c21,…,c2,n-h+1;cm,1,…,cm,n-h+1],c∈rm×(n-h+1);其中,rm×(n-h+1)表示c的值域。卷积运算之后,就是对卷积层输出的特征图进行池化操作,即下采样操作,这可以降低计算量和防止过拟合。常用的池化法包括:最大池化法(maxpooling)、平均池化法(averagepooling)、分段池化法(chunk-maxpooling)、k最大池化法(k-maxpooling);本发明根据文本中是否包含转折词来优化池化过程中对显著特征的提取,若在文本中包含转折词,则将转折词前后的情感词进行分割并多段保留最大值来进行分段池化;若在文本中不包含转折词,则利用k最大池化法。对于包含转折词的语句,对转折词前后的情感词进行分割并多段保留最大值,若特征映射输出cj被转折词划分为两个部分,对特征值前后部分分别进行池化,此过程表示为:pji=max(cji);其中,1≤j≤m和1≤i≤n;pji表示特征映射输出cj的分段池化,连接所有pji形成分段文本特征向量p,m表示特征映射的数量。对于不包含转折词的语句,利用k最大池化法取所有特征值中得分前ktop的特征,并且保留ktop个特征卷积之后的先后顺序;根据动态函数调整最大池化数,动态函数k表示为:其中,ktop为神经网络中顶层最大池化数,l表示当前卷积层的层数序号,l表示卷积层的总层数,为向下取整操作。最终池化后的向量可表示为:连接文本向量中的所有形成k最大值文本特征向量v,m表示特征映射的数量;其中k最大值文本特征向量v的值域表示为v∈rkm。在神经网络中,将分段池化后的特征向量p或k最大池化后的特征向量v作为softmax函数的输入进行情感分类,表示为:p(y|p,wp,bp)=softmaxy(wp·p+bp);p(y|v,wv,bv)=softmaxy(wv·p+bv);其中,y∈{+1,-1},且当y为+1表示积极评论,当y为-1表示消极评论;wp∈rp,wv∈rv;bp表示向量p中的偏置项,bv表示向量v中的偏置项。在整个训练,使用adam批量梯度下降(mini-batchgradientdescent)算法训练,用bp算法对各层参数调整,训练时采用dropout与l2正则防止过拟合。完成神经网络的训练之后,将测试集输入模型之中,即可对测试集中的词语进行情感标注。本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:rom、ram、磁盘或光盘等。以上所举实施例,对本发明的目的、技术方案和优点进行了进一步的详细说明,所应理解的是,以上所举实施例仅为本发明的优选实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内对本发明所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1