电影推荐算法

模型训练

下载数据集,解压到项目目录下的./ml-1m文件夹下。数据集分用户数据users.dat、电影数据movies.dat和评分数据ratings.dat。
**

数据集分析

**
user.dat:分别有用户ID、性别、年龄、职业ID和邮编等字段。
数据集网站地址为http://files.grouplens.org/datasets/movielens/ml-1m-README.txt对数据的描述:
使用UserID、Gender、Age、Occupation、Zip-code分别表示用户ID、性别、年龄、职业和邮政编码,M表示男性,F表示女性。年龄范围表示:在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
UserID、Gender、Age和Occupation都是类别字段,其中邮编字段不使用。rating.dat数据分别有用户ID、电影ID、评分和时间戳等字段。数据集网站的描述:UserID范围为16040;MovieID范围为13952;Rating表示评分,最高5星;Timestamp为时间戳,每个用户至少20个评分。查看ratings.dat的前5个数据,结果如图4-7所示,相关代码如下:
在这里插入图片描述
评分字段Rating是监督学习的目标,时间戳字段不使用。movies.dat数据集分别有电影ID、电影名和电影风格等字段。数据集网站的描述:
使用MovieID、Title和Genres,其中MovieID和Genres是类别字段,Title是文本。Title与IMDB提供的标题相同(包括发行年份),Genres是管道分隔,并且选自以下流派:

数据预处理
通过研究数据集中的字段类型,发现有一些是类别字段,将其转成独热编码,但是UserID、MovieID的字段会变稀疏,输入数据的维度急剧膨胀,所以在预处理数据时将这些字段转成数字。操作如下:
UserID、Occupation和MovieID不变。
Gender字段:需要将F和M转换成0和1。
Age字段:转成7个连续数字0~6。
Genres字段:是分类字段,要转成数字。将Genres中的类别转成字符串到数字的字典,由于部分电影是多个Genres的组合,将每个电影的Genres字段转成数字列表。
Title字段:处理方式与Genres一样,首先,创建文本到数字的字典;其次,将Title中的描述转成数字列表,删除Title中的年份。
统一Genres和Title字段长度,这样在神经网络中方便处理。空白部分用PAD对应的数字填充。实现数据预处理相关代码如下:在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/25229.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

chatgpt赋能python:用Python打造智能电影推荐系统

用Python打造智能电影推荐系统 在数字娱乐时代,我们有着大量的影片选择,然而如何快速地找到符合自己口味的电影成为了我们面对海量电影时的一大难题。幸运的是,Python的出现为我们带来了解决问题的方法。 什么是智能电影推荐系统&#xff1…

基于用户喜好以及电影类型的电影推荐算法

本文参考文献:https://www.researchgate.net/publication/257403928_A_movie_recommendation_algorithm_based_on_genre_correlations 代码:https://github.com/827983519/recommend_algorithm/blob/master/Genre.py 1.电影推荐 电影推荐是推荐算法应用…

chatgpt赋能python:用Python打造更智能的电影推荐系统,让你轻松找到心仪的影片

用Python打造更智能的电影推荐系统,让你轻松找到心仪的影片 电影是人们在生活中不可或缺的娱乐方式之一。而对于喜欢看电影的朋友来说,找到一部能够满足自己口味的影片,是一件非常重要的事情。为了让大家更加方便地找到合适自己的电影&#…

电影推荐系统

摘 要 随着社会的发展,人们生活水平的提高,欣赏电影逐渐成为人们闲暇时的主要娱乐方式之一。电影院也越来越多,除了一些大型连锁式电影院外,还有很多社区影院,小剧场等也日益增多。这类电影院中,传统的电影…

chatgpt赋能python:Python写一个自动登录脚本

Python写一个自动登录脚本 在现代互联网时代,大部分网站在使用时需要登录,为了提高人工操作的效率,很多人开始使用自动化工具来完成自动登录。Python语言作为一款流行的脚本编程语言,在自动化方面也有很好的表现,本文…

解决Docker进不去mysql的问题

使用场景: 在Linux系统中操作: Docker里安装MySQL库,进入并进行相关操作。 问题情况 先启动mysql容器: docker run --name some-mysql -v /my/own/datadir:/var/lib/mysql -e MYSQL_ROOT_PASSWORDmy-secret-pw -d mysql:latest这里直接拒绝…

使用Flask Web创建一个调用ChatGPT API的网页--简单示例(Windows环境下)

前提:你应该要有一个能正常使用chatGPT的openAI账号;即你已经成功注册了chatGPT,并能正常使用。 文章目录 一、主要组成部分二、示例代码2.1 工程结构:2.2 说明2.3 依赖环境2.4 app.py代码2.5 index.html代码 三、搭建环境步骤 一…

JAVA对接百度API提交普通收录/SEO

JAVA对接百度API提交普通收录/SEO 说明: 为了增加内容的曝光量,除了主动让百度爬虫爬取之外,还有普通收录的API提交,程序主动向百度搜索推送资源,缩短爬虫发现网站链接的时间。 官网地址:http://data.zz.…

Java 快递物流查询 api对接

Java 快递物流查询 api对接 2018年08月24日 09:44:41 我跟吴彦祖四六开 阅读数:73 标签: java 物流查询 更多 个人分类: Java 这里只是记录一下。第三方都会提供很详细的demo和技术文档,或者安排专业人员进行联调。 第三方物流…

eBay API文档

1.创建eBay接入API教程网址 https://developer.ebay.com/api-docs/static/creating-edp-account.html 前言:API参考:资源 该分析API检索呼叫限制和数据被用于RESTful API中及其关联的资源设置配额。对getRateLimits和getUserRateLimits进行的调用的响应…

Java对接外部API这个问题

java对接外部api 需求提出解决思路编码测试 总结 差不多有一个多月没有更新blog,也是出于工作原因以及最近搬家在看合适的窝点导致断更。今天有一个小学妹来问我可以将我其他项目的api接入到我现在的项目中吗?我回答“可以”!我今天就写一篇关…

Midjourney API 接口对接历程

Midjourney是一个基于Discord环境的画图工具,它提供API接口用于扩展功能。对于程序开发者来说,Midjourney只能在Discord环境下使用,这限制了它的使用范围。本文将介绍使用Midjourney的API接口进行开发发过程中遇到的一些问题。 内测地址&…

JAVA对接亚马逊SPAPI

亚马逊官方文档Amazon-Services-APIAmazon API Services for Selling Partners and Shippers.https://developer-docs.amazon.com/ 1注册AWS账号,填写个人信息,填写银行信息,手机验证(AWS网址) 2在AWS里面创建IAM用户…

深信服防火墙API对接

深信服防火墙千呼万唤的API终于在8.0.35版本实现了。具体的API文档可以登录防火墙的后台WEB界面上的右上角点开即可查看: 根本api文档,首先先新建一个api账号,“用户可以登录WebUI通过"系统->管理员账号"栏将默认的账户勾上WEBA…

使用Swagger作API接口对接

1、当前项目中存在的问题 在前后端分离的项目中,如手机端与接口端对接、WEB项目调用API,进行接口对接的方式一般是先创建WORD文档,然后把各个接口的链接、参数、访问方式、说明等信息粘贴进去。在制作文档的过程中,如果稍有不注意…

API对接实战

目录 一 背景 二 了解B公司接口的基础约定 三 基础域名 四 请求及相应格式说明 五 确定要对接哪些API 六 根据API文档,编写一些基础工具类。 七 根据API文档,编写必要的DTO 八 针对每个API方法,进行对接 九 对接代码结构 十 一些对…

企业微信api对接

用的是wxJava,但是wxJava文档真滴不清楚,都是jar全局搜索url/看方法试的。 坑0: 通讯录不仅要开通api,还得开通是“可编辑”不然是“只读”(然后还可以设置人员自己编辑后推动事件服务器)挺不错的 坑一&a…

WebAPI接口对接

WebAPI接口对接: 提示:此片文章是总结接口对接经验其中包括模型的建立以及统一的调用 学习内容: 数据对象模型的建立如何规范定义模型统一的请求方法系统中model的命名 数据对象的建立 接口的数据传输对象包括Request对象和Response对象 …

百度翻译API对接

百度翻译开发平台:http://api.fanyi.baidu.com/api/trans/product/index 打开如上链接: 下载SDK 导入SDK 新建一个工程(zyq-translate),并新建包(com.zyq.translate) 解压SDK,得…

对接海康ISC平台API

开发文档:海康开放平台。(视频预览、抓图等能力)