1. 基于内容的推荐算法CB

  • Content-based Recommendations (CB)根据==推荐物品或内容的元数据==,发现物品的相关性,再基于用户过去的喜好记录,为==用户推荐相似的物品==。
  • 通过抽取物品内在或者外在的特征值,实现相似度计算。
    • 比如一个电影,有导演、演员、用户标签UGC、用户评论、时长、风格等等,都可以算是特征。
  • 将用户(user) 个人信息的特征(基 于喜好记录或是预设兴趣标签),和物品(item)的特征相匹配,就能得到用户对物品感兴趣的程度
    • 在一-些电影、音乐、图书的社交网站有很成功的应用,有些网站还请专业的人员对物品进行基因编码/打标签(PGC)

1.1 基于内容推荐算法的数据获取和预处理

  • 对于物品的特征提取- -- ==打标签(tag)==

    • 专家标签(PGC)

    • 用户自定义标签(UGC)

    • 降维分析数据,提取隐语义标签(LFM)

  • 对于文本信息的特征提取- --==关键词==

    • 分词、语义处理和情感分析(NLP)

    • 潜在语义分析(LSA)

1.2 相似度计算

相似度的评判,可以用距离表示,而一般更常用的是“余弦相似度”

  • 欧式距离

  • 余弦相似度

2 基于协同过滤和基于内容过滤的区别

基于内容 (Content based, CB)主要利用的是用户评价过的物品的内容特征,而CF方法还可以利用其他用户评分过的物品内容

  • CF 可以解决CB的一些局限
    • 物品内容不完全或者难以获得时,依然可以通过其他用户的反馈给出推荐
    • ==CF基于用户== 之间对物品的评价质量,避免了CB仅依赖内容可能造成的对物品质量
      判断的干扰
    • ==CF推荐不受内容限制==, 只要其他类似用户给出了对不同物品的兴趣,CF就可以给
      用户推荐出内容差异很大的物品(但有 某种内在联系)分为两类:基于近邻和基于模型
  • 分为两类
    • 基于近邻
    • 基于模型



TopN推荐
网站提供推荐服务时,一般是给用户一个个性化的推荐列表,这种推荐叫做TopN推荐。
TopN推荐的预测准确率,一般通过2个指标度量:
准确率(precision)

召回率(recall)

R(u)是根据用户在训练集上的行为给用户做出的推荐列表,T(u)是用户在测试集上的行为列表。
TopN推荐更符合实际的应用需求,比如预测用户是否会看一部电影,比预测用户看了电影之后会给它什么评分更重要。
3)覆盖率
覆盖率(coverage)是描述一个推荐系统对物品长尾的发掘能力。
最简单的定义是,推荐系统推荐出来的物品占总物品的比例。
假设系统的用户集合为U,推荐系统给每个用户推荐一个长度为N的物品列表R(u),覆盖率公式为:

覆盖率是内容提供者关心的指标,覆盖率为100%的推荐系统可以将每个物品都推荐给至少一个用户。
除了推荐物品的占比,还可以通过研究物品在推荐列表中出现的次数分布,更好的描述推荐系统的挖掘长尾的能力。
如果分布比较平,说明推荐系统的覆盖率很高;如果分布陡峭,说明分布系统的覆盖率较低。
信息论和经济学中有两个著名指标,可以定义覆盖率:
信息熵

p(i)是物品i的流行度除以所有物品流行度之和。
基尼系数(Gini Index)