协同过滤算法:

  1. 收集用户偏好
  2. 找到相似的用户或商品
  3. 计算推荐

相似度计算

1.欧氏距离
2.欧几里德距离
3.皮尔逊相关系数(1111
协方差
标准差
皮尔逊相关系数=协方差/标准差
趋近于-1负相关,趋近于1正相关
4.Cosine相似度

基于用户的协同过滤(不太流行

要解决的问题
  1. 已知用户的评分矩阵
  2. 推断矩阵中空格的值
存在的问题:
  1. 新用户
  2. 物品没被打分
解决方案
  1. 相似度计算用皮尔逊相似度
  2. 考虑共同打分物品的数目
  3. 对打分归一化处理
  4. 设置相似度阈值
缺点
  1. 数据稀疏
  2. 计算量大
  3. 人是善变的

基于物品的协同过滤

优势
  1. 计算性能高,通常用户数量大于物品数量
  2. 可预先计算保留,物品并不善变
用户冷启动问题
  1. 引导用户把自己的一些属性表达出来
  2. 利用现有的开放数据平台
  3. 根据用户注册属性
  4. 推荐排行榜单
物品冷启动问题
  1. 文本分析
  2. 主题模型
  3. 打标签
  4. 推荐排行榜单

两种协同过滤算法的对比:

---- 基于用户 基于物品
性能 适用于用户较少 适用于物品数明显小于用户数
领域
实时性
冷启动
推荐理由 很难提供令用户信服的推荐解释 可以根据用户的行为归纳推荐理由