典型任务和算法(模型)
1.相似匹配(基于内容)1.1 标签匹配
1.2 LDA主题模型
2.评分预测 2.1.large scale 问题。为什么不直接进行回归预测呢? 2.2.user or item based 协同过滤以user-based协同过滤为例:找出与当前User i最相似的N个User,并根据N个User对Item的打分估计 i 对该Item的打分。相似度采用jaccard similarity 或 Cosine Similarity:
sim(x,y)=rx∩ryrx∪ry
sim(x,y)=1−cosine(x,y)=1−A⋅B∣∣A∣∣ ∣∣B∣∣
2.3.矩阵分解(model-based 协同过滤):矩阵分解相当于:表示学习(用户、物品)+相似匹配
2.3.1.SVD(PCA):
奇异值分解,通过降维的方法来补全用户-物品评分矩阵,对矩阵中没有出现的值进行估计。缺点是分解前需补全R矩阵的缺失值(比如用全局平均值或用户、物品平均值进行补全),耗费存储大;计算复杂度高。
R′=Um×mSm×nVTn×n
2.3.2.ALS:
交替最小二乘梯度下降
R′=Xm×kYTn×k