首页 / 专利库 / 电子零件及设备 / 真值表 / 一种基于文档向量的电影评论情感分析方法

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

阅读:862发布:2020-05-08

专利汇可以提供一种基于文档向量的电影评论情感分析方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于文档向量的电影评论 情感分析 方法。该方法首先对电影评论进行数据清洗以及预处理,构建情感分析数据集。然后使用电影的评论和评论对应的评分训练改进的文档向量模型。然后将电影的评论输入到改进的文档向量模型得到电影评论的词向量和文档向量,并将电影评论对应的词向量平均后与文档向量拼接生成 特征向量 。最后使用基于电影评论生成的特征向量和电影评论对应的评分训练分类模型,对电影评论进行情感分类。本发明通过使用改进的文档向量生成方法,提高了电影评论情感分类的准确率。,下面是一种基于文档向量的电影评论情感分析方法专利的具体信息内容。

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)、上下文单词的单词向量:
其中,η为学习速率;其它上下文单词的单词向量的更新同理;
(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集合。
4.根据权利要求2所述基于文档向量的电影评论情感分析方法,其特征在于,所述步骤(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+b式中计算并求和;
(b4)根据步骤(b3)得到的输出层向量O和步骤(b1)输入的真值T计算误差E:
其中,T(k)为T的第k个元素;
(b5)利用反向传播的方法更新投影层参数H、投影层偏置b、文档向量D(i)、文档向量D(i)中所有单词对应的单词向量V(jD):
其中,η为学习速率;jD表示文档向量D(i)中所有单词的单词ID集合;
(b6)训练集每个文档向量D(i)的每个单词wt都执行一遍步骤(b1)到(b5),更新投影层参数H、投影层偏置b、文档矩阵D、单词矩阵V;
(b7)将步骤(b6)更新后的文档矩阵D作为输入,重复执行步骤(b1)到(b6),直到达到预设的迭代次数,截去最后一次迭代得到投影层参数H、投影层偏置b的最后两行,最终训练得到面向任务的分布式词袋模型,并得到训练集电影评论的特征向量为:
其中,N(i)为D(i)中单词的个数。
5.根据权利要求3或4所述基于文档向量的电影评论情感分析方法,其特征在于,所述步骤(3)包括以下子步骤:
(3.1)将经过步骤(1)预处理得到的待测电影评论的文档向量D(i)和当前单词对应的
真值T输入步骤(2)训练的文档向量模型;所述真值T由将输出层向量O中实际的当前单词的概率置1,其余元素均置0得到;所述输出层向量O={PV(j)|j=1~n};
(3.2)获得投影层向量X;
(3.3)获得输出层向量O:
其中,H、b由所述截去最后一次迭代得到投影层参数H、投影层偏置b的最后两行得到,行数均为n;
(3.4)计算误差E;
(3.5)更新文档向量D(i):
(3.6)将文档向量D(i)的每个单词wt都执行一遍步骤(3.1)~(3.5);
(3.7)将步骤(3.6)更新后的文档向量D(i)作为输入,重复执行步骤(3.1)~(3.6),直到达到预设的迭代次数,得到待测电影评论的特征向量。
6.根据权利要求1所述基于文档向量的电影评论情感分析方法,其特征在于,所述步骤(1.2)的中文分词算法为结巴分词。
7.根据权利要求1所述基于文档向量的电影评论情感分析方法,其特征在于,所述步骤(4)中分类模型为逻辑回归模型。

说明书全文

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

技术领域

[0001] 本发明属于文本分类领域,尤其涉及一种基于文档向量的电影评论情感分析方法。

背景技术

[0002] 电影评价是用户在观影后发表的自己对于电影的评论和观点。一方面影片的评价是用户选择电影的重要依据,用户通常会通过查看影片的评价来了解影片的特点以及优缺点。另一方面制片商希望通过用户的评价来了解影片可能存在的问题以及用户的需求。制片商通过分析用户的评价可以对影片进行改进,提高影片的质量。情感分析作为用户评价分析的重要内容可以将用户评论按照情感极性进行分类,能够统计出影片积极情感和消极情感的比例以便对影片有更直观的认识。情感分析也能够帮助用户和制片商找到感兴趣的评价。
[0003] 目前词嵌入的方法是情感分析的主流方法,这类方法主要通过无监督的方法训练词向量模型,得到单词的向量空间表示。然后通过对评论中的单词对应的词向量进行加权平均来得到文档向量。最后使用文档向量训练分类模型预测文档的情感类别。但是这类方法使用词向量加权平均的方法得到的文档向量不能够考虑评论中单词的顺序,因此会影响情感分类的性能。另一方面这类方法使用无监督的方式训练词向量,因此训练出的词向量只能够表示单词的语义和语法信息,无法表示和情感相关的信息也会影响情感分类的性能。

发明内容

[0004] 本发明的目的在于针对现有方法的不足,提出了一种基于改进的文档向量的情感分析方法。
[0005] 本发明的目的是通过以下技术方案来实现的:一种基于文档向量的电影评论情感分析方法,包括以下步骤:
[0006] (1)输入训练集电影评论,进行数据预处理,得到文档矩阵D和单词矩阵V及评论的情感类别;
[0007] (2)设置模型参数,随机初始化投影层参数H和投影层偏置b,根据步骤(1)得到的文档矩阵D和单词矩阵V及评论的情感类别训练文档向量模型,并得到训练集电影评论的特征向量;所述文档向量模型包括面向任务的分布式记忆模型和面向任务的分布式词袋模型;
[0008] (3)待测电影评论经过步骤(1)预处理后,将其文档向量输入到步骤(2)训练得到的文档向量模型中预测,更新文档向量并得到预测集电影评论的特征向量;
[0009] (4)将步骤(2)得到的训练集电影评论的特征向量结合对应的情感类别训练分类模型;模型的输入为电影评论的特征向量,输出为电影评论的情感类别;
[0010] (5)将步骤(3)得到的预测集电影评论的特征向量输入步骤(4)训练的分类模型,分析得到预测集电影评论的情感类别。
[0011] 进一步地,所述步骤(1)包括以下子步骤:
[0012] (1.1)评论的情感类别包括消极情感Lable1、积极情感Lable2等;评分小于评分阈值的评论为消极情感的评论;评分大于评分阈值的评论为积极情感的评论;删除评分等于评分阈值的评论;
[0013] (1.2)删除评论中的特殊符号;删除少于最小字数的评论以及评分缺失和评分为零的评论;利用中文分词算法将评论拆分为单词,并删除停用词;删除剩余单词中出现次数少于三次的单词;
[0014] (1.3)将步骤(1.2)剩余的每条评论作为一个文档,将所有文档中出现的单词构成词典;为每个文档分配文档ID,为词典中的每个单词分配单词ID;
[0015] (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)。
[0016] 进一步地,所述步骤(2)中面向任务的分布式记忆模型的模型参数包括上下文窗口的大小2c+1、迭代次数;模型的输入为文档向量和上下文窗口内当前单词的上下文单词的单词向量;模型的输出为输出层向量O:
[0017]
[0018] 其中,PV(j)表示当前单词wt的单词ID为j的概率, 表示评论是消极情感的概率, 是评论是积极情感的概率;n为词典中单词的个数;模型的训练包括以下子步骤:
[0019] (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得到;
[0020] (a2)对上下文单词的单词向量求平均,然后与文档向量D(i)拼接得到投影层向量X:
[0021]
[0022] (a3)采用基于负采样的Softmax方法或者层次Softmax的方法得到输出层向量O:
[0023]
[0024] 其中,O(k)是O的第k个元素;投影层参数H是矩阵,行数为n+2,列数为nV+nD,H(k)是H的第k行;投影层偏置b是列向量,行数为n+2,b(k)为b的第k行; 表示将H和b的每一行代入HX+b式中计算并求和;
[0025] (a4)根据步骤(a3)得到的输出层向量O和步骤(a1)输入的真值T计算误差E:
[0026]
[0027] 其中,T(k)为T的第k个元素;
[0028] (a5)利用反向传播的方法更新投影层参数H、投影层偏置b、文档向量D(i)、上下文单词的单词向量:
[0029]
[0030]
[0031]
[0032]
[0033] 其中,η为学习速率;其它上下文单词的单词向量的更新同理;
[0034] (a6)训练集每个文档向量D(i)的每个单词wt都执行一遍步骤(a1)到(a5),更新投影层参数H、投影层偏置b、文档矩阵D、单词矩阵V;
[0035] (a7)将步骤(a6)更新后的文档矩阵D作为输入,重复执行步骤(a1)到(a6),直到达到预设的迭代次数,截去最后一次迭代得到投影层参数H、投影层偏置b的最后两行,最终训练得到面向任务的分布式记忆模型,并得到训练集电影评论的特征向量为:
[0036]
[0037] 其中,N(i)为D(i)中单词的个数;jD表示文档向量D(i)中所有单词的单词ID集合。
[0038] 进一步地,所述步骤(2)中面向任务的分布式词袋模型的模型参数为迭代次数;模型的输入为文档向量和上下文窗口内当前单词的上下文单词的单词向量;模型的输出为输出层向量O:
[0039]
[0040] 其中,PV(j)表示当前单词wt的单词ID为j的概率, 表示评论是消极情感的概率, 是评论是积极情感的概率;n为词典中单词的个数;模型的训练包括以下子步骤:
[0041] (b1)输入训练集的文档向量D(i)和真值T;所述真值T由将输出层向量O中实际的当前单词以及情感类别的概率置1,其余元素均置0得到;
[0042] (b2)令投影层向量X=D(i);
[0043] (b3)采用基于负采样的Softmax方法或者层次Softmax的方法得到输出层向量O:
[0044]
[0045] 其中,O(k)是O的第k个元素;投影层参数H是矩阵,行数为n+2,列数为nD,H(k)是H的第k行;投影层偏置b是列向量,行数为n+2,b(k)为b的第k行; 表示将H和b的每一行代入HX+b式中计算并求和;
[0046] (b4)根据步骤(b3)得到的输出层向量O和步骤(b1)输入的真值T计算误差E:
[0047]
[0048] 其中,T(k)为T的第k个元素;
[0049] (b5)利用反向传播的方法更新投影层参数H、投影层偏置b、文档向量D(i)、文档向量D(i)中所有单词对应的单词向量V(jD):
[0050]
[0051]
[0052]
[0053]
[0054] 其中,η为学习速率;jD表示文档向量D(i)中所有单词的单词ID集合;
[0055] (b6)训练集每个文档向量D(i)的每个单词wt都执行一遍步骤(b1)到(b5),更新投影层参数H、投影层偏置b、文档矩阵D、单词矩阵V;
[0056] (b7)将步骤(b6)更新后的文档矩阵D作为输入,重复执行步骤(b1)到(b6),直到达到预设的迭代次数,截去最后一次迭代得到投影层参数H、投影层偏置b的最后两行,最终训练得到面向任务的分布式词袋模型,并得到训练集电影评论的特征向量为:
[0057]
[0058] 其中,N(i)为D(i)中单词的个数。
[0059] 进一步地,所述步骤(3)包括以下子步骤:
[0060] (3.1)将经过步骤(1)预处理得到的待测电影评论的文档向量D(i)和当前单词对应的真值T输入步骤(2)训练的文档向量模型;所述真值T由将输出层向量O中实际的当前单词的概率置1,其余元素均置0得到;所述输出层向量O={PV(j)|j=1~n};
[0061] (3.2)获得投影层向量X;
[0062] (3.3)获得输出层向量O:
[0063]
[0064] 其中,H、b由所述截去最后一次迭代得到投影层参数H、投影层偏置b的最后两行得到,行数均为n;
[0065] (3.4)计算误差E;
[0066] (3.5)更新文档向量D(i):
[0067]
[0068] (3.6)将文档向量D(i)的每个单词wt都执行一遍步骤(3.1)~(3.5);
[0069] (3.7)将步骤(3.6)更新后的文档向量D(i)作为输入,重复执行步骤(3.1)~(3.6),直到达到预设的迭代次数,得到待测电影评论的特征向量。
[0070] 进一步地,所述步骤(1.2)的中文分词算法为结巴分词。
[0071] 进一步地,所述步骤(4)中分类模型为逻辑回归模型。
[0072] 本发明的有益效果是:本发明方法能够利用评论的情感分类,使得训练生成的词向量中包含情感特征;另一方面该方法能够训练得到文档向量,训练得到的文档向量能够考虑评论中单词的顺序;具有以下特点:
[0073] (1)通过使用训练得到的文档向量,在文档向量中能够表示评论中单词的顺序,提升了情感分类的准确率;
[0074] (2)通过提出一种改进的文档向量模型,利用评论的情感分类,使得训练得到单词向量和文档向量能够表示情感特征,提升了后续情感分类的准确率。附图说明
[0075] 图1为本发明中基于文档向量的电影情感分析方法的流程图
[0076] 图2为TS-DM模型的模型结构示意图。
[0077] 图3为TS-DBOW模型的模型结构示意图。
[0078] 图4为改进的文档向量模型的训练流程图。

具体实施方式

[0079] 下面结合附图和具体实施方式对本发明作进一步详细描述,本发明的目的和效果将变得更加明显。
[0080] 图1给出了本发明方法的流程图,本发明将基于文档向量的电影评论情感分析方法分为四个步骤,即数据预处理、训练改进的文档向量模型、预测电影评论的特征向量、预测电影评论的情感类别。
[0081] (1)在步骤101中,数据预处理的具体步骤如下:
[0082] (1.1)删除评论中特殊符号等非文本信息。评论中可能会包括一些表情没有意义的符号,因此使用正则表达式删除评论中的特殊符号。
[0083] (1.2)删除少于最小字数(设为5)的评论以及评分缺失和评分为零的评论。很多字数过少的评论没有体现出想要表达的情感,因此过滤掉评论字数少于5的评论。另一方面评分缺失的评论也无法用于训练模型因此也将其删除。
[0084] (1.3)根据评论的评分进行情感分类,评分小于评分阈值的评论为消极情感的评论,记为Lable1;评分大于评分阈值的评论为积极情感的评论,记为Lable2,删除评分等于评分阈值的评论。例如评论的评分区间为1到5分则可以将小于3分评论作为消极情感,将大于3分的评论作为积极情感。
[0085] (1.4)利用中文分词算法对评论文本进行分词处理,拆分为单词。对中文进行自然语言处理最基本的步骤就是进行分词,因为中文的词语之间没有间隔,所以需要利用中文分词算法将文本拆分为单词。有很多成熟的分词方案可以使用,例如使用结巴分词。
[0086] (1.5)基于停用词库删除步骤(1.4)得到的单词中的停用词。有很多单词并没有实际的意义,例如中文中的助词,因此基于停用词库删除出现在停用词库中的词语。
[0087] (1.6)统计步骤(1.5)剩余单词中每个单词出现的频率,删除出现次数少于三次的单词。
[0088] (1.7)将剩余的每条评论作为一个文档,将所有文档中出现的单词构成词典;
[0089] (1.8)将所有文档按照4∶1的比例随机划分为训练集和预测集。
[0090] (2)在步骤102中,使用预处理后的电影评论以及对应的情感类别训练改进的文档向量模型的具体步骤如下:
[0091] (2.1)为训练集中每个文档分配一个唯一的文档ID,为词典中的每个单词分配一个唯一的单词ID。
[0092] (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)。
[0093] (2.3)设置模型参数,随机初始化投影层参数H和投影层偏置b并训练改进的文档向量模型。所述改进的文档向量模型包括以下两种不同的结构:
[0094] (2.3.1)第一种结构称为TS-DM(Task-Specific Distributed Memory,面向任务的分布式记忆)模型,其结构示意图如图2所示。所述模型参数包括上下文窗口的大小2c+1、迭代次数,例如设置上下文窗口大小为5,词向量的维度为100,文档向量的维度为100,迭代次数为10次。所述TS-DM模型为3层神经网络结构,分别为输入层、投影层、输出层。该模型使用文档向量和上下文单词向量预测当前单词以及评论的情感类别,训练流程图如图4所述,分为准备输入层向量、计算投影层向量、计算输出层向量、计算误差并反向传播4个步骤,具体为:
[0095] (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。
[0096] 待训练模型的输出层向量O由两部分组成,第一部分为词典中每个单词的概率;第二部分为每个情感类别的概率;其中概率最大的单词为模型预测的当前单词,表示为:
[0097] O={PV(j)|j=1~n,PLable1,PLable2}
[0098] 其中,PV(j)为词典中单词ID为j的单词被认为是当前单词wt的概率,PLablel是当前评论被认为是消极情感的概率,PLable2是当前评论被认为是积极情感的概率,n为词典中单词的个数;
[0099] 所述真值T为实际的当前单词以及评论的情感类别的概率为1其余元素均为0的矩阵,即PV(jt)和PLable1,PLable2中的一个为1;例如实际的当前单词在词典中的单词ID为1,情感类别为积极情感,且n=3时,真值T=[1,0,0,0,1]。
[0100] (a2)步骤202计算投影层向量:对当前单词wt的上下文单词对应的单词向量求平均,然后与该文档向量D(i)拼接得到投影层向量X:
[0101]
[0102] (a3)步骤203计算输出层向量:由于词典中的单词数目较多,计算量较大,因此采用基于负采样的Softmax方法或者层次Softmax的方法得到输出层向量O:
[0103]
[0104] 其中,O(k)是O的第k个元素;矩阵H是投影层参数,行数为n+2,列数为nV+nD,H(k)是H的第k行;列向量b是投影层偏置,行数为n+2,b(k)为b的第k行。 表示将H和b的每一行代入HX+b式中计算并求和,ki用于与k进行区分。
[0105] 所述基于负采样的Softmax方法通过选择部分未出现的单词进行计算来减小计算量;所述层次Softmax通过构建哈夫曼Huffman树将概率转化成多个二分类概率的乘积来减小计算量。有关负采样和层次的Softmax方法,参见Mikolov T,Sutskever I,Chen K,et al.Distributed representations  of  words and phrases and  their compositionality[C]//Advances in neural information processing systems.2013:
3111-3119.
[0106] (a4)步骤204计算误差并反向传播:首先根据输出层向量O和真值T计算误差E:
[0107]
[0108] 其中,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):
[0109]
[0110]
[0111]
[0112]
[0113] 其中,η为学习速率;其它上下文单词的单词向量的更新同理。
[0114] (a5)训练集中的每个文档向量D(i)的每个单词wt都执行一遍步骤a1到a4,更新得到新的投影层参数H、投影层偏置b,文档矩阵D和单词矩阵V。
[0115] (a6)将步骤(a5)更新后的文档矩阵D作为输入,重复执行步骤a1到a5,直到达到预设的迭代次数,截去最后一次迭代得到投影层参数H、投影层偏置b的最后两行用于模型预测,最终训练得到改进的文档向量模型,确定模型预测所需的投影层参数H、投影层偏置b和单词矩阵V;根据该模型的单词矩阵V,将训练集中的文档向量D(i)中所有单词对应的单词向量V(j)求平均后,再与文档向量D(i)进行拼接得到训练集电影评论的特征向量F(i):
[0116]
[0117] 其中,N(i)为D(i)中单词的个数;jD表示文档向量D(i)中的所有单词对应单词ID的集合,由于评论中可能存在重复的单词,该集合中的单词ID也可能有重复的。
[0118] (2.3.2)第二种结构称为TS-DBOW(Task-Specific Distributed Bag of Words,面向任务的分布式词袋)模型,其结构示意图如图3所示。所述模型参数为迭代次数。所述TS-DBOW模型为3层神经网络结构,分别为输入层、投影层、输出层,该模型使用文档向量D(i)预测对应评论中的单词以及评论的情感类别,每一次迭代预测对应评论中的一个单词以及评论的情感类别。模型的训练流程图如图4所示,包括以下子步骤:
[0119] (b1)输入训练集中的文档向量D(i)以及当前单词wt的单词向量V(jt)和真值T。
[0120] 待训练模型的输出层向量O表示为:
[0121] O={PV(j)|j=1~n,PLable1,PLable2}
[0122] (b2)投影层不进行任何操作,投影层向量X=D(i);
[0123] (b3)采用基于负采样的Softmax方法或者层次Softmax的方法得到输出层向量O:
[0124]
[0125] 其中,矩阵H是投影层参数,行数为n+2,列数为nD,H(k)是H的第k行;列向量b是投影层的偏置,行数为n+2,b(k)为b的第k行。
[0126] (b4)首先根据输出层向量O和真值T计算误差E:
[0127]
[0128] 然后利用反向传播的方法更新投影层参数H、投影层偏置b以及文档向量D(i)和D(i)中所有单词对应单词向量V(jD):
[0129]
[0130]
[0131]
[0132]
[0133] (b5)训练集中的每个文档向量D(i)的每个单词wt都执行一遍步骤b1到b4,更新得到新的投影层参数H、投影层偏置b,文档矩阵D和单词矩阵V。
[0134] (b6)将步骤(b5)更新后的文档矩阵D作为输入,重复执行步骤b1到b5,直到达到预设的迭代次数,截去最后一次迭代得到投影层参数H、投影层偏置b的最后两行用于模型预测,最终训练得到改进的文档向量模型,确定模型预测所需的投影层参数H、投影层偏置b和单词矩阵V;根据该模型的单词矩阵V,将训练集中的文档向量D(i)中所有单词对应的单词向量V(j)求平均后,再与文档向量D(i)进行拼接得到训练集电影评论的特征向量F(i):
[0135]
[0136] (3)步骤103预测电影评论的特征向量为:将预测集电影评论的文档向量输入到步骤(2)训练得到的文档向量模型中,预测过程和训练过程类似,区别在于模型预测的输出不包括评论的情感类别;在误差反向传播的时候不更新投影层参数H、投影层偏置b以及单词矩阵V,每次迭代仅更新文档向量。根据步骤(2)训练得到的单词矩阵V,将预测集电影评论的文档向量中所有单词对应的单词向量求平均后,再与最后一次迭代更新后的文档向量进行拼接,得到预测集电影评论的特征向量。
[0137] (4)步骤104预测电影的情感类别为使用步骤(2)得到的训练集电影评论的特征向量和对应的情感类别训练分类模型,并对预测集的电影评论进行情感分类,具体步骤如下:
[0138] (4.1)选择逻辑回归模型作为分类模型进行训练,设置模型的正则化参数为12正则化,残差收敛条件为0.0001,正则化系数为1.0。将步骤(a5)或(b5)得到的训练集电影评论的特征向量结合对应的情感类别训练二分类的逻辑回归模型;模型的输入为电影评论的特征向量,输出为电影评论的情感类别。
[0139] (4.2)将步骤(3)得到的预测集电影评论特征向量输入步骤(4.1)训练好的二分类的逻辑回归模型分析预测集电影评论的情感类别。
[0140] 计算并对比多种文档向量模型的预测准确率如下:
[0141] 表1:不同模型在情感分析任务上的性能。
[0142]模型 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
[0143] 表1给出了不同文档向量模型在同一数据集上的准确率Acc.以及F1分数,所述F1分数是用来衡量二分类模型精确度的一种指标,它同时兼顾了分类模型的精确率和召回率。其中,词袋模型(Bag of Words,BOW)是一种不考虑文档中单词的顺序,只统计单词出现的次数来生成文档向量的模型。Glove模型(Global Vectors)结合了全局矩阵分解和局部上下文窗口两种词向量生成方法。Word2vec模型分为Skip-Gram模型和CBOW(Continuous Bag-Of-Word,连续词袋)模型。Skip-Gram模型使用当前单词预测上下文单词而CBOW使用上下文单词预测当前单词。Doc2vec模型分为PV-DM(Distributed Memory Model of Paragraph Vectors,句向量的分布式记忆)模型和PV-DBOW(Distributed Bag of Words version ofParagraph Vector,句向量的分布式词袋)模型。
[0144] 表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%的绝对性能。
[0145] 有关Glove模型,参见:Pennington J,Socher R,Manning C.Glove:Global vectors for word representation[C]//Proceedings of the 2014conference on empirical methods in natural language processing(EMNLP).2014:1532-1543.
[0146] 有关Word2vec模型,参见:Mikolov T,Chen K,Corrado G,et a1.Efficient estimation ofword representations in vector space[J].arXiv preprint arXiv:1301.3781,2013.
[0147] 有关Doc2vec模型,参见:Le Q,Mikolov T.Distributed representations of sentences  and documents[C]//International  conference on machine learning.2014:1188-1196.
[0148] 以上仅为本发明具体实施方式,不能以此来限定本发明的范围,本技术领域内的一般技术人员根据本创作所作的均等变化,以及本领域内技术人员熟知的改变,都应仍属本发明涵盖的范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈