邻域协同过滤:原理、算法与实践
1. 协同过滤概述
在探索知识的过程中,你可能会遇到基于用户的过滤(user - user - based filtering)这一术语。人们仍在讨论基于用户的过滤,是因为它是一种更好的推荐方式。如果进行基于物品的过滤(item - to - item filtering),你会找到与用户A已评价过的物品相似的物品,但相似物品无法提供相似评分所带来的意外惊喜。
基于用户相似度,期望数据能将一个用户与具有不同品味特点的其他用户连接起来,从而提供令人惊喜且优质的推荐。若要解释推荐的原因,基于物品的过滤会使这项任务变得简单。因为系统可以说,你会得到电影Y的推荐是因为你喜欢与电影Y相似的电影X。而基于用户的过滤在解释推荐原因的同时,还需要更多的技巧来保护其他用户的隐私。
2. 数据要求
进行协同过滤时,数据需要满足一定要求。为了计算推荐,数据需要有良好的连接性:
- 如果没有用户对内容进行评分,那么将无法做出推荐。
- 与其他用户没有重叠品味的用户将无法获得优质推荐。
3. 协同过滤的实现方式
一种实现协同过滤的方法是,首先找出被多个用户(至少两个以上)评价过的所有物品,然后计算与这些物品中的一个或多个相关联的用户数量。这些用户将获得推荐,其余用户则不会。协同过滤的优点是系统无需任何领域知识,但要创建一个优秀的推荐系统,你仍需要领域知识。
4. 计算推荐
我们已经了解了基于用户和基于物品的过滤。接下来主要讨论基于用户的过滤,但实际上,最终的实现很可能会使用物品相似度,尤其是当数据集有大约45,000个用户和仅25,000个物品时。物品相似度的流程
超级会员免费看
订阅专栏 解锁全文
161

被折叠的 条评论
为什么被折叠?



