基于用户的协同过滤(UserCF)一般是怎么做的?
0 786
0
该提问暂无详细描述
收藏
2021-06-07 16:01 更新 怪瘦的钱包 •  30
共 1 个回答
高赞 时间
1

基于用户的协同过滤考虑的是用户的相似度.基本思想是,给用户推荐和他相似的用户所喜欢的物品.

为了计算用户相似度,我们首先要把用户购买过物品的索引数据转化成物品被用户购买过的索引数据,即物品的倒排索引:

建立好物品的倒排索引后,就可以根据相似度公式计算用户之间的相似度:

其中 N(a) 表示用户 a 购买物品的数量,N(b) 表示用户 b 购买物品的数量,N(a)∩N(b) 表示用户 a 和 b 购买相同物品的数量。有了用户的相似数据,针对用户 U 挑选 K 个最相似的用户,把他们购买过的物品中,U 未购买过的物品推荐给用户 U 即可。

参考: https://github.com/NLP-LOVE/ML-NLP

收藏
2021-06-07 16:03 更新 酒量大的路灯 •  29