简单的推荐系统教程

目标:给定一个电影表movie,一个分数表rating。通过这两个表格,给出电影表movie里任意一个电影相关的top-n。

思路:首先建立用户与项目矩阵,其次计算用户之间的相似度分数,最后相似度排名,取top-n作为推荐结果。


1. 导入库和数据

import pandas as pd

导入movie数据(数据获取方式见本博客底部)

movie=pd.read_csv(r'C:\Users\xbh\Desktop\movie.csv')
movie

由于rating数据集已经把相似度算出来了,所以可以不用看genres这一列。取movieID和title这两列。 

movie=movie.loc[:,["movieId","title"]]   #loc通过行索引 "Index" 中的具体值来取行数据  
movie.head(10)

导入rating数据(数据获取方式见本博客底部) 

rating=pd.read_csv(r'C:\Users\xbh\Desktop\rating.csv')
rating=rating.loc[:,["userId","movieId","rating"]]
rating.head(10)


2.建立用户-项目矩阵 

将movie和rating两个数据集合并,建立用户-项目矩阵

data=pd.merge(movie,rating)
data.head(10)

 为了加快运行速度,只采取前1000000行数据进行实验

data=data.iloc[:1000000,:]
data.head(10)


3.建立透明表以进行排序 

将userId这一列作为索引建立透明表

pivot_table=data.pivot_table(index=["userId"],columns=["title"],values="rating")
pivot_table.head(10)

 以Bad Boys (1995)这部电影为对象,求出这部电影的相似度矩阵,并进行相似度排序。

这里调用corrwith的函数。

movie_watched=pivot_table["Bad Boys (1995)"]
similarity_with_other_movies=pivot_table.corrwith(movie_watched)


4.得出推荐结果

 取相似度排序后的top-10作为Bad Boys (1995)这部电影最后的推荐结果。

similarity_with_other_movies.sort_values(ascending=False).head(10)


思考

1.怎么通过movie的genres属性得出评分?

2.怎么自己编写计算相似度的算法?

有思路的大佬们留个言。


数据获取方式:扫描下方二维码关注公众号“BoH工作室”,回复 data1 获取数据。

对推荐系统和图神经网络感兴趣的网友可以关注我的微信公众号“BoH工作室”,以后会陆续分享一些推荐系统和图神经网络的学习心得,欢迎大家关注并一起探讨。 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
安装Windows系统的教程可以参考以下步骤: 1. 准备一个16GB的U盘,确保它是空的。 2. 下载Windows 10的光盘映像(ISO文件)。 3. 打开下载的工具,并接受许可条款。选择为另一台电脑创建安装介质。 4. 选择U盘作为安装介质,并插入准备好的U盘。 5. 下载工具完成后,打开它并按照指示操作,将Windows 10安装文件写入U盘。 6. 在要安装Windows系统的计算机上,将U盘插入USB接口。 7. 启动计算机,并按照计算机的启动菜单进入BIOS设置。将启动顺序设置为从U盘启动。 8. 保存设置并退出BIOS,计算机将从U盘启动。 9. 按照屏幕上的指示,选择语言、时区和键盘布局。 10. 选择“安装”选项,并同意许可条款。 11. 根据提示选择安装类型和磁盘分区方式。 12. 等待系统安装完成,期间计算机可能会自动重新启动。 13. 安装完成后,按照屏幕上的指示设置用户名、密码和其他个人设置。 14. 完成所有设置后,系统将进入桌面,您可以开始使用新安装的Windows系统。 请注意,这只是一个简单教程概述,具体的步骤可能因不同的Windows版本而有所不同。建议您在进行系统安装前先参考Windows官方文档或其他可靠的教程以获得更详细的指导。引用<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [windows10纯净版系统安装/重装详细教程](https://blog.csdn.net/weixin_51098377/article/details/123656846)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [Windows系统重装教程完整版(系统备份、系统还原与重装)](https://blog.csdn.net/cxh_1231/article/details/119576451)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值