基于深度模型的影评情感分析(阶段报告)
一、小组成员
- 赵冬迪 2120161081
- 夏光敏 2120161064
- 解亚东 2120161004
- 杨雅婷 2120161070
二、内容与意义
随着网络上评论信息爆炸式的增长,以人工的方法很难应对海量评论信息的收集和处理,情感分析技术随之产生。本课题以电影影评为例,拟采用深度学习的方法对电影评论进行情感分析。
一个电影评论网站允许用户提交关于他们针对某部电影的带有感情色彩的主观评论。充分挖掘这些评论继而生成有价值的元数据,可以让我们以一个宏观的角度来理解观众对于这部电影的情感,我们可以对主观内容做出一个客观的分析,使我们能更好的理解产品和服务的趋势,为观众和其他电影参与方提供更好的决策建议。相比较于单纯的评分,基于影评内容的分析更能体现一个人的主观情绪。
通过训练得到的影评情感分析模型,可以对微博、Twitter等社交媒体中包含的影评内容进行分析,从而理解不同类型用户对于电影的真实情感。
三、目标与功能
我们的目标是利用深度模型进行影评情感分析,训练出来的情感评估模型可以用作以下用途:
- 用户电影推荐
- 影院电影排片推荐
- 演员导演的能力评估
- 电影种类受欢迎程度评估
三、完成情况
1.数组准备
利用爬虫程序从豆瓣等影评网站爬取数据,并从中抽取用户名、评分、影评等内容。训练情感分类模型,并基于这些内容挖掘相关知识。
目前已经按照电影类别从豆瓣上爬取了近20万条影评作为模型的训练与测试集,主要涵盖了科幻、爱情、动画、文艺、战争、恐怖、纪录片、烂片八大类,数据的清洗已经完成,将标签不明显、不完整的数据删除。由于豆瓣的影评等级在1-5星之间,从爬取到的影评中抽取4星及以上的影评作为正面情感的样本,2星及以下的影评作为负面情感的样本。处理后的数据集包含8万余条正样本和5万余条负样本。
2. 模型设计与训练
设计采用了基于LSTM神经网络的情感分析模型。模型的具体流程如下图:
由于爬取到的影评样本数据集是不均衡的,即正负样本的数量差距较大。因此,首先从数据集中随机抽取相同数量的正负样本生成训练数据集,再从剩下的数据集中抽取测试样本。
正负样本示例如下:
使用结巴分词对影评语料进行分词,并采用谷歌的开源工具Word2Vec将分词的词语表示为词向量。基于Python的Gensim库中提供了现成的Word2Vec工具作为子库。中间结果如下:
将词表示为词向量后,则句子就对应着词向量的集合,也就是矩阵。模型的输入一般只接受一维的特征,因此将矩阵展开,获得一个较长的句向量。
获得句向量后,基于LSTM搭建影评情感分析的模型,模型的具体实现是基于Keras框架。训练过程如下:
在测试集上的准确率在85%左右。
四、下阶段目标
基于训练好的情感分析模型,对目标功能进行实现。包括:
- 用户电影推荐
- 影院电影排片推荐
- 演员导演的能力评估
- 电影种类受欢迎程度评估