推荐经典算法——协同过滤

本文介绍了协同过滤算法的两种主要类型:基于用户的协同过滤(UserCF)和基于物品的协同过滤(ItemCF)。UserCF通过寻找兴趣相似的用户来推荐物品,而ItemCF则是推荐与用户过去喜欢的物品相似的物品。在计算相似度时,ItemCF通常优于UserCF,因为它可以预先计算物品的相似度并提供更好的在线预测性能。物品相似度计算包括余弦相似度、相关性以及修正的余弦相似度。预测值计算涉及加权求和和回归方法。评价指标如平均绝对误差(MAE)用于衡量推荐系统的准确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.基于用户的协同过滤算法

基于用户的协同过滤(下文简称UserCF)的基本思想为:给用户推荐和他兴趣相似的用户感兴趣的物品。当需要为一个用户A进行推荐时,首先,找到和A兴趣相似的用户集合(用U表示),然后,把集合U中用户感兴趣而A没有听说过(未进行过操作)的物品推荐给A。算法分为两个步骤:首先,计算用户之间的相似度,选取最相似的N个用户,然后,根据相似度计算用户评分。

算法不足:
1.扩展性:用户人数和用户个人信息的大幅增加对协同过滤算法带来挑战。
2.准确性:一个用户可能买到系统其中不到1%的物品,不同用户之间买的物品重叠性较低,导致算法无法找到一个用户的邻居,即偏好相似的用户。因此,基于最近邻算法的推荐系统可能无法为特定用户推荐任何物品,建议的准确性可能很差。

二.基于物品的协同过滤算法

基于物品的协同过滤(下文简称ItemCF)是目前应用最为广泛的算法,该算法的基本思想为:给用户推荐和他们以前喜欢的物品相似的物品,这里所说的相似并非从物品的内容角度出发,而是基于一种假设:喜欢物品A的用户大多也喜欢物品B代表着物品A和物品B相似。基于物品的协同过滤算法能够为推荐结果做出合理的解释,比如电子商务网站中的“购买该物品的用户还购买了…”。ItemCF的计算步骤和UserCF大致相同:首先,计算物品相似度,选出最相似的N个物品,然后根据相似度计算用户评分。

建立模型的常用机器学习方法:
1.贝叶斯网络模型为协同过滤问题提供了一个概率模型,它在用户偏好模型构建较快,在用户偏好信息变换缓慢的环境中是非常实用的。但是不适用于用户偏好模型需要快速更新的环境。
2.聚类模型则把协同过滤看作一个分类问题,它的准确性较差,但是性能较佳(针对于计算量而言,因为一旦聚类完成,只需要分析很小的群组就可以了)。因此,是否预先聚类可能是精准性与吞吐量之间的一个值得的权衡的问题。
3.基于规则的方法,应用关联规则发现算法来寻找共同购买的商品之间的关联,然后根据商品之间的关联强度生成商品推荐。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值