推荐算法-余弦相似度

匿名 (未验证) 提交于 2019-12-02 23:55:01

一、余弦相似度:

余弦值越接近1,就表明夹角越接近0度,也就是两个向量越相似,这就叫"余弦相似性"

二维向量的余弦相似度:

多维向量的余弦相似度(类比)

协同过滤(Collaborative Filtering, 简称 CF):

  • 收集用户行为
  • 减噪与归一化处理
  1. 减噪:用户行为数据是用户在使用应用过程中产生的,它可能存在大量的噪音和用户的误操作,我们可以通过经典的数据挖掘算法过滤掉行为数据中的噪音,这样可以是我们的分析更加精确
  2. 归一化:将各个行为的数据统一在一个相同的取值范围中,从而使得加权求和得到的总体喜好更加精确。

二、基于物品的协同过滤推荐算法(itemCF):

算法思想:给用户推荐那些和他们之前喜欢的物品相似的物品

用户行为与权重:点击-1、搜索-3、收藏-5 、付款-10

用户 A、B、C

商品 1、2、3、4、5、6

  • 根据用户行为列表计算用户、物品的评分矩阵
  • 根据用户、物品的评分矩阵计算物品、物品的相似矩阵
  • 相似度矩阵x评分矩阵=推荐列表
  • 推荐列表中用户之前已经有过行为的元素置为0

三、基于用户的协同过滤推荐算法(UserCF)

算法思想:给用户推荐和他兴趣相似的其他用户喜欢的物品

用户行为与权重:点击-1、搜索-3、收藏-5 、付款-10

用户 A、B、C、D、E、F

商品 1、2、3、4、5、6

  • 根据用户行为列表计算物品、用户的评分矩阵
  • 根据物品、用户的评分矩阵计算用户、用户的相似矩阵
  • 相似度矩阵X评分矩阵=推荐列表
  • 将推荐列表中用户已有行为的元素置0

四、基于内容推荐算法

算法思想:给用户推荐和他们之前喜欢的物品在内容上相似的其他物品

1表示电影具有某个特征

物品特征建模:Item Profile

  • 构建Item Profile矩阵(电影的特征项矩阵)
  • 构建Item User评分矩阵(用户电影的评分矩阵)
  • Item User x Item Profile = User Profile
  • 对Item Profile和User Profile求余弦相似度

五、基于物品的协同过滤推荐算法(itemCF)说明:

1、根据用户行为列表计算用户、物品的评分矩阵

2、根据用户物品的评分矩阵计算物品、物品的相似矩阵

3、相似度矩阵x评分矩阵=推荐列表

4、推荐列表中用户之前已经有过行为的元素置为0

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!