NMF(Non-negative matrix factorization),即对于任意给定的一个非负矩阵V,其能够寻找到一个非负矩阵W和一个非负矩阵H,满足条件V=W*H,从而将一个非负的矩阵分解为左右两个非负矩阵的乘积。
V矩阵中每一列代表一个观测(observation),每一行代表一个特征(feature);W矩阵称为基矩阵,H矩阵称为系数矩阵或权重矩阵。这时用系数矩阵H代替原始矩阵,就可以实现对原始矩阵进行降维,得到数据特征的降维矩阵,从而减少存储空间。

求解的基本思想:
既然我们的目的是为了找到两个非负矩阵使得它们的乘积等于原矩阵,那么就可以变成求解下面的最小化问题:

利用提督下降进行求解。
3.1和SVD的比较
优点:NFM在训练过程中比较迅速,相比于SVD的计算速度较快,且保证一定为正
缺点:
1.NMF要提前指定维度,不像SVD和PCA一样可以按大小选取。
2.NMF很难精确还原,是一种近似还原的手段,而SVD是精确还原。
3.SVD像是解析解,而NMF像是数值解。
reference:
网友评论