推荐系统读书笔记
协同过滤推荐
1. 基于用户的最近邻推荐
输入:用户-物品的评分矩阵,待预测用户
思路:
- 找到与目标用户过去有相似偏好的用户组,作为近邻用户。
- 对每一个目标用户没有打分的物品,利用邻近用户的打分做预测
前提假设:
- 用户过去偏好相似,这用户将来偏好相似
- 用户偏好不随时间改变
例子
小结
- Pearson相关系数取值是-1~1的,1代表强正相关,-1代表强负相关。
- Pearson考虑了不同用户不同的评分范围,因为每次计算的都是与平均数的差值。
- 没有考虑到,用户间对于冷门物品的共同偏好,相比于热门物品来说,价值更大,但是目前没有考虑到
- 还有其他衡量用户相似度的方法:改进余弦相似度,Spearman秩相关系数,均方差
- 近邻用户选择,上文为方便说明只选了1个,可以选择K个最近邻,实践中20~50的效果不错
2. 基于物品的最近邻推荐
输入:用户-物品的评分矩阵,待预测用户
思路:
- 找到目标用户对于待预测物品的相似物品的评分。
- 根据相似物品的评分按照权重计算得到的平均值进行计算
协同过滤的其它话题
- 评分
- 显式评分需要用户额外付出,用户会因为得不到任何好处而放弃评价,因此需要收集隐式评分,例如买了一个商品,在某商品详情页停留很久,都可以作为正向意图
- 推荐系统冷启动,可以利用用户附加信息对用户进行分类,例如年龄,性别,教育程度等。
- 数据稀疏问题,利用假设用户偏向有传递性,由此增强额外信息矩阵。例如User1 -> Item1 -> User2 -> Item2推荐路径长度是3,可以拓展为5或其他更长情况
- 基于模型的推荐
- 推荐系统使用矩阵因子分解的方法,从评分模式中抽取一组潜在的因子,通过这些因子向量来描述用户和物品
- SVD将高度相关且一起出现的词语作为单独因子,把大的矩阵向量差分成更小阶的近似矩阵
- PCA主成分分析对评分数据预处理,过滤出数据中最重要的方面来解释大多数变量,经过PCA处理后的数据,原始评分数据被投射到最相关的主特征向量上
- 关联规则挖掘
- 关联规则应用到推荐就是自动发现规则。
- 关联规则的衡量标准是支持度和可信度
- 所有的正向评分都记做一次购买行为
- 得到的规则是:喜欢物品1的同时喜欢物品5