MF(Matrix Factorization)
-
MF的基本原理
将一个矩阵D分解为U和V的乘积,即对于一个特定的规模为 的矩阵D,估计出规模分别为 和 的矩阵U和V,使得 的值尽可能逼近矩阵D,一般来讲,k的取值应该满足 。如果在推荐系统中,D代表用户对商品的行为矩阵的话,那么U和V则分别代表embedding表示的用户和商品向量。
以公式来表示的话,就是 :
其中 表示 矩阵第 行的向量, 表示 矩阵第j行向量。
为了限制 的取值呈现一个以0为中心的正态分布,这里对 的值加上正则项,得到目标优化项:
对 求 的偏微分,得到对应梯度:
将该结果扩展,可以得到对 的偏微分为:
得到梯度以后,既可以通过梯度对 的值进行迭代。如果是采用最简单的梯度下降的话,则迭代公式如下:
其中 表示学习速率。 -
推荐阅读
矩阵分解