矩阵分解:从SVD到Funk SVD的推荐算法探索
1. SVD构建分解
1.1 SVD降维与主题提取
SVD降维的目的是从数据中提取主题。当引入新用户或新物品时,这些主题不会更新,而是与已有的主题进行比较。
1.2 SVD更新频率
SVD模型应尽可能频繁地更新。根据新用户和新物品的数量,更新频率可以是每天一次或每周一次。
1.3 新用户折叠问题
如果新用户只有一个评分,无论该评分是高是低,推荐列表都是相同的。可以通过前面的小矩阵进行实验来理解这一现象。
1.4 SVD推荐方法
可以通过以下三种方式进行推荐:
1. 计算所有预测评分,选取用户未看过的最大评分。
2. 遍历每个物品,在降维空间中找到相似的产品。
3. 使用新矩阵进行邻域协同过滤,因为矩阵中的所有非零元素(至少在归一化的情况下)在这个密集空间中,找到相似物品或用户的机会更大。
1.5 SVD存在的问题
- 稀疏矩阵处理 :需要对评分矩阵中的未填充单元格进行处理。
- 计算速度慢 :计算大型矩阵时速度较慢。
- 缺乏可解释性 :难以理解为什么机器对某个物品预测高评分,而对另一个物品不预测高评分。
2. 基线预测器
2.1 物品和用户的偏差
物品和用户除了类型和口味外,还存在偏差。如果一部电影
超级会员免费看
订阅专栏 解锁全文
33

被折叠的 条评论
为什么被折叠?



