《推荐系统实践》读书笔记

《推荐系统实践》是一本讲推荐系统的入门书籍,可贵的是它做到了理论和实践相结合,理论也不是很复杂,非常适合工业界想要使用推荐算法的人学习。这里把读书过程的笔记摘录下来,给自己留个备忘。

1.好的推荐系统

推荐系统是为了解决信息过载问题。

应用领域:

  • 电子商务

    相关商品(item-based)。

  • 电影和视频

    样本少,早期依靠人工编辑效果也不错。

  • 音乐

    物品空间大,消费时间短。

  • 社交网络

    推荐内容广泛(人、事情、物品)。

  • 个性化阅读

  • LBS

  • 个性化广告

评测标准

  • 满意度

  • 准确率

  • 覆盖率

  • 多样性

  • 新颖性

    不要都是热门资源

  • 惊喜度

  • 信任度

    增加系统的透明度,提供推荐解释。社交网络信息。

  • 实时性

  • 健壮性

  • 商业目标

2.用户行为数据

数据来源

raw log => session log => impression log

显示数据:喜欢
隐式数据:浏览

无上下文信息的隐性反馈数据集:用户ID+物品ID作为一条记录,如浏览数据。

PowerLow–长尾效应–Zipf定律

协同过滤的算法:

  • 基于邻域的算法(neighborhood-based)

    • UserBased

      1.User相似度计算

      Latex:{w}_{uv}=\frac{\sum_{i\epsilon N(u)\bigcap N(v)} \frac{1}_{log1+|N(i)|}}{\sqrt{|N(u)||N(v)|}}

      其中N(i)表示用户i有正反馈的物品集合,Latex:\frac{1}_{log1+|N(i)|}}是惩罚因子,避免热门物品的影响。

      2.Item感兴趣程度计算

      Latex:p(u,i)=\sum_{v\epsilon S(u,k)\bigcap N(i)} {w}_{uv} {r}_{vi}

      k是输入参数,S(u,k)是与u有关的k个人。

      使用UserBased的公司:Digg,文章推荐网站,类似无觅

    • ItemBased

      1.Item相似度计算

      Latex:{w}_{ij}=\frac{|N(i)\bigcap N(j)|}{{|N(i)|}^{1-\alpha }{|N(j)|}^{\alpha }}, \alpha\in [0.5,1]

      其中alpha是对热门物品j的惩罚因子。实验证明alpha为0.5时结果最佳,但是仍然可以使用其他值来保证新颖性。

      IUF(Inverse User Frequence):活跃用户的贡献度应小于不活跃的用户。ItemCF-IUF效果略好于ItemCF。

      Latex:{w}_{ij}=\frac{\sum_{u\epsilon N(i)\bigcap N(j)} \frac{1}_{log1+|N(u)|}}{\sqrt{|N(i)||N(j)|}}

      2.Item感兴趣程度计算

      Latex:{p}_{uj}=\sum_{i\epsilon N(u)\bigcap S(j,K)} {w}_{ji} {r}_{ui}

      K同样是输入参数。

      ItemCF更让人信服,因为提供推荐解释“喜欢A的人还喜欢B”

  • 隐语义模型(latent factor model)

    todo

  • 基于图的随机游走(random walk on graph)

    todo

你可能感兴趣的:(推荐,协同过滤)