当前位置: 首页 > 专利查询>浙江大学专利>正文

一种基于文档向量的电影评论情感分析方法技术

技术编号:23983653 阅读:50 留言:0更新日期:2020-04-29 12:30
本发明专利技术公开了一种基于文档向量的电影评论情感分析方法。该方法首先对电影评论进行数据清洗以及预处理,构建情感分析数据集。然后使用电影的评论和评论对应的评分训练改进的文档向量模型。然后将电影的评论输入到改进的文档向量模型得到电影评论的词向量和文档向量,并将电影评论对应的词向量平均后与文档向量拼接生成特征向量。最后使用基于电影评论生成的特征向量和电影评论对应的评分训练分类模型,对电影评论进行情感分类。本发明专利技术通过使用改进的文档向量生成方法,提高了电影评论情感分类的准确率。

An emotion analysis method of movie comment based on document vector

【技术实现步骤摘要】
一种基于文档向量的电影评论情感分析方法
本专利技术属于文本分类领域,尤其涉及一种基于文档向量的电影评论情感分析方法。
技术介绍
电影评价是用户在观影后发表的自己对于电影的评论和观点。一方面影片的评价是用户选择电影的重要依据,用户通常会通过查看影片的评价来了解影片的特点以及优缺点。另一方面制片商希望通过用户的评价来了解影片可能存在的问题以及用户的需求。制片商通过分析用户的评价可以对影片进行改进,提高影片的质量。情感分析作为用户评价分析的重要内容可以将用户评论按照情感极性进行分类,能够统计出影片积极情感和消极情感的比例以便对影片有更直观的认识。情感分析也能够帮助用户和制片商找到感兴趣的评价。目前词嵌入的方法是情感分析的主流方法,这类方法主要通过无监督的方法训练词向量模型,得到单词的向量空间表示。然后通过对评论中的单词对应的词向量进行加权平均来得到文档向量。最后使用文档向量训练分类模型预测文档的情感类别。但是这类方法使用词向量加权平均的方法得到的文档向量不能够考虑评论中单词的顺序,因此会影响情感分类的性能。另一方面这类方法使用无监督的方式训练词向量,因此训练出的词向量只能够表示单词的语义和语法信息,无法表示和情感相关的信息也会影响情感分类的性能。
技术实现思路
本专利技术的目的在于针对现有方法的不足,提出了一种基于改进的文档向量的情感分析方法。本专利技术的目的是通过以下技术方案来实现的:一种基于文档向量的电影评论情感分析方法,包括以下步骤:(1)输入训练集电影评论,进行数据预处理,得到文档矩阵D和单词矩阵V及评论的情感类别;(2)设置模型参数,随机初始化投影层参数H和投影层偏置b,根据步骤(1)得到的文档矩阵D和单词矩阵V及评论的情感类别训练文档向量模型,并得到训练集电影评论的特征向量;所述文档向量模型包括面向任务的分布式记忆模型和面向任务的分布式词袋模型;(3)待测电影评论经过步骤(1)预处理后,将其文档向量输入到步骤(2)训练得到的文档向量模型中预测,更新文档向量并得到预测集电影评论的特征向量;(4)将步骤(2)得到的训练集电影评论的特征向量结合对应的情感类别训练分类模型;模型的输入为电影评论的特征向量,输出为电影评论的情感类别;(5)将步骤(3)得到的预测集电影评论的特征向量输入步骤(4)训练的分类模型,分析得到预测集电影评论的情感类别。进一步地,所述步骤(1)包括以下子步骤:(1.1)评论的情感类别包括消极情感Lable1、积极情感Lable2等;评分小于评分阈值的评论为消极情感的评论;评分大于评分阈值的评论为积极情感的评论;删除评分等于评分阈值的评论;(1.2)删除评论中的特殊符号;删除少于最小字数的评论以及评分缺失和评分为零的评论;利用中文分词算法将评论拆分为单词,并删除停用词;删除剩余单词中出现次数少于三次的单词;(1.3)将步骤(1.2)剩余的每条评论作为一个文档,将所有文档中出现的单词构成词典;为每个文档分配文档ID,为词典中的每个单词分配单词ID;(1.4)根据步骤(1.3)中的文档ID和单词ID随机生成文档矩阵D和单词矩阵V;文档向量D(i)表示文档ID为i,即文档矩阵D的第i行;单词向量V(j)表示单词ID为j,即单词矩阵V的第j行;单词向量的维度为nV,文档向量的维度为nD;一个文档中的第t个单词记为wt,其单词ID为jt,对应的单词向量记为W(t,jt)=V(jt)。进一步地,所述步骤(2)中面向任务的分布式记忆模型的模型参数包括上下文窗口的大小2c+1、迭代次数;模型的输入为文档向量和上下文窗口内当前单词的上下文单词的单词向量;模型的输出为输出层向量O:其中,PV(j)表示当前单词wt的单词ID为j的概率,表示评论是消极情感的概率,是评论是积极情感的概率;n为词典中单词的个数;模型的训练包括以下子步骤:(a1)输入训练集的文档向量D(i)、当前单词wt上下文单词的单词向量W(t-c,jt-c)=V(jt-c),W(t-c+1,jt-c+1)=V(jt-c+1),…,W(t-1,jt-1)=V(jt-1),W(t+1,jt+1)=V(jt+1),...,W(t+c-1,jt+c-1)=V(jt+c-1),W(t+c,jt+c)=V(jt+c),和真值T;其中,jt-c、jt-c+1、…、jt-1、jt+1、…、jt+c-1、jt+c表示上下文单词的单词ID;所述真值T由将输出层向量O中实际的当前单词以及情感类别的概率置1,其余元素均置0得到;(a2)对上下文单词的单词向量求平均,然后与文档向量D(i)拼接得到投影层向量X:(a3)采用基于负采样的Softmax方法或者层次Softmax的方法得到输出层向量O:其中,O(k)是O的第k个元素;投影层参数H是矩阵,行数为n+2,列数为nV+nD,H(k)是H的第k行;投影层偏置b是列向量,行数为n+2,b(k)为b的第k行;表示将H和b的每一行代入HX+b式中计算并求和;(a4)根据步骤(a3)得到的输出层向量O和步骤(a1)输入的真值T计算误差E:其中,T(k)为T的第k个元素;(a5)利用反向传播的方法更新投影层参数H、投影层偏置b、文档向量D(i)、上下文单词的单词向量:其中,η为学习速率;其它上下文单词的单词向量的更新同理;(a6)训练集每个文档向量D(i)的每个单词wt都执行一遍步骤(a1)到(a5),更新投影层参数H、投影层偏置b、文档矩阵D、单词矩阵V;(a7)将步骤(a6)更新后的文档矩阵D作为输入,重复执行步骤(a1)到(a6),直到达到预设的迭代次数,截去最后一次迭代得到投影层参数H、投影层偏置b的最后两行,最终训练得到面向任务的分布式记忆模型,并得到训练集电影评论的特征向量为:其中,N(i)为D(i)中单词的个数;jD表示文档向量D(i)中所有单词的单词ID集合。进一步地,所述步骤(2)中面向任务的分布式词袋模型的模型参数为迭代次数;模型的输入为文档向量和上下文窗口内当前单词的上下文单词的单词向量;模型的输出为输出层向量O:其中,PV(j)表示当前单词wt的单词ID为j的概率,表示评论是消极情感的概率,是评论是积极情感的概率;n为词典中单词的个数;模型的训练包括以下子步骤:(b1)输入训练集的文档向量D(i)和真值T;所述真值T由将输出层向量O中实际的当前单词以及情感类别的概率置1,其余元素均置0得到;(b2)令投影层向量X=D(i);(b3)采用基于负采样的Softmax方法或者层次Softmax的方法得到输出层向量O:其中,O(k)是O的第k个元素;投影层参数H是矩阵,行数为n+2,列数为nD,H(k)是H的第k行;投影层偏置b是列向量,行数为n+2,b(k)为b的第k行;表示将H和b的每一行代入HX+本文档来自技高网...

【技术保护点】
1.一种基于文档向量的电影评论情感分析方法,其特征在于,包括以下步骤:/n(1)输入训练集电影评论,进行数据预处理,得到文档矩阵D、单词矩阵V、评论的情感类别等。/n(2)设置模型参数,随机初始化投影层参数H和投影层偏置b,根据步骤(1)得到的文档矩阵D和单词矩阵V及评论的情感类别训练文档向量模型,并得到训练集电影评论的特征向量;所述文档向量模型包括面向任务的分布式记忆模型和面向任务的分布式词袋模型。/n(3)待测电影评论经过步骤(1)预处理后,将其文档向量输入到步骤(2)训练得到的文档向量模型中预测,更新文档向量并得到预测集电影评论的特征向量。/n(4)将步骤(2)得到的训练集电影评论的特征向量结合对应的情感类别训练分类模型;模型的输入为电影评论的特征向量,输出为电影评论的情感类别。/n(5)将步骤(3)得到的预测集电影评论的特征向量输入步骤(4)训练的分类模型,分析得到预测集电影评论的情感类别。/n

【技术特征摘要】
1.一种基于文档向量的电影评论情感分析方法,其特征在于,包括以下步骤:
(1)输入训练集电影评论,进行数据预处理,得到文档矩阵D、单词矩阵V、评论的情感类别等。
(2)设置模型参数,随机初始化投影层参数H和投影层偏置b,根据步骤(1)得到的文档矩阵D和单词矩阵V及评论的情感类别训练文档向量模型,并得到训练集电影评论的特征向量;所述文档向量模型包括面向任务的分布式记忆模型和面向任务的分布式词袋模型。
(3)待测电影评论经过步骤(1)预处理后,将其文档向量输入到步骤(2)训练得到的文档向量模型中预测,更新文档向量并得到预测集电影评论的特征向量。
(4)将步骤(2)得到的训练集电影评论的特征向量结合对应的情感类别训练分类模型;模型的输入为电影评论的特征向量,输出为电影评论的情感类别。
(5)将步骤(3)得到的预测集电影评论的特征向量输入步骤(4)训练的分类模型,分析得到预测集电影评论的情感类别。


2.根据权利要求1所述基于文档向量的电影评论情感分析方法,其特征在于,所述步骤(1)包括以下子步骤:
(1.1)评论的情感类别包括消极情感Lable1、积极情感Lable2等;评分小于评分阈值的评论为消极情感的评论;评分大于评分阈值的评论为积极情感的评论;删除评分等于评分阈值的评论;
(1.2)删除评论中的特殊符号;删除少于最小字数的评论以及评分缺失和评分为零的评论;利用中文分词算法将评论拆分为单词,并删除停用词;删除剩余单词中出现次数少于三次的单词;
(1.3)将步骤(1.2)剩余的每条评论作为一个文档,将所有文档中出现的单词构成词典;为每个文档分配文档ID,为词典中的每个单词分配单词ID;
(1.4)根据步骤(1.3)中的文档ID和单词ID随机生成文档矩阵D和单词矩阵V;文档向量D(i)表示文档ID为i,即文档矩阵D的第i行;单词向量V(j)表示单词ID为j,即单词矩阵V的第j行;单词向量的维度为nV,文档向量的维度为nD;一个文档中的第t个单词记为wt,其单词ID为jt,对应的单词向量记为W(t,jt)=V(jt)。


3.根据权利要求2所述基于文档向量的电影评论情感分析方法,其特征在于,所述步骤(2)中面向任务的分布式记忆模型的模型参数包括上下文窗口的大小2c+1、迭代次数;模型的输入为文档向量和上下文窗口内当前单词的上下文单词的单词向量;模型的输出为输出层向量O:



其中,PV(j)表示当前单词wt的单词ID为j的概率,表示评论是消极情感的概率,是评论是积极情感的概率;n为词典中单词的个数;模型的训练包括以下子步骤:
(a1)输入训练集的文档向量D(i)、当前单词wt上下文单词的单词向量W(t-c,jt-c)=V(jt-c),W(t-c+1,jt-c+1)=V(jt-c+1),…,W(t-1,jt-1)=V(jt-1),W(t+1,jt+1)=V(jt+1),...,W(t+c-1,jt+c-1)=V(jt+c-1),W(t+c,jt+c)=V(jt+c),和真值T;其中,jt-c、jt-c+1、…、jt-1、jt+1、…、jt+c-1、jt+c表示上下文单词的单词ID;所述真值T由将输出层向量O中实际的当前单词以及情感类别的概率置1,其余元素均置0得到;
(a2)对上下文单词的单词向量求平均,然后与文档向量D(i)拼接得到投影层向量X:



(a3)采用基于负采样的Softmax方法或者层次Softmax的方法得到输出层向量O:



其中,O(k)是O的第k个元素;投影层参数H是矩阵,行数为n+2,列数为nV+nD,H(k)是H的第k行;投影层偏置b是列向量,行数为n+2,b(k)为b的第k行;表示将H和b的每一行代入HX+b式中计算并求和;
(a4)根据步骤(a3)得到的输出层向量O和步骤(a1)输入的真值T计算误差E:



其中,T(k)为T的第k个元素;
(a5)利用反向传播的方法更新投影层参数H、投影层偏置b、文档向量D(i)、上下文单词的单词向量:










【专利技术属性】
技术研发人员:夏言杜歆
申请(专利权)人:浙江大学
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1