我是靠谱客的博主 欣慰母鸡,最近开发中收集的这篇文章主要介绍基于项目的协同过滤,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

基于物品的协同过滤更受欢迎

历史原因:基于邻居的协同过滤是早期推荐系统的主流。

现实原因:比如亚马逊的电商系统,用户数是指数增长的,而物品(图书)数量是线性增长的。所以说item是相对稳定的。而用户数是不稳定的。

这样,我们就能很好的计算项目之间的相似度,不用频繁的计算用户之间的相似度。

所以用户的增长对我们项目的影响不是很大,因为我们的项目还是由用户进行表示的。我们新来的用户并不需要急着加入到项目之间的相似度计算中,因为由历史数据就可以知道项目之间的相似度,并且对新来的用户还是比较适用的。


用户数一般都是大于项目数了,所以很明显,我们应该以项目数来所谓相似度矩阵的计算。


用户偏好数据:

显示反馈:点击,评分,收藏等,但很多用户是不评分的,矩阵特别稀疏,所以计算是非常不准确的。这时候可以用到隐示反馈

隐示反馈:从用户评论当中去挖掘用户的偏好。


把这些信息都参与进评分权重中。

user1 user2 user3...

item1

item2

item3


在这个item矩阵中,是有很多缺失值的,那么怎么去对待这些缺失值。

比如我们对于item1来说,我们想知道user1给他的打分,我们发现user1给item1的相似item,item2评分是5,在实际应用中,要计算item1和所有用户偏好item的相似度,把这个相似度乘以用户对偏好item的评分,做一个累加,来作为对item1的评分,那么我们很有可能就把5填充到user1对item1的打分。

那么所有推荐的集合里面我们都用这种方式,我们就能得到对于user1的topN,再除去已有打分,那么就可以推荐了。



最后

以上就是欣慰母鸡为你收集整理的基于项目的协同过滤的全部内容,希望文章能够帮你解决基于项目的协同过滤所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(32)

评论列表共有 0 条评论

立即
投稿
返回
顶部