推荐系统实战之——基于物品的协同过滤推荐ItemCF

目录

1、基于物品协同过滤(Item-CF-Based)算法原理

2、Item-CF-Based算法流程

3、python实现

4、总结


Item-CF-Based算法原理:基于物品协同过滤推荐是通过不同对Item的评分来评测Item之间的相似性,从而基于Item的相似性做推荐。简单的说就是给用户推荐他之前喜欢物品的相似物品。


算法流程:

1、建立物品倒排表

Item倒排

2、根据倒排表,构建同现矩阵(物品共同评分用户数)

物品同现矩阵

结合Item相似度计算公式:W_{(i,j)} = \frac {|N_{(i)} \cap N_{(j)}|}{|N_{(i)}\cup N_{(j)} |}  ,可得物品相似度矩阵

物品相似度矩阵

3、计算预测评分,ItemCF通过公式:计算用户u对物品i的兴趣P_{(u,i)} =\sum_{j\in S(j,K)\cap N(u)}W_{(i,j)}\gamma_{(u,j)}  其中

N_{u}: 用户喜欢的物品集合;

S(j,K):和物品j最相似的K个物品的集合;

W_{ij} :物品i和j的相似度;

\gamma_{uj} :用户u对物品j的兴趣评分

从公式可知:与用户历史上喜欢的物品相似度高的物品,越会打分靠前排在推荐列表前面。


python实现:https://github.com/SolodanceMagicq/RecommendSys/tree/master/CF/ItemCF


总结:ItemCF与UserCF类似,都是协同过滤推荐算法。其不同是前者基于和历史物品的相似度推荐,是物以类聚思想,倾向于个性化推荐;后者按人以群分思想,更偏向于热点内容推荐。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容