基于 Python 深度学习的电影评论情感分析系统,附源码

博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝12W+、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌

🍅文末获取源码联系🍅

👇🏻 精彩专栏推荐订阅👇🏻 不然下次找不到哟

2022-2024年最全的计算机软件毕业设计选题大全:1000个热门选题推荐✅

Java项目精品实战案例《100套》

Java微信小程序项目实战《100套》

感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及文档编写等相关问题都可以给我留言咨询,希望帮助更多的人

文章目录

1 简介

鉴于电影评论的重要性,电影评论的情感数据分析也成为了当下发展非常迅速的一项内容。本次就是利用了flask框架以及深度学习中的word2vac向量模型来进行一款深度学习的电影评论软件开发,通过该软件的开发来更加有效的对众多的影评文本进行情感分析来判断出一部电影评论好与评论不好的比例等内容,从而为电影的评论提供一个综合的汇总评判分析。

python基于深度学习的电影评论情感分析系统

关 键 词深度学习;电影评论;情感分析;flask

文章首发地址:https://it1314.top/article/1256/

2 深度学习的算法研究

卷积神经网络介绍

卷积神经是深度学习中最具代表性的一种算法,这种算法可以通过计算卷积来实现神经网络的发展结构的搭建,该结构所创造的神经网络具有较强的学习能力,可以通过信息输入来实现类结构的转换。卷积神经网络与生理学有着一定的相关性,通过视觉、感知来进行卷积神经网络的内容搭建,通过有监督和无监督的方式来进行学习,均可以实现很好的学习效果。且在隐藏层中能够通过参数的共享来以较小范围的计算实现网络的特征达成。卷积神经网络最初是在图像领域中使用,而在深度学习的框架不断的优化和当下的计算机硬件水平的不断提升下,该技术在众多的领域中都有着很好的应用。

Word2vec算法

Word2vec算法是谷歌公司开发的一种网络概念语言模型,是能够将文本转化为词向量的神经网络模型。这种模式是通过既定的语料库,在该语料库的基础上进行模型优化训练,通过将文本转化为向量模型,来实现有效的算法推演实现。该算法中通常会采用到cbow和skip-gram模型,通过这两种模型来进行相应的向量训练。Cbow模型能够通过结合上下文来进行中间词的概率预测从而实现很好的预测过程的实现。通过skip-gram来进行中间词概率的预测,两样模型通过与神经网络相结合的方式来反复不断的进行初始变量和参数值的更新,指导实现目标的函数值达到最大值后,来进行词量的向量取得。

语句情感值分析

语句是由不同的词语组成的,而在语句的情感值的计算上也是通过词典的计算方式来进行处理的。在针对本次的电影评论的文本分析上,会通过将语句进行分词处理,将语句中的英文、停用词等来进行有效的提出,通过将关键词与情感词典中的信息进行对照,找到句子中的情感词所表达的含义,与情绪态度进行对应,来实现有效的情感值分析,情感词通常会有赞扬、悲哀、贬斥等等,是重要的情绪表达的核心词句。在情感值的计算上,该分析会通过从第一个情感词开始一连串的针对每一个情感词以及修饰词进行情感值的计算,通过不断地循环直到找到所有的情感词来进行不断的更新与总结,从而完成情感值的评价工作。

算法思想

在短文本的评价中,相应的词汇数量较少,且特征明显,情感表达直接,通过情感词典的方式就能够进行极为精准的短文本情感值的判断,但是在情感字典中对于句子的情感指向性相对较弱,有可能会造成判断的错误,特别是在汉语言中,语句中的词语变化多,例如"IOS系统比Android系统好"和"Android系统比IOS系统好"在通过情感值的判断,二者的情感值是一致的,但是实际上两者想要表达的情感是完全相反的。所以通过基于word2vec来进行评论文本词量的分析中,如何对于情感特征的分析是非常重要的一项内容,应当通过加权算法来进行句向量的获取其算法流程如下所示:

图2-1 算法流程图

3 基于深度学习的电影评论需求分析

需求设计

本次通过利用深度学习来实现计算机对于海量的电影评论能够进行有效的自主分析,可以通过对语句的情感值进行判断来实现对语句所表达的情感思想进行确认和表达。此次在需求的设计上首先是需要搭建一款B/S结构的网站系统,使用的开发工具确定为Python语言flask框架。在深度学习的技术选择上,本次使用了word2vec模型来进行情感值的判断和训练的过程搭建与实现。通过此次的设计,能够实现在网站内通过爬取电影评论以及输入评论内容,来让系统进行自动的情感判断,从而将该评论所代表的正面以及负面的情绪进行确认,对于电影评价的好坏可以实现机器自动化的判断实现。

其他功能需求分析

对于电影的情感分析研究,不仅仅是简单的文本分析,而是需要通过语言文本来找寻其背后的发展趋势,本次将以某平台或者某既定的文本库来进行电影的评论采样,通过加入情感分析的方式来是实现对电影的评价和后续的追踪。本次的设计是要通过简单文本确认来找到与电影相关的重要信息,推动电影行业的发展。通过长短不一、情感趋势不同的文本来进行不同的情感倾向的研究,从而能够找到不同的观众对于同一部电影的情感倾向。在情感分析过程中,数据实际是非常重要的一项内容,是对于情感分析的结果有着直接影响的变量。因此在深度的神经网络数据集中,需要样本数据完整、规则性强。通过选取有效的数据样本来进行模型训练才能够得到有效的判断结果。因此要对数据集进行一些内容的简单处理。

4 系统设计

系统的功能模块设计

本次通过以word2vec来进行实现深度学习的模型搭建,通过以pycharm平台来实现数据的整体编程,通过flask框架来完成B/S的网页设计,从而实现计算机在网络上通过电影的评论信息录入来进行评论内容的情感判断。

数据库的设计

本次的数据库设计中,数据库的表格设计如下所示:

表4-1管理员数据库表

表4-2电影数据库表

5 系统的实现

系统的登录模块设计

本次的基于深度学习的电影评论情感分析系统是需要完成用户的登录才能够进入到系统中进行评论分析的,此次设计的分析系统的登录页面如下所示:

图5-1 系统的登录模块

系统的首页实现

当完成登录后,系统的首页以搜索界面为主要展示的内容,在首页中能够在文本框内进行想要获取的电影详情的搜索来快速的查询到与电影相关的信息内容。如下所示:

图5-2 系统首页的实现

电影简介的实现

当输入相关信息后,会有电影的名称、图片、主演、上映时间以及简介等多种内容在该页面进行呈现,并且能够通过点击"立即播放"实现在线的电影播放功能,如下图所示:

图5-3 电影简介的实现

电影评价分析的实现

在电影简介界面中点击"下一页"能够看到当前用户对于该电影的评价信息,有积极、消极、一般等内容,能够通过环形图来进行相应评分占比的展示。当在点击下一页时,会有具体的热门点评的显示,通过"积极"、"消极"、"一般"三个选项来进行评价的划分,有用户对于电影的评分、点赞数、留言时间等内容的显示。如下图所示:

图5-4 电影评价分析的实现

电影评价情感类别的实现

在电影评价的菜单中,管理员能够看到现有的用户对于电影的全部评价信息,系统会根据输入的评价内容来进行情感类别的判断,并且存储如数据库中,如下图所示:

图5-5 电影评价情感分析类别的实现

6 参考文献

[1]

张爱军,杨泽斌.自动化机器学习中的超参调优方法[J].中国科学:数学,2020,50(05):695-710.

[2]

李磊,陈向东,丁星,李皋,陈一健.基于图像处理与机器学习的岩土湿度检测系统[J].传感器与

微系统,2020,39(06):83-85+88.

[3]

邓玉睿,周勇,从伟,程旭东,祁智慧,唐芳.基于朴素贝叶斯算法的模型研究[J].中国粮油学

报,2019,34(S2):35-38.

[4] 邹 强 , 田 颖 , 李 红 松 , 秦顺顺 . 基 于 支 持 向 量 机 的 方 法

[J]. 北 京 交 通 大 学 学 报,2020,44(01):84-90.

李彦冬,郝宗波,雷航.卷积神经网络研究综述[J].计算机应用,2016,36(09):2508-2515+2565.

7 源码获取:

大家点赞、收藏、关注、评论 啦 、查看 👇🏻获取联系方式👇🏻

👇🏻 精彩专栏推荐订阅👇🏻 不然下次找不到哟

2022-2024年最全的计算机软件毕业设计选题大全:1000个热门选题推荐✅

Java项目精品实战案例《200套》

Java微信小程序项目实战《100套》

感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及文档编写等相关问题都可以给我留言咨询,希望帮助更多的人

相关推荐
青莳吖5 分钟前
Java通过Map实现与SQL中的group by相同的逻辑
java·开发语言·sql
红色的山茶花5 分钟前
YOLOv9-0.1部分代码阅读笔记-loss_tal.py
笔记·深度学习·yolo
Buleall12 分钟前
期末考学C
java·开发语言
重生之绝世牛码14 分钟前
Java设计模式 —— 【结构型模式】外观模式详解
java·大数据·开发语言·设计模式·设计原则·外观模式
小蜗牛慢慢爬行20 分钟前
有关异步场景的 10 大 Spring Boot 面试问题
java·开发语言·网络·spring boot·后端·spring·面试
Algorithm157630 分钟前
云原生相关的 Go 语言工程师技术路线(含博客网址导航)
开发语言·云原生·golang
岑梓铭30 分钟前
(CentOs系统虚拟机)Standalone模式下安装部署“基于Python编写”的Spark框架
linux·python·spark·centos
shinelord明39 分钟前
【再谈设计模式】享元模式~对象共享的优化妙手
开发语言·数据结构·算法·设计模式·软件工程
游客52044 分钟前
opencv中的各种滤波器简介
图像处理·人工智能·python·opencv·计算机视觉