python实现基于用户的协同过滤推荐算法和基于项目的协同过滤推荐算法
基于用户的协同过滤推荐算法和基于项目的协同过滤推荐算法实现原理、公式、思路在前文中已有介绍,本次不再详细描述。本文主要是使用python语言实现推荐算法,python语言有很多工具模块便于实现推荐算法,本文没有大量使用已有的机器学习模块,更多的是使用python的基础语法实现,注释详细,代码阅读性好,便于学习。
python版本3.8,movielens数据集,943个用户,1682部电影,8万条评分数据。
1、算法原理:构建用户项目评分矩阵、计算用户之间的相似度、得到目标用户的最近邻居、预测评分、推荐
2、读取评分数据,构建用户-项目评分矩阵
3、用户-项目评分矩阵模块
这个模块是保存用户项目评分数据,同时分析数据,打印输出分析结果
4、计算用户之间的相似度模块
这个模块是计算用户之间的相似度,调用了余弦算法相似度模块
5、得到目标用户的最近邻居模块
这个模块是相似度排序,找到前N个相似度最大的用户,也可以设置相似度阀值来判定最近邻居
6、预测评分、推荐模块
7、测评指标MAE模块
8、运行结果
1、算法原理:构建用户项目评分矩阵、计算项目之间的相似度、预测评分、推荐
2、计算项目之间的相似度模块
3、预测评分、推荐模块
4、运行结果