# MovieLens-RecSys
基于Movielens-1M数据集实现的User Based Collaborative Filtering和Item Based Collaborative Filtering推荐算法
# 简介
项亮所著的《[推荐系统实践](https://book.douban.com/subject/10769749/)》一书是非常优秀的推荐系统入门书籍,但书中只描述了单步的计算如何实现,缺乏一个完整的示例来展示推荐系统从建立数据集到评估模型的整个过程,初学者学起来容易迷茫,因此我基于Movielens 1M数据集分别实现了User Based Collaborative Filtering(以下简称UserCF)和Item Based Collaborative Filtering(以下简称ItemCF)两个算法,包含“切分训练集与测试集-训练模型-推荐-评估”一整套流程,可以帮助初学者更快速地理解推荐系统中的协同过滤算法。
程序最终给出的是Precision、Recall、Coverage、Popularity四项衡量模型质量的指标,而具体的电影推荐结果并未保留,如果需要此部分数据可自行修改代码。
# 运行
1. 获取代码
根据自己使用的Python版本获取相应的分支
2. 下载数据集
ml-1m.zip,并解压到项目MovieLens-RecSys文件夹下
3. 运行代码
以UserCF为例,直接在终端运行以下命令即可:
```shell
# 部分Linux上会同时存在Python的2和3两个版本,3.x版对应的命令是python3
# Windows用户无论安装的是2或3,命令都是python
python usercf.py
#python3 usercf.py
```
Linux用户的话更推荐下面这个命令:
```shell
python usercf.py > run.log 2>&1 &
#python3 usercf.py > run.log 2>&1 &
```
该命令会让程序在后台运行,可以等待运行结束再查看日志,或者通过`tail -f run.log`即时查看日志。
# 注意事项
UserCF算法中,由于用户数量多,生成的相似性矩阵也大,会占用比较多的内存,不过一般电脑都没问题。
ItemCF算法中,每次推荐都需要找出一个用户的所有电影,再为每一部电影找出最相似的电影,运算量比UserCF大,因此推荐的过程比较慢。
没有合适的资源?快使用搜索试试~ 我知道了~
基于MovieLens-1M数据集实现的协同过滤算法demo
共5个文件
py:2个
zip:1个
md:1个
0 下载量 121 浏览量
2024-08-08
15:15:29
上传
评论
收藏 5.65MB ZIP 举报
温馨提示
运行代码 以UserCF为例,直接在终端运行以下命令即可: # 部分Linux上会同时存在Python的2和3两个版本,3.x版对应的命令是python3 # Windows用户无论安装的是2或3,命令都是python python usercf.py #python3 usercf.py Linux用户的话更推荐下面这个命令: python usercf.py > run.log 2>&1 & #python3 usercf.py > run.log 2>&1 & 该命令会让程序在后台运行,可以等待运行结束再查看日志,或者通过tail -f run.log即时查看日志。 适用人群:学习不同技术领域的小白或进阶学习者;可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。
资源推荐
资源详情
资源评论
收起资源包目录
MovieLens-RecSys-master.zip (5个子文件)
MovieLens-RecSys-master
usercf.py 7KB
itemcf.py 6KB
ml-1m.zip 5.64MB
.gitignore 774B
README.md 2KB
共 5 条
- 1
资源评论
小英子架构
- 粉丝: 1000
- 资源: 3936
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功