CN111078840B - 一种基于文档向量的电影评论情感分析方法 - Google Patents

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

Info

Publication number
CN111078840B
CN111078840B CN201911334017.XA CN201911334017A CN111078840B CN 111078840 B CN111078840 B CN 111078840B CN 201911334017 A CN201911334017 A CN 201911334017A CN 111078840 B CN111078840 B CN 111078840B
Authority
CN
China
Prior art keywords
word
vector
document
model
movie
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911334017.XA
Other languages
English (en)
Other versions
CN111078840A (zh
Inventor
夏言
杜歆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN201911334017.XA priority Critical patent/CN111078840B/zh
Publication of CN111078840A publication Critical patent/CN111078840A/zh
Application granted granted Critical
Publication of CN111078840B publication Critical patent/CN111078840B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Machine Translation (AREA)

Abstract

本发明公开了一种基于文档向量的电影评论情感分析方法。该方法首先对电影评论进行数据清洗以及预处理,构建情感分析数据集。然后使用电影的评论和评论对应的评分训练改进的文档向量模型。然后将电影的评论输入到改进的文档向量模型得到电影评论的词向量和文档向量,并将电影评论对应的词向量平均后与文档向量拼接生成特征向量。最后使用基于电影评论生成的特征向量和电影评论对应的评分训练分类模型,对电影评论进行情感分类。本发明通过使用改进的文档向量生成方法,提高了电影评论情感分类的准确率。

Description

一种基于文档向量的电影评论情感分析方法
技术领域
本发明属于文本分类领域,尤其涉及一种基于文档向量的电影评论情感分析方法。
背景技术
电影评价是用户在观影后发表的自己对于电影的评论和观点。一方面影片的评价是用户选择电影的重要依据,用户通常会通过查看影片的评价来了解影片的特点以及优缺点。另一方面制片商希望通过用户的评价来了解影片可能存在的问题以及用户的需求。制片商通过分析用户的评价可以对影片进行改进,提高影片的质量。情感分析作为用户评价分析的重要内容可以将用户评论按照情感极性进行分类,能够统计出影片积极情感和消极情感的比例以便对影片有更直观的认识。情感分析也能够帮助用户和制片商找到感兴趣的评价。
目前词嵌入的方法是情感分析的主流方法,这类方法主要通过无监督的方法训练词向量模型,得到单词的向量空间表示。然后通过对评论中的单词对应的词向量进行加权平均来得到文档向量。最后使用文档向量训练分类模型预测文档的情感类别。但是这类方法使用词向量加权平均的方法得到的文档向量不能够考虑评论中单词的顺序,因此会影响情感分类的性能。另一方面这类方法使用无监督的方式训练词向量,因此训练出的词向量只能够表示单词的语义和语法信息,无法表示和情感相关的信息也会影响情感分类的性能。
发明内容
本发明的目的在于针对现有方法的不足,提出了一种基于改进的文档向量的情感分析方法。
本发明的目的是通过以下技术方案来实现的:一种基于文档向量的电影评论情感分析方法,包括以下步骤:
(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:
Figure BDA0002329444550000021
其中,PV(j)表示当前单词wt的单词ID为j的概率,
Figure BDA0002329444550000022
表示评论是消极情感的概率,
Figure BDA0002329444550000023
是评论是积极情感的概率;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:
Figure BDA0002329444550000024
(a3)采用基于负采样的Softmax方法或者层次Softmax的方法得到输出层向量O:
Figure BDA0002329444550000031
其中,O(k)是O的第k个元素;投影层参数H是矩阵,行数为n+2,列数为nV+nD,H(k)是H的第k行;投影层偏置b是列向量,行数为n+2,b(k)为b的第k行;
Figure BDA0002329444550000032
表示将H和b的每一行代入HX+b式中计算并求和;
(a4)根据步骤(a3)得到的输出层向量O和步骤(a1)输入的真值T计算误差E:
Figure BDA0002329444550000033
其中,T(k)为T的第k个元素;
(a5)利用反向传播的方法更新投影层参数H、投影层偏置b、文档向量D(i)、上下文单词的单词向量:
Figure BDA0002329444550000034
Figure BDA0002329444550000035
Figure BDA0002329444550000036
Figure BDA0002329444550000037
其中,η为学习速率;其它上下文单词的单词向量的更新同理;
(a6)训练集每个文档向量D(i)的每个单词wt都执行一遍步骤(a1)到(a5),更新投影层参数H、投影层偏置b、文档矩阵D、单词矩阵V;
(a7)将步骤(a6)更新后的文档矩阵D作为输入,重复执行步骤(a1)到(a6),直到达到预设的迭代次数,截去最后一次迭代得到投影层参数H、投影层偏置b的最后两行,最终训练得到面向任务的分布式记忆模型,并得到训练集电影评论的特征向量为:
Figure BDA0002329444550000038
其中,N(i)为D(i)中单词的个数;jD表示文档向量D(i)中所有单词的单词ID集合。
进一步地,所述步骤(2)中面向任务的分布式词袋模型的模型参数为迭代次数;模型的输入为文档向量和上下文窗口内当前单词的上下文单词的单词向量;模型的输出为输出层向量O:
Figure BDA0002329444550000039
其中,PV(j)表示当前单词wt的单词ID为j的概率,
Figure BDA00023294445500000310
表示评论是消极情感的概率,
Figure BDA00023294445500000311
是评论是积极情感的概率;n为词典中单词的个数;模型的训练包括以下子步骤:
(b1)输入训练集的文档向量D(i)和真值T;所述真值T由将输出层向量O中实际的当前单词以及情感类别的概率置1,其余元素均置0得到;
(b2)令投影层向量X=D(i);
(b3)采用基于负采样的Softmax方法或者层次Softmax的方法得到输出层向量O:
Figure BDA0002329444550000041
其中,O(k)是O的第k个元素;投影层参数H是矩阵,行数为n+2,列数为nD,H(k)是H的第k行;投影层偏置b是列向量,行数为n+2,b(k)为b的第k行;
Figure BDA0002329444550000042
表示将H和b的每一行代入HX+b式中计算并求和;
(b4)根据步骤(b3)得到的输出层向量O和步骤(b1)输入的真值T计算误差E:
Figure BDA0002329444550000043
其中,T(k)为T的第k个元素;
(b5)利用反向传播的方法更新投影层参数H、投影层偏置b、文档向量D(i)、文档向量D(i)中所有单词对应的单词向量V(jD):
Figure BDA0002329444550000044
Figure BDA0002329444550000045
Figure BDA0002329444550000046
Figure BDA0002329444550000047
其中,η为学习速率;jD表示文档向量D(i)中所有单词的单词ID集合;
(b6)训练集每个文档向量D(i)的每个单词wt都执行一遍步骤(b1)到(b5),更新投影层参数H、投影层偏置b、文档矩阵D、单词矩阵V;
(b7)将步骤(b6)更新后的文档矩阵D作为输入,重复执行步骤(b1)到(b6),直到达到预设的迭代次数,截去最后一次迭代得到投影层参数H、投影层偏置b的最后两行,最终训练得到面向任务的分布式词袋模型,并得到训练集电影评论的特征向量为:
Figure BDA0002329444550000048
其中,N(i)为D(i)中单词的个数。
进一步地,所述步骤(3)包括以下子步骤:
(3.1)将经过步骤(1)预处理得到的待测电影评论的文档向量D(i)和当前单词对应的真值T输入步骤(2)训练的文档向量模型;所述真值T由将输出层向量O中实际的当前单词的概率置1,其余元素均置0得到;所述输出层向量O={PV(j)|j=1~n};
(3.2)获得投影层向量X;
(3.3)获得输出层向量O:
Figure BDA0002329444550000051
其中,H、b由所述截去最后一次迭代得到投影层参数H、投影层偏置b的最后两行得到,行数均为n;
(3.4)计算误差E;
(3.5)更新文档向量D(i):
Figure BDA0002329444550000052
(3.6)将文档向量D(i)的每个单词wt都执行一遍步骤(3.1)~(3.5);
(3.7)将步骤(3.6)更新后的文档向量D(i)作为输入,重复执行步骤(3.1)~(3.6),直到达到预设的迭代次数,得到待测电影评论的特征向量。
进一步地,所述步骤(1.2)的中文分词算法为结巴分词。
进一步地,所述步骤(4)中分类模型为逻辑回归模型。
本发明的有益效果是:本发明方法能够利用评论的情感分类,使得训练生成的词向量中包含情感特征;另一方面该方法能够训练得到文档向量,训练得到的文档向量能够考虑评论中单词的顺序;具有以下特点:
(1)通过使用训练得到的文档向量,在文档向量中能够表示评论中单词的顺序,提升了情感分类的准确率;
(2)通过提出一种改进的文档向量模型,利用评论的情感分类,使得训练得到单词向量和文档向量能够表示情感特征,提升了后续情感分类的准确率。
附图说明
图1为本发明中基于文档向量的电影情感分析方法的流程图。
图2为TS-DM模型的模型结构示意图。
图3为TS-DBOW模型的模型结构示意图。
图4为改进的文档向量模型的训练流程图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细描述,本发明的目的和效果将变得更加明显。
图1给出了本发明方法的流程图,本发明将基于文档向量的电影评论情感分析方法分为四个步骤,即数据预处理、训练改进的文档向量模型、预测电影评论的特征向量、预测电影评论的情感类别。
(1)在步骤101中,数据预处理的具体步骤如下:
(1.1)删除评论中特殊符号等非文本信息。评论中可能会包括一些表情没有意义的符号,因此使用正则表达式删除评论中的特殊符号。
(1.2)删除少于最小字数(设为5)的评论以及评分缺失和评分为零的评论。很多字数过少的评论没有体现出想要表达的情感,因此过滤掉评论字数少于5的评论。另一方面评分缺失的评论也无法用于训练模型因此也将其删除。
(1.3)根据评论的评分进行情感分类,评分小于评分阈值的评论为消极情感的评论,记为Lable1;评分大于评分阈值的评论为积极情感的评论,记为Lable2,删除评分等于评分阈值的评论。例如评论的评分区间为1到5分则可以将小于3分评论作为消极情感,将大于3分的评论作为积极情感。
(1.4)利用中文分词算法对评论文本进行分词处理,拆分为单词。对中文进行自然语言处理最基本的步骤就是进行分词,因为中文的词语之间没有间隔,所以需要利用中文分词算法将文本拆分为单词。有很多成熟的分词方案可以使用,例如使用结巴分词。
(1.5)基于停用词库删除步骤(1.4)得到的单词中的停用词。有很多单词并没有实际的意义,例如中文中的助词,因此基于停用词库删除出现在停用词库中的词语。
(1.6)统计步骤(1.5)剩余单词中每个单词出现的频率,删除出现次数少于三次的单词。
(1.7)将剩余的每条评论作为一个文档,将所有文档中出现的单词构成词典;
(1.8)将所有文档按照4∶1的比例随机划分为训练集和预测集。
(2)在步骤102中,使用预处理后的电影评论以及对应的情感类别训练改进的文档向量模型的具体步骤如下:
(2.1)为训练集中每个文档分配一个唯一的文档ID,为词典中的每个单词分配一个唯一的单词ID。
(2.2)根据步骤(2.1)中分配的文档ID和单词ID随机生成文档矩阵D和单词矩阵V;文档矩阵D的第i行为文档向量D(i),对应一个文档;单词矩阵V的第j行为单词向量V(j),对应词典中的一个单词;单词向量的维度为nV、文档向量的维度为nD;一个文档中的第t个单词记为wt,wt的单词ID为jt,对应的词向量记为W(t,jt)=V(jt)。
(2.3)设置模型参数,随机初始化投影层参数H和投影层偏置b并训练改进的文档向量模型。所述改进的文档向量模型包括以下两种不同的结构:
(2.3.1)第一种结构称为TS-DM(Task-Specific Distributed Memory,面向任务的分布式记忆)模型,其结构示意图如图2所示。所述模型参数包括上下文窗口的大小2c+1、迭代次数,例如设置上下文窗口大小为5,词向量的维度为100,文档向量的维度为100,迭代次数为10次。所述TS-DM模型为3层神经网络结构,分别为输入层、投影层、输出层。该模型使用文档向量和上下文单词向量预测当前单词以及评论的情感类别,训练流程图如图4所述,分为准备输入层向量、计算投影层向量、计算输出层向量、计算误差并反向传播4个步骤,具体为:
(a1)步骤201计算输入层向量:输入训练集中的文档向量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。
待训练模型的输出层向量O由两部分组成,第一部分为词典中每个单词的概率;第二部分为每个情感类别的概率;其中概率最大的单词为模型预测的当前单词,表示为:
O={PV(j)|j=1~n,PLable1,PLable2}
其中,PV(j)为词典中单词ID为j的单词被认为是当前单词wt的概率,PLablel是当前评论被认为是消极情感的概率,PLable2是当前评论被认为是积极情感的概率,n为词典中单词的个数;
所述真值T为实际的当前单词以及评论的情感类别的概率为1其余元素均为0的矩阵,即PV(jt)和PLable1,PLable2中的一个为1;例如实际的当前单词在词典中的单词ID为1,情感类别为积极情感,且n=3时,真值T=[1,0,0,0,1]。
(a2)步骤202计算投影层向量:对当前单词wt的上下文单词对应的单词向量求平均,然后与该文档向量D(i)拼接得到投影层向量X:
Figure BDA0002329444550000071
(a3)步骤203计算输出层向量:由于词典中的单词数目较多,计算量较大,因此采用基于负采样的Softmax方法或者层次Softmax的方法得到输出层向量O:
Figure BDA0002329444550000072
其中,O(k)是O的第k个元素;矩阵H是投影层参数,行数为n+2,列数为nV+nD,H(k)是H的第k行;列向量b是投影层偏置,行数为n+2,b(k)为b的第k行。
Figure BDA0002329444550000081
表示将H和b的每一行代入HX+b式中计算并求和,ki用于与k进行区分。
所述基于负采样的Softmax方法通过选择部分未出现的单词进行计算来减小计算量;所述层次Softmax通过构建哈夫曼Huffman树将概率转化成多个二分类概率的乘积来减小计算量。有关负采样和层次的Softmax方法,参见Mikolov T,Sutskever I,Chen K,etal.Distributed representations of words and phrases and theircompositionality[C]//Advances in neural information processing systems.2013:3111-3119.
(a4)步骤204计算误差并反向传播:首先根据输出层向量O和真值T计算误差E:
Figure BDA0002329444550000082
其中,T(k)为T的第k个元素;然后利用反向传播的方法更新投影层参数H、投影层偏置b以及文档向量D(i)和上下文单词对应的单词向量V(jt-c)+V(jt-c+1)+…+V(jt-1)+V(j+1)+…+V(jt+c-1)+V(jt+c):
Figure BDA0002329444550000083
Figure BDA0002329444550000084
Figure BDA0002329444550000085
Figure BDA0002329444550000086
其中,η为学习速率;其它上下文单词的单词向量的更新同理。
(a5)训练集中的每个文档向量D(i)的每个单词wt都执行一遍步骤a1到a4,更新得到新的投影层参数H、投影层偏置b,文档矩阵D和单词矩阵V。
(a6)将步骤(a5)更新后的文档矩阵D作为输入,重复执行步骤a1到a5,直到达到预设的迭代次数,截去最后一次迭代得到投影层参数H、投影层偏置b的最后两行用于模型预测,最终训练得到改进的文档向量模型,确定模型预测所需的投影层参数H、投影层偏置b和单词矩阵V;根据该模型的单词矩阵V,将训练集中的文档向量D(i)中所有单词对应的单词向量V(j)求平均后,再与文档向量D(i)进行拼接得到训练集电影评论的特征向量F(i):
Figure BDA0002329444550000087
其中,N(i)为D(i)中单词的个数;jD表示文档向量D(i)中的所有单词对应单词ID的集合,由于评论中可能存在重复的单词,该集合中的单词ID也可能有重复的。
(2.3.2)第二种结构称为TS-DBOW(Task-Specific Distributed Bag of Words,面向任务的分布式词袋)模型,其结构示意图如图3所示。所述模型参数为迭代次数。所述TS-DBOW模型为3层神经网络结构,分别为输入层、投影层、输出层,该模型使用文档向量D(i)预测对应评论中的单词以及评论的情感类别,每一次迭代预测对应评论中的一个单词以及评论的情感类别。模型的训练流程图如图4所示,包括以下子步骤:
(b1)输入训练集中的文档向量D(i)以及当前单词wt的单词向量V(jt)和真值T。
待训练模型的输出层向量O表示为:
O={PV(j)|j=1~n,PLable1,PLable2}
(b2)投影层不进行任何操作,投影层向量X=D(i);
(b3)采用基于负采样的Softmax方法或者层次Softmax的方法得到输出层向量O:
Figure BDA0002329444550000091
其中,矩阵H是投影层参数,行数为n+2,列数为nD,H(k)是H的第k行;列向量b是投影层的偏置,行数为n+2,b(k)为b的第k行。
(b4)首先根据输出层向量O和真值T计算误差E:
Figure BDA0002329444550000092
然后利用反向传播的方法更新投影层参数H、投影层偏置b以及文档向量D(i)和D(i)中所有单词对应单词向量V(jD):
Figure BDA0002329444550000093
Figure BDA0002329444550000094
Figure BDA0002329444550000095
Figure BDA0002329444550000096
(b5)训练集中的每个文档向量D(i)的每个单词wt都执行一遍步骤b1到b4,更新得到新的投影层参数H、投影层偏置b,文档矩阵D和单词矩阵V。
(b6)将步骤(b5)更新后的文档矩阵D作为输入,重复执行步骤b1到b5,直到达到预设的迭代次数,截去最后一次迭代得到投影层参数H、投影层偏置b的最后两行用于模型预测,最终训练得到改进的文档向量模型,确定模型预测所需的投影层参数H、投影层偏置b和单词矩阵V;根据该模型的单词矩阵V,将训练集中的文档向量D(i)中所有单词对应的单词向量V(j)求平均后,再与文档向量D(i)进行拼接得到训练集电影评论的特征向量F(i):
Figure BDA0002329444550000101
(3)步骤103预测电影评论的特征向量为:将预测集电影评论的文档向量输入到步骤(2)训练得到的文档向量模型中,预测过程和训练过程类似,区别在于模型预测的输出不包括评论的情感类别;在误差反向传播的时候不更新投影层参数H、投影层偏置b以及单词矩阵V,每次迭代仅更新文档向量。根据步骤(2)训练得到的单词矩阵V,将预测集电影评论的文档向量中所有单词对应的单词向量求平均后,再与最后一次迭代更新后的文档向量进行拼接,得到预测集电影评论的特征向量。
(4)步骤104预测电影的情感类别为使用步骤(2)得到的训练集电影评论的特征向量和对应的情感类别训练分类模型,并对预测集的电影评论进行情感分类,具体步骤如下:
(4.1)选择逻辑回归模型作为分类模型进行训练,设置模型的正则化参数为12正则化,残差收敛条件为0.0001,正则化系数为1.0。将步骤(a5)或(b5)得到的训练集电影评论的特征向量结合对应的情感类别训练二分类的逻辑回归模型;模型的输入为电影评论的特征向量,输出为电影评论的情感类别。
(4.2)将步骤(3)得到的预测集电影评论特征向量输入步骤(4.1)训练好的二分类的逻辑回归模型分析预测集电影评论的情感类别。
计算并对比多种文档向量模型的预测准确率如下:
表1:不同模型在情感分析任务上的性能。
模型 Acc. F1
BOW 86.4 76.5
Glove 85.4 75.5
Skip-Gram 86.9 78.3
CBOW 85.6 76.0
PV-DM 86.4 77.4
PV-DBOW 87.0 78.8
TS-DM 87.5 80.2
TS-DBOW 88.4 81.3
表1给出了不同文档向量模型在同一数据集上的准确率Acc.以及F1分数,所述F1分数是用来衡量二分类模型精确度的一种指标,它同时兼顾了分类模型的精确率和召回率。其中,词袋模型(Bag of Words,BOW)是一种不考虑文档中单词的顺序,只统计单词出现的次数来生成文档向量的模型。Glove模型(Global Vectors)结合了全局矩阵分解和局部上下文窗口两种词向量生成方法。Word2vec模型分为Skip-Gram模型和CBOW(ContinuousBag-Of-Word,连续词袋)模型。Skip-Gram模型使用当前单词预测上下文单词而CBOW使用上下文单词预测当前单词。Doc2vec模型分为PV-DM(Distributed Memory Model ofParagraph Vectors,句向量的分布式记忆)模型和PV-DBOW(Distributed Bag of Wordsversion ofParagraph Vector,句向量的分布式词袋)模型。
表1中加粗的值代表模型的性能最好,从表1中可知,本发明中的TS-DM模型和TS-DBOW模型的性能比其它常用的模型的性能更好。其它常用的模型之中性能最好的是PV-DBOW模型,在准确率上TS-DBOW模型相比于PV-DBOW模型提升了1.4%的绝对性能。在F1值上TS-DBOW模型相比于PV-DBOW模型提升了2.5%的绝对性能。TS-DM模型是改进的PV-DM模型,本发明中的TS-DM模型在准确率和F1值上分别提升了1.1%和2.8%的绝对性能。
有关Glove模型,参见:Pennington J,Socher R,Manning C.Glove:Globalvectors for word representation[C]//Proceedings of the 2014conference onempirical methods in natural language processing(EMNLP).2014:1532-1543.
有关Word2vec模型,参见:Mikolov T,Chen K,Corrado G,et a1.Efficientestimation ofword representations in vector space[J].arXiv preprint arXiv:1301.3781,2013.
有关Doc2vec模型,参见:Le Q,Mikolov T.Distributed representations ofsentences and documents[C]//International conference on machinelearning.2014:1188-1196.
以上仅为本发明具体实施方式,不能以此来限定本发明的范围,本技术领域内的一般技术人员根据本创作所作的均等变化,以及本领域内技术人员熟知的改变,都应仍属本发明涵盖的范围。

Claims (5)

1.一种基于文档向量的电影评论情感分析方法,其特征在于,包括以下步骤:
(1)输入训练集电影评论,进行数据预处理,得到文档矩阵D、单词矩阵V、评论的情感类别;
(2)设置模型参数,随机初始化投影层参数H和投影层偏置b,根据步骤(1)得到的文档矩阵D和单词矩阵V及评论的情感类别训练文档向量模型,并得到训练集电影评论的特征向量;所述文档向量模型包括面向任务的分布式记忆模型和面向任务的分布式词袋模型;其中:
面向任务的分布式记忆模型的模型参数包括上下文窗口的大小2c+1、迭代次数;模型的输入为文档向量和上下文窗口内当前单词的上下文单词的单词向量;模型的输出为输出层向量O:
Figure FDA0003500917790000011
其中,PV(j)表示当前单词wt的单词ID为j的概率,
Figure FDA0003500917790000012
表示评论是消极情感的概率,
Figure FDA0003500917790000013
是评论是积极情感的概率;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:
Figure FDA0003500917790000014
(a3)采用基于负采样的Softmax方法或者层次Softmax的方法得到输出层向量O:
Figure FDA0003500917790000015
其中,O(k)是O的第k个元素;投影层参数H是矩阵,行数为n+2,列数为nV+nD,H(k)是H的第k行;投影层偏置b是列向量,行数为n+2,b(k)为b的第k行;
Figure FDA0003500917790000016
表示将H和b的每一行代入HX+b式中计算并求和;
(a4)根据步骤(a3)得到的输出层向量O和步骤(a1)输入的真值T计算误差E:
Figure FDA0003500917790000017
其中,T(k)为T的第k个元素;
(a5)利用反向传播的方法更新投影层参数H、投影层偏置b、文档向量D(i)、上下文单词的单词向量:
Figure FDA0003500917790000021
Figure FDA0003500917790000022
Figure FDA0003500917790000023
Figure FDA0003500917790000024
其中,η为学习速率;其它上下文单词的单词向量的更新同理;
(a6)训练集每个文档向量D(i)的每个单词wt都执行一遍步骤(a1)到(a5),更新投影层参数H、投影层偏置b、文档矩阵D、单词矩阵V;
(a7)将步骤(a6)更新后的文档矩阵D作为输入,重复执行步骤(a1)到(a6),直到达到预设的迭代次数,截去最后一次迭代得到投影层参数H、投影层偏置b的最后两行,最终训练得到面向任务的分布式记忆模型,并得到训练集电影评论的特征向量为:
Figure FDA0003500917790000025
其中,N(i)为D(i)中单词的个数;jD表示文档向量D(i)中所有单词的单词ID集合;
面向任务的分布式词袋模型的模型参数为迭代次数;模型的输入为文档向量和上下文窗口内当前单词的上下文单词的单词向量;模型的输出为输出层向量O:
Figure FDA0003500917790000026
其中,PV(j)表示当前单词wt的单词ID为j的概率,
Figure FDA0003500917790000027
表示评论是消极情感的概率,
Figure FDA0003500917790000028
是评论是积极情感的概率;n为词典中单词的个数;模型的训练包括以下子步骤:
(b1)输入训练集的文档向量D(i)和真值T;所述真值T由将输出层向量O中实际的当前单词以及情感类别的概率置1,其余元素均置0得到;
(b2)令投影层向量X=D(i);
(b3)采用基于负采样的Softmax方法或者层次Softmax的方法得到输出层向量O:
Figure FDA0003500917790000029
其中,O(k)是O的第k个元素;投影层参数H是矩阵,行数为n+2,列数为nD,H(k)是H的第k行;投影层偏置b是列向量,行数为n+2,b(k)为b的第k行;
Figure FDA00035009177900000210
表示将H和b的每一行代入HX+b式中计算并求和;
(b4)根据步骤(b3)得到的输出层向量O和步骤(b1)输入的真值T计算误差E:
Figure FDA0003500917790000031
其中,T(k)为T的第k个元素;
(b5)利用反向传播的方法更新投影层参数H、投影层偏置b、文档向量D(i)、文档向量D(i)中所有单词对应的单词向量V(jD):
Figure FDA0003500917790000032
Figure FDA0003500917790000033
Figure FDA0003500917790000034
Figure FDA0003500917790000035
其中,η为学习速率;jD表示文档向量D(i)中所有单词的单词ID集合;
(b6)训练集每个文档向量D(i)的每个单词wt都执行一遍步骤(b1)到(b5),更新投影层参数H、投影层偏置b、文档矩阵D、单词矩阵V;
(b7)将步骤(b6)更新后的文档矩阵D作为输入,重复执行步骤(b1)到(b6),直到达到预设的迭代次数,截去最后一次迭代得到投影层参数H、投影层偏置b的最后两行,最终训练得到面向任务的分布式词袋模型,并得到训练集电影评论的特征向量为:
Figure FDA0003500917790000036
其中,N(i)为D(i)中单词的个数;
(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.根据权利要求1所述基于文档向量的电影评论情感分析方法,其特征在于,所述步骤(3)包括以下子步骤:
(3.1)将经过步骤(1)预处理得到的待测电影评论的文档向量D(i)和当前单词对应的真值T输入步骤(2)训练的文档向量模型;所述真值T由将输出层向量O中实际的当前单词的概率置1,其余元素均置0得到;所述输出层向量O={PV(j)|j=1~n};
(3.2)获得投影层向量X;
(3.3)获得输出层向量O:
Figure FDA0003500917790000041
其中,H、b由所述截去最后一次迭代得到投影层参数H、投影层偏置b的最后两行得到,行数均为n;
(3.4)计算误差E;
(3.5)更新文档向量D(i):
Figure FDA0003500917790000042
(3.6)将文档向量D(i)的每个单词wt都执行一遍步骤(3.1)~(3.5);
(3.7)将步骤(3.6)更新后的文档向量D(i)作为输入,重复执行步骤(3.1)~(3.6),直到达到预设的迭代次数,得到待测电影评论的特征向量。
4.根据权利要求2所述基于文档向量的电影评论情感分析方法,其特征在于,所述步骤(1.2)的中文分词算法为结巴分词。
5.根据权利要求1所述基于文档向量的电影评论情感分析方法,其特征在于,所述步骤(4)中分类模型为逻辑回归模型。
CN201911334017.XA 2019-12-20 2019-12-20 一种基于文档向量的电影评论情感分析方法 Active CN111078840B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911334017.XA CN111078840B (zh) 2019-12-20 2019-12-20 一种基于文档向量的电影评论情感分析方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911334017.XA CN111078840B (zh) 2019-12-20 2019-12-20 一种基于文档向量的电影评论情感分析方法

Publications (2)

Publication Number Publication Date
CN111078840A CN111078840A (zh) 2020-04-28
CN111078840B true CN111078840B (zh) 2022-04-08

Family

ID=70316785

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911334017.XA Active CN111078840B (zh) 2019-12-20 2019-12-20 一种基于文档向量的电影评论情感分析方法

Country Status (1)

Country Link
CN (1) CN111078840B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107391483A (zh) * 2017-07-13 2017-11-24 武汉大学 一种基于卷积神经网络的商品评论数据情感分类方法
CN107689224A (zh) * 2016-08-22 2018-02-13 北京深鉴科技有限公司 合理使用掩码的深度神经网络压缩方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107689224A (zh) * 2016-08-22 2018-02-13 北京深鉴科技有限公司 合理使用掩码的深度神经网络压缩方法
CN107391483A (zh) * 2017-07-13 2017-11-24 武汉大学 一种基于卷积神经网络的商品评论数据情感分类方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于注意力双层LSTM的长文本情感分类方法;毛焱颖;《重庆电子工程职业学院学报》;20190420(第02期);全文 *

Also Published As

Publication number Publication date
CN111078840A (zh) 2020-04-28

Similar Documents

Publication Publication Date Title
CN111783474B (zh) 一种评论文本观点信息处理方法、装置及存储介质
CN108446271B (zh) 基于汉字部件特征的卷积神经网络的文本情感分析方法
CN107862087B (zh) 基于大数据和深度学习的情感分析方法、装置和存储介质
CN110674850A (zh) 一种基于注意力机制的图像描述生成方法
CN110390017B (zh) 基于注意力门控卷积网络的目标情感分析方法及系统
CN110929034A (zh) 一种基于改进lstm的商品评论细粒度情感分类方法
CN110413768B (zh) 一种文章题目自动生成方法
Yang et al. Advances in Knowledge Discovery and Data Mining: 23rd Pacific-Asia Conference, PAKDD 2019, Macau, China, April 14-17, 2019, Proceedings, Part III
CN110427616B (zh) 一种基于深度学习的文本情感分析方法
AU2020101604A4 (en) A Recommendation with Item Cooccurrence based on Metric Factorization
CN113220886A (zh) 文本分类方法、文本分类模型训练方法及相关设备
Burdisso et al. τ-SS3: A text classifier with dynamic n-grams for early risk detection over text streams
JP2016170636A (ja) 接続関係推定装置、方法、及びプログラム
CN114332519A (zh) 一种基于外部三元组和抽象关系的图像描述生成方法
CN116521882A (zh) 基于知识图谱的领域长文本分类方法及系统
CN114036298B (zh) 一种基于图卷积神经网络与词向量的节点分类方法
CN110874392B (zh) 基于深度双向注意力机制的文本网络信息融合嵌入方法
CN114281982B (zh) 一种多模态融合技术的图书宣传摘要生成方法和系统
CN111241271B (zh) 文本情感分类方法、装置及电子设备
CN113158659A (zh) 一种基于司法文本的涉案财物计算方法
CN111078840B (zh) 一种基于文档向量的电影评论情感分析方法
Lakshmi et al. A comparative analysis of Machine Learning approaches for Movie Success Prediction
CN117034916A (zh) 构建词向量表示模型和词向量表示的方法、装置及设备
CN107729509B (zh) 基于隐性高维分布式特征表示的篇章相似度判定方法
CN114943216A (zh) 基于图注意力网络的案件微博属性级观点挖掘方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant