- 构建企业级推荐系统:算法、工程实现与案例分析
- 刘强
- 497字
- 2021-08-06 14:59:58
6.2 矩阵分解推荐算法的算法原理
前面只是很形式化地描述了矩阵分解算法的核心思想,本节详细讲解如何将矩阵分解问题转化为一个机器学习问题,从而方便我们训练机器学习模型、求解该模型,具备最终为用户做推荐的能力。
假设由所有用户有评分的(u,v)对(u代表用户,v代表标的物)组成的集合为A,即,通过矩阵分解将用户u和标的物v嵌入k维隐式特征空间的向量分别为
那么用户u对标的物v的预测评分为,真实值与预测值之间的误差为。预测得越准||Δr||,越小,针对所有(u,v)对,如果我们可以保证这些误差之和尽量小,那么有理由认为我们的预测是精准的。
有了上面的分析,就可以将矩阵分解转化为一个机器学习问题了。具体地说,我们可以将矩阵分解转化为如下等价的求最小值的最优化问题。
其中λ是超参数,可以通过交叉验证等方式来确定,||pu||2+||qv||2是正则项,避免模型过拟合。通过求解该最优化问题,我们就可以获得用户和标的物的特征嵌入(用户的特征嵌入pu,就是上一节中用户特征矩阵Un×k的行向量,同理,标的物的特征嵌入qv就是标的物特征矩阵Vk×m的列向量),有了特征嵌入,就可以为用户做个性化推荐了。
那么剩下的问题就是怎么求解上述最优化问题了,这是下一节主要讲解的内容。