推荐系统——2.1协同过滤

本文深入探讨协同过滤(CF)推荐系统,包括基于用户的CF和基于项目的CF,涉及用户相似度计算、预测及优化。同时,讨论偏好反馈、其他基于模型的CF方法,如关联规则挖掘和概率方法,并分析了CF的优缺点与安全性。
摘要由CSDN通过智能技术生成

本节内容提要

本章节可分为四部分。

  1. 介绍了两种重要的协同过滤方法,具体内容包括它们的假设前提、实践思路、相关要点,并简要地提到了混合协同过滤。

    • 基于用户的协同过滤(User-based CF)
    • 基于项目的协同过滤(Item-based CF)
  2. 提到了偏好反馈问题。

  3. 第三部分介绍了除去前文提到的两种CF方法,还有不少基于模型的方法,并在该部分简单地列举了一些。

    • 关联规则挖掘(association rule mining)
    • 概率方法(probabilistic methods)
    • 基于集群的方法(Cluster-based approach)
    • SlopeOne算法
    • RF-Rec算法
  4. 评价了协同过滤的优缺点和安全性能。

协同过滤(Collaborative Filtering/CF)

最突出的推荐系统解决方法

  • 可应用于众多领域,适用范围广
  • 容易理解并且有大量算法存在
  • 被大型电子商务网站应用

基本假设和理念

  • 用户对目录项进行评分(隐式地或者显式地)。
  • 如果一些用户在过去有相似的偏好,那他们在将来也会有相似的偏好。
  • 用户的偏好相对于时间有稳定性和可持续性。

输入和输出

  • 输入:给定的“用户-项目评分”矩阵
  • 输出类型:
    • 预测当前用户喜欢或不喜欢某个特定项目的程度,也就是用户的评分预测。
    • 给出受推荐项目的Top-N列表,也就是项目排名。

基于用户的协同过滤(User-based CF)

案例分析

  1. 给出如下的用户评分表,预测Alice对Item5的评分。
    avatar

  2. 基本假设:如果一些用户在过去有相似的偏好,那他们在将来也会有相似的偏好。

  3. 思路:找一群曾经有着和A相同偏好并且评估过项目i的用户,根据他们评分的平均情况预测A是否会喜欢项目i。

  4. 需要思考的关键性问题:

    1. 怎样衡量用户之间的相似度?
    2. 我们需要考虑多少个相似用户?
    3. 我们怎样根据用户评分生成一个预测?

用户相似度衡量

一种比较流行的衡量方法是皮尔逊相关系数(Pearson Correlation Coefficient/PCC)。
其中, a a a b b b是待比较的两个用户, r a , p r_{a,p} ra,p是用户 a a a对项目 p p p的评分,集合 P P P是用户 a a a和用户 b b b共同评分过的产品集, r a ˉ \bar{r_a} raˉ是用户 a a a P P P中所有项目的平均评分。用户相似度的取值范围是[-1,1]。
avatar

选择合适的相似用户

方法1:设置相似度阈值。只有高于阈值的相似用户才会被选择。

方法2:Top-N相似用户。

  1. 获取所有与用户u相似度不等于0的用户集合。
  2. 获取所有对预测项目给出过评分的用户集合。
  3. 在以上两个集合中获取j个与用户u相似度最高的用户的集合,用 N u j N_u^j Nuj表示。

进行预测

一种常用的预测函数如下图。其中, p r e d ( u

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值