8.4协同过滤

  • Collaborative Filtering

    • 协同过滤:很多人在一起听听大家的意见,即看与某人品味相近的人会有什么喜好
    • 基本思想:
      • 一开始要做一个打分矩阵 :每一行代表了一个用户,每一列可以理解为一个商品
      • 矩阵中每一个元素的值可以是是否喜欢某商品,或对某商品打分的分值
      • 因为商品可能有几千几万个,但是每个人只买较少商品,所以矩阵可能非常稀疏
      • 根据矩阵可以推测、填充缺失值部分(到底是喜欢还是不喜欢,打几分)
    • 分为两部分
      • 1.Memory-Based CF
      • 2.Model-Based CF
    • 协同过滤中,天生容易受到影响的因素
      • Grey Sheep:例如某人的音乐品味就是和别人差别特别大 ,所以很难用CF推测
      • Shilling Attack:类似刷好评,恶意差评,由此使用CF基于已有的数据做判断会大大影响计算结果的精准度
      • Cold Start:刚接触某网站,根本没有数据支持(新商品没有被打分,新用户没有给任何商品打分),无法做出合理判断
  • User—Based CF(找行和行之间的关系)

    • U:代表User
    • I:代表Item
    • W:相关性计算。找到与某用户有比较好相关性的一些人(正相关、负相关),以他们对商品的打分作为猜测依据
  • Item-Based CF(找列和列之间的关系)

    • W:相关性计算。找到与第i个商品有较好相关性的商品
    • 不同的实现方法

      • deviation:偏离、偏差
    • Item-Based CF(例子)

      • Slope one(斜坡算法)
        • 是一种基于项目(Item-based)的协同过滤推荐算法。 Slope one 具有简单和高效的特点,但是忽略了项目评价数目的影响。
  • Model_Based CF

    • 前面的计算都是在数数,能不能转化为模型
    • 思路:
      • 红线上方为标签,下方为输入,从而转换为分类问题
      • 例如I1的输入为4、3、4、2时最后标签为4
    • 方法:使用Naive Bayes分类器预测1-5,5个标签哪一个标签最有可能,哪一个标签的后验概率最大
    • 计算

      • 用到了“拉普拉斯平滑”
    • 其他例子

      • 喜欢:“10”
      • 不喜欢:“01”
      • 缺失:“00”
  • 10
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值