学习来源:日撸 Java 三百行(61-70天,决策树与集成学习)_闵帆的博客-优快云博客
梯度下降
如同所示,梯度下降就是沿着下降最快的方向移动一定距离,距离为梯度乘以学习率。直到下降到最底部。
该代码中的梯度:
对于用户向量和电影向量
的偏导:
其中,表示真实评分和预测评分的差值。
矩阵分解
1.数据:“用户ID 电影ID 评分(1-5)”。电影看得多的用户排在前面。
2.思想:可以将用户-电影的评分矩阵,转化为两个包含隐含因子的低维矩阵。一个是用户低维矩阵
,一个是电影低维矩阵
。并且使
。
其中:表示用户
对电影
的评分。假设低维为3维,所以
表示用户
对第