推荐算法-余弦相似度
一、余弦相似度:
余弦值越接近1,就表明夹角越接近0度,也就是两个向量越相似,这就叫"余弦相似性"
二维向量的余弦相似度:
多维向量的余弦相似度(类比)
协同过滤(Collaborative Filtering, 简称 CF):
- 收集用户行为
- 减噪与归一化处理
- 减噪:用户行为数据是用户在使用应用过程中产生的,它可能存在大量的噪音和用户的误操作,我们可以通过经典的数据挖掘算法过滤掉行为数据中的噪音,这样可以是我们的分析更加精确
- 归一化:将各个行为的数据统一在一个相同的取值范围中,从而使得加权求和得到的总体喜好更加精确。
二、基于物品的协同过滤推荐算法(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表示电影具有某个特征 0表示电影不具有某个特征
物品特征建模:Item Profile
- 构建Item Profile矩阵(电影的特征项矩阵)
- 构建Item User评分矩阵(用户电影的评分矩阵)
- Item User x Item Profile = User Profile (用户对电影的喜爱程度)
- 对Item Profile和User Profile求余弦相似度
五、基于物品的协同过滤推荐算法(itemCF)说明:
1、根据用户行为列表计算用户、物品的评分矩阵
2、根据用户物品的评分矩阵计算物品、物品的相似矩阵
3、相似度矩阵x评分矩阵=推荐列表
4、推荐列表中用户之前已经有过行为的元素置为0