基于近邻的协同过滤
收集数据生成用户商品评分矩阵,构建用户或商品相似度矩阵,利用近邻用户或近邻商品的评分进行加权平均求和得到当前用户没有浏览过的产品评分,选择该用户对没有浏览过的评分TopN的产品列表推荐给当前用户
-
相似度计算
在UserCF中使用pearson相似度比较多
在ItemCF中使用改进余弦相似度比较多
-
评分计算
加权平均求和、基于均值计算的加权平均求和、基于偏置项计算的加权平均求和(效果最好)
-
新用户或新品的冷启动问题
1.利用混合方法进行推荐,利用外部特征对样本进行分类、聚类建模
2.TopN热销推荐,新品推荐
-
评分稀疏问题
1.使用相对较少的有效评分来预测。
2.利用用户/物品的额外特征属性进行分类、聚类操作来得到相似用户/物品列表。
3.可以使用缺省投票的形式补全评分数据
-
评分初始化
评分一般采用两分制、五分制、七分制、十分制四种。通过以下两种方式
1.显示评分:通过问卷调查的方式收集用户对于商品的评分
2.隐式评分:当用户购买一个商品或者浏览一个商品的时候,我们可以认为这是一个 正向评分/正向意图,根据既定的规则,比如加权求和,可以将其转换为评分值。eg: 单曲循环=5, 分享=4, 收藏=3, 主动播放=2 , 听完=1, 跳过=-1 , 拉黑=-5
-
近邻的选择
TopN过滤、阈值过滤、负数过滤,交叉验证,一般25~50之间
-
评分的加权
可以根据规则/业务特征对用户-物品评分进行加权,加权之后再对推荐列表做一个排序,最终产生推荐结果
-
UserCF和ItemCF比较