NLP实战|如何用280多万条豆瓣影评预测电影评分?

PyG构建电影评分MovieLens dataset图数据集 本文将使用 `GroupLens` 研究小组收集的 `MovieLens`数据集。这个数据集描述了来自MovieLens的5星级评级和标签活动,该数据集包含来自 `600` 多名用户的超过 `9k` 部电影的大约 `10万次` 评级。 阅读详情

 

 

为了预测电影评分,我们收集了豆瓣电影网站上2.8万名用户对5万多部电影的280万条评论...

 

真实目的,其实是为了让大家能够通过这次的教程,更加了解自然语言处理。

 

所以,使用电影评论来预测电影评分,到底需要分几步?

 

 

 项目简介 

本项目只使用电影评论来预测电影评分。

由于豆瓣电影网站的评分为1-5的整数,因此将该问题转化为5个输出类别的分类问题。

 

 数据集 

此数据集包含豆瓣电影网站上2.8万名用户对5万多部电影的280万条评论。数据共有6列,包括用户名,电影名,时间戳,电影评论,电影评分和评论被点赞数。

具体可在https://www.flyai.com 项目中查找

 

 项目过程 

数据处理

搭建神经网络

定义损失函数,选择优化器

训练神经网络并保存最优的网络

 

 数据处理 

为了将电影评论输入到神经网络中,需要将原始的评论句子进行分词,然后将词转化为词向量。本项目使用了清华大学开发的thulac分词器。要使用此分词器,首先使用pip安装thulac库:

在python中创建分词器实例,设置分词器模式为仅分词,对每条评论 (comment) 进行分词:

 

将分好的词与预处理的词嵌入模型 (vocab) 比对,并获得词向量,词向量维度为200。

 

为了使每个batch的输入大小一致,需要对句子长度进行统一,设置句子最大长度为20,若句子长度超过20个词则保留前20个词,否则将空余的词补零。

 

输入的评分 (rating) 为1-5的整型数字,而pytorch进行分类时,类别索引必须从0开始,因此对输入评分做简单处理:

 

 搭建神经网络 

本项目使用了LSTM + 全连接层 来解决句子的分类问题。在PyTorch中搭建LSTM网络非常简单,只需要定义输入词向量维度,LSTM隐单元个数,LSTM层数即可。在LSTM层后,使用两个全连接层将LSTM输出的所有整个句子映射到5个类别上:

 

 定义损失函数和优化 

由于此项目为分类问题,使用CrossEntropy交叉熵作为损失函数,并选用Adam优化器。设置学习速率为0.001。

 

 训练神经网络并保存最优的网络 

为了让代码能够同时在cpu和gpu上运行,首先判断gpu是否可用,并由此设置pytorch计算所使用的硬件:

 

完整的训练过程如下所示,当训练集上准确率高于当前最高的准确率时,保存当前网络模型:

 

其中,eval()的作用为计算训练集上的准确率:

 

 

 结语 

本项目基于PyTorch框架,完成了根据汉语文字评论预测评分的任务。其中使用的网络简单,高效,适合NLP初学者进行学习。

 

获取更多相关项目代码 请访问:https://www.flyai.com

 

— END —

完整代码请访问:https://www.flyai.com/d/MovieRatings

 

 

 

数据集-电影评分数据-movieles-可用于做毕设实验.zip 资源名称:js数据集-电影评分数据-movieles-可用于做毕设实验.zip 内容概要:是一款数据集,电影评分数据,已经做好了分类和数据说明。特别简单易用。 关键信息:可以用于数据分析,大数据,推荐系统的学习和实验,数据成熟适合学生党,考研党使用。 适用人群:学生,前端工程师,项目经理,软件公司,软件教师,计算机学生 使用场景:学习,研究生学习,算法工程师,学生,毕业设计,课堂作业,个人练习,css练习,二次开发 立即下载

相关推荐

豆瓣电影相关数据集!!!

豆瓣电影相关数据集!!!本数据集采集于豆瓣电影,电影与演员数据收集于2019年8月上旬,影评数据(用户、评分、评论)收集于2019年9月初,共945万数据,其中包含14万部电影,7万演员,63万用户,416万条电影评分,442万条影评,是当前国内互联网公开的电影数据集中最全的一份 数据集共有5个文件: movies.csv、person.csv、users.csv、comments.csv、ratings.csv

pandas学习之电影评分(利用python进行统计分析)的学习笔记

之前看《利用python进行数据分析》的书,觉得里面电影评分的例子非常好。只是看别人的代码,觉得棒,实际动手自己做,还是眼高手低。印象最深的是电影《阿呆和阿瓜》男性评分很高,女性评分反而比较低。我看过这个电影,所以觉得很有趣,今天试着做了出来。代码很烂,后期再继续学习,直接贴上了。反正自己做的,不要求多好,凑合着自己看吧。尽管如此,还是实现了分析目的,就是比较男性和女性对不同电影的评分差异。解决了这个,后面就是数据合并,透视表,基本的描述统计了。其中特别要说名的是,电影的名字数据表,必须指定“

weixin_40340586的博客 1612

HTML5期末大作业:水果超市网站设计——水果超市(6页) HTML+CSS+JavaScript 学生DW网页设计作业成品 web课程设计网页规划与设计 网购商城设置网页

HTML5期末大作业:水果超市网站设计——水果超市(6页) HTML+CSS+JavaScript 学生DW网页设计作业成品 web课程设计网页规划与设计 网购商城设置网页 常见网页设计作业题材有 个人、 美食、 公司、 学校、 旅游、 电商、 宠物、 电器、 茶叶、 家居、 酒店、 舞蹈、 动漫、 明星、 服装、 体育、 化妆品、 物流、 环保、 书籍、 婚纱、 军事、 游戏、 节日、 戒烟、 电影、 摄影、 文化、 家乡、 鲜花、 礼品、 汽车、 其他 等网页设计题目, A+水平作业, 可满足大

1714

Python实现根据评论评分信息预测 (协同过滤,LFM,词向量)

  一.数据集 train.dat共393366项,第一维是用户的代号,第二维是商品代号,第三项是用户对该商品的评分,第四项是评论数,第五项是评论内容。   test.dat第一维是用户代号,第二维是商品代号。   二.简单思路及实现过程 这里简单先贴出代码实现,后期再慢慢补上具体过程说明~ 1.数据预处理 去除部分无关常用词,这里调用nltk包,将评论词词词根化等,进行...

m0_37783096的博客 5099

Windows服务器SSL漏洞修复实战:如何一键禁用TLS 1.0/1.1避免SWEET32攻击

本文提供了Windows服务器修复SWEET32漏洞的实战指南。通过组策略编辑器,详细讲解如何一键禁用不安全的TLS 1.0/1.1协议,并优化密码套件顺序,以消除由3DES等弱加密算法带来的安全风险。文章还涵盖了应对SQL Server等应用兼容性挑战的解决方案,以及企业级批量部署的脚本化方法,帮助管理员系统性地提升服务器TLS/SSL安全配置。

weixin_29310631的博客 246

YF-S401水流量传感器在STM32上的精准计量实现

本文详细介绍了YF-S401水流量传感器与STM32微控制器的集成应用,实现精准水流计量。通过外部中断和外部时钟两种脉冲计数方案,结合硬件配置、软件滤波和校准技巧,确保高精度流量测量。适用于智能家居和工业自动化中的水控系统,提升系统稳定性和测量准确性。

rainy的博客 897

python数据分析案例2:电影评分数据集的分析

数据集的获取: 1、grouplens官方网址 或者 2、 链接: https://pan.baidu.com/s/1wfU20GH2gLd1Ok262v_X2Q 提取码: us6i 使用上述压缩包中的以下三个文件 有关上述三个文件的介绍: u.data -- The full u data set, 100000 ratings by 943 users on 1682 items. Each user has rated at least 20 movies

JavaNewbie__ 1万+

智能车图像处理去畸变+逆透视教程

图像处理,去畸变与逆透视整合

wu58430的博客 1万+

开放的数据集整理

推荐系统常用的: 1)MovieLens MovieLens数据集中,用户对自己看过的电影进行评分,分值为1~5。MovieLens包括两个不同大小的库,适用于不同规模的算法.小规模的库是943个独立用户对1682部电影作的10000次评分的数据;大规模的库是6040个独立用户对3900部电影作的大约100万次评分。 2)EachMovie HP/Compaq的DEC研究中心曾经在网上架设...

weixin_30955617的博客 619

抖音a_bogus参数逆向避坑指南:从环境检测到XHR请求的全流程解析

本文详细解析了抖音a_bogus参数在v1.0.1.19版本下的逆向工程全流程,重点介绍了如何通过PyV8Env框架进行有效的补环境操作,以绕过严格的环境检测。内容涵盖从环境初始化、关键事件触发到模拟XHR请求获取签名的完整步骤,并提供了可运行的Python代码示例和常见检测点的避坑指南,帮助开发者稳定生成有效的a_bogus参数。

tech5的博客 601

把审批体验做成一体化:SAP Business Workflow 里的 Secondary Method、Before Method 与 After Method

摘要:SAP Business Workflow 中,Task 的 Secondary、Before 和 After 三类方法对提升审批体验和可追溯性至关重要。Secondary Method 可自动展示辅助信息(如审批时弹出排班报表),但需注意其独立会话特性;Before Method 适合预处理和审计留痕;After Method 确保收尾动作可靠执行。三类方法按特定顺序调用,且错误不影响主流程。合理使用这些方法能减少事务码切换,增强审计能力,优化用户体验。(149字)

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 190

python电影推荐系统_电影推荐系统---协同过滤算法(SVD,NMF)

SVD1 推荐系统概述1.1 项目安排1.2 三大协同过滤1.3 项目开发工具2 Movielens数据集简介MovieLens是推荐系统常用的数据集;MovieLens数据集中,用户对自己看过的电影进行评分,分值为1~5;MovieLens包括两个不同大小的库,适用于不同规模的算法;·小规模的库事943个独立用户对1682部电影做的10000次评分的数据;·大规模的库事6040个独立用户对390...

weixin_39632291的博客 2771

【Unity】【WebRTC】如何用Unity而不是浏览器接收远程画面

之前几篇我们讨论了如何设置信令服务器,如何发送画面给远端以及如何用浏览器查看同步画面,今天来讨论如何实现Unity内部接收画面。看本篇之前请先看过之前将web服务器设置和基本远程画面功能的几篇博文。在Unity编辑器中打开一个示例项目,点击BroadCast按钮。4. 再点击Receiver按钮,Start。Build一个示例项目,并运行这个项目。启动Web.app。

每日出拳老爷子的博客 1721

ML之CF:基于MovieLens电影评分数据集利用基于用户协同过滤算法(基于cosine)实现对用户进行Top5电影推荐案例—加载数据集→划分数据集→数据预处理(将原始ratings评分数据转化为用

​ ML之CF:基于MovieLens电影评分数据集利用基于用户协同过滤算法(余弦相似度)实现对用户进行Top5电影推荐案例 目录 基于MovieLens电影评分数据集利用基于用户协同过滤算法(余弦相似度)实现对用户进行Top5电影推荐案例 # 1、定义数据集 # 3、模型训练与推理 相关文章 ML之CF:基于MovieLens电影评分数据集利用基于用户协同过滤算法(余弦相似度)实现对用户进行Top5电影推荐案例 ML之CF:基于MovieLens电影评分数据集利用基于用户协同过滤算

头部AI社区如有邀博主AI主题演讲请私信—心比天高,仗剑走天涯,保持热爱,奔赴向梦想!低调,专注,谦虚,自律,反思,成长,还算比较正能量的博主,公益免费传播…内心特别想在AI界做出一些可以推进历史进程影响力的技术(兴趣使然,有点小情怀,也有点使命感呀 2205

LeRobot 入门教程(十一)π0(Pi0)π0.5(Pi0.5)训练、推理、部署

本文介绍了Physical Intelligence公司开发的π₀和π₀.₅系列通用机器人控制视觉-语言-动作模型。π₀作为首款基础模型,融合流匹配、跨实体训练等技术,支持50Hz高频控制。π₀.₅是其升级版,通过异构数据协同训练解决开放世界泛化问题,在Libero基准测试中表现优异。文章详细说明了两个模型的安装要求、使用方法、训练策略及关键参数配置,包括混合精度训练、梯度检查点等优化技术,为机器人在多样化场景中的语义理解和动作控制提供了完整解决方案。

2506_90492529的博客 5039

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

Spark Hive实现基于协同过滤的电影推荐(MovieLens数据集)

这篇文章记录一下我之前做过的通过Spark与Hive实现的基于协调过滤的电影推荐。这篇文章只能提供算法、思路和过程记录,并没有完整的代码,仅尽量全面地记录过程细节方便参考。 数据集是从下面这个地址下载的,数据集主要内容是关于用户对电影的评分、评价等。免费数据集下载(很全面)_浅笑古今的博客-优快云博客_数据集下载网站图1.1 数据获取我选取的几个数据集表格如下:图1.2 数据表格图1.3 rating表图1.4 movies表图1.5 tags表图1.6 genome-tags表图1.7 genome-

TranSad的博客 4736

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

movielens数据集导入mysql_开放的数据集整理

推荐系统常用的:1)MovieLensMovieLens数据集中,用户对自己看过的电影进行评分,分值为1~5。MovieLens包括两个不同大小的库,适用于不同规模的算法.小规模的库是943个独立用户对1682部电影作的10000次评分的数据;大规模的库是6040个独立用户对3900部电影作的大约100万次评分。2)EachMovieHP/Compaq的DEC研究中心曾经在网上架设EachMovi...

weixin_32512933的博客 445

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

推荐系统实践--MovieLens数据集离线实验

1、数据集简介 MovieLens数据集包含多个用户对多部电影的评级数据,也包括电影元数据信息和用户属性信息。 下载地址为:https://grouplens.org/datasets/movielens/,有好几种版本,对应不同数据量,本文所用的数据为1M的数据。 2、数据介绍 1m的数据解压后,可以看到四个主要的csv文件,分别是links.csv,movies.csv,ratings...

qq_32539403的博客 726

ML之KG:基于MovieLens电影评分数据集利用基于知识图谱的推荐算法(networkx+基于路径相似度的方法)实现对用户进行Top电影推荐案例

​ ML之KG:基于MovieLens电影评分数据集利用基于知识图谱的推荐算法(networkx+基于路径相似度的方法)实现对用户进行Top电影推荐案例 目录 基于MovieLens电影评分数据集利用基于知识图谱的推荐算法(networkx+基于路径相似度的方法)实现对用户进行Top电影推荐案例 # 1、定义数据集 # 2、构建知识图谱 # 3、基于知识图谱实现推理 相关文章 ML之KG:基于MovieLens电影评分数据集利用基于知识图谱的推荐算法(networkx+基于路

头部AI社区如有邀博主AI主题演讲请私信—心比天高,仗剑走天涯,保持热爱,奔赴向梦想!低调,专注,谦虚,自律,反思,成长,还算比较正能量的博主,公益免费传播…内心特别想在AI界做出一些可以推进历史进程影响力的技术(兴趣使然,有点小情怀,也有点使命感呀 2668

movielens 1m 的mysql_数据分析实例-MovieLens 1M 数据集

MovieLens 1M数据集含有来自6000名用户对4000部电影的100万条评分数据。分为三个表:评分,用户信息,电影信息。这些数据都是dat文件格式。​读取3个数据集:#coding=gbk# MovieLens 1M数据集含有来自6000名用户对4000部电影的100万条评分数据。# 分为三个表:评分,用户信息,电影信息。这些数据都是dat文件格式# ,可以通过pandas.read_ta...

weixin_35754676的博客 485

Movielens/IMDB电影数据分析(一)

该项目源自科赛网的训练项目。 背景 项目简介 此数据集包含来自MovieLens 电影推荐服务的5星评分和文本标记数据和来自IMDB1950-2012年IMDB TOP10000排行榜数据。 MovieLens数据集包含27278部电影的20000263份评分和465564次标签应用。 这些数据是由1995年1月9日至2015年3月31日期间的138493个用户创建。 练习内容 MDB...

石山下 3888

对数据集“Netflix电影电视剧及用户观影数据“的分析处理和可视化

对数据集“Netflix电影电视剧及用户观影数据“的分析处理和可视化 一、寻找数据集 from kaggle:《Netflix Movies and TV Shows》 -------- Shivam Bansal 二、数据集分析

qq_45672511的博客 5834

机器学习(6) MovieLens数据集

MovieLens数据集是一个关于电影评分的数据集,里面包含了从IMDB, The Movie DataBase上面得到的用户对电影的评分信息,详细请看下面的介绍。介绍:links.csv: 文件里面的内容是帮助你如何通过网站id在对应网站上找到对应的电影链接的。数据格式如下: movieId, imdbId, tmdbId movieId:表示这部电影在movielens上的id,

GZHermit的博客 2万+

NLP教程:教你如何自动生成对联

桃符早易朱红纸,杨柳轻摇翡翠群 ——FlyAI Couplets 体验对对联Demo: https://www.flyai.com/couplets 循环神经网络最重要的特点就是可以将序列作为输入和输出,而对联的上联和下联都是典型的序列文字,那么,能否使用神经网络进行对对联呢?答案是肯定的。本项目使用网络上收集的对联数据集[地址](https://github.com/wb14123/...

iFlyAI的博客 6874

教程 | 图像分类: Caltech 256 ​数据集

Caltech 256是什么? Caltech 256数据集是加利福尼亚理工学院收集整理的数据集,该数据集选自Google Image 数据集,并手工去除了不符合其类别的图片。在该数据集中,图片被分为256类,每个类别的图片超过80张。   为什么要用Densenet121模型? 本项目使用在PyTorch框架下搭建的神经网络来完成图片分类的任务。由于网络输出的类别数量很大,简单的网...

iFlyAI的博客 5317
上一篇: 教程 | 猫狗识别 - AI图片分类的样例
下一篇: 人工智能(AI)开发者线下实战训练营 - 立即免费报名
iFlyAI
博客等级 码龄9年 238粉丝 134原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值