作者:禅与计算机程序设计艺术
1.简介
随着互联网、社交网络、推荐系统等新兴技术的出现,越来越多的应用在利用用户对物品的评价数据进行分析和预测,因此协同过滤(Collaborative Filtering)模型逐渐受到重视。用户-物品协同过滤算法(UBCF)是一种基于用户行为的推荐算法,它能够有效地将用户过往的行为反馈给推荐系统,从而提升推荐效果。这里主要讨论的就是基于用户-物品的协同过滤算法。
用户-物品协同Filtering算法的目标是通过分析用户对不同物品的评分偏好,预测其未来的行为并为其推荐相应的商品或服务。最简单的方式是给定一个用户u、物品i、某个时间点t时刻的观察值rui,那么根据这个观察值,就可以估计出u对i的未来的评分ri。但是这种方法存在两个问题:
- 如果当前不存在关于u对i的评分信息rui,就无法估计出u对i的未来评分ri;
- 在很多情况下,对于某些特定的u、i组合,其未来的评分并非由单个的评分ri唯一确定,而是由多个不同的评分组成,这些组成分可能彼此独立也可能相互影响,需要考虑到这些因素。
UBCF的方法可以从以下两个方面对上述问题进行改进: - 通过引入用户-物品之间的联系,使得模型能够捕获用户之间的内在关系,并适应不同物品之间复杂的关联结构;
- 假设u对i的评分仅仅依赖于自身历史行为和与i有关的物品集,不受其他用户行为的影响,从