1.算法概述
NMF(Non-negative matrix factorization)
,即对于任意给定的一个非负矩阵V,其能够寻找到一个非负矩阵W和一个非负矩阵H,满足条件V=W*H,从而将一个非负的矩阵分解为左右两个非负矩阵的乘积。
- V矩阵中每一列代表一个观测(observation),每一行代表一个特征(feature);
- W矩阵称为基矩阵,
-
H矩阵称为系数矩阵或权重矩阵。这时用系数矩阵H代替原始矩阵,就可以实现对原始矩阵进行降维,得到
数据特征的降维矩阵
,从而减少存储空间。
2. 损失函数
python代码
在sklearn封装了NMF的实现,可以非常方便我们的使用,其实现基本和前面理论部分的实现是一致的,但是注意sklearn中输入数据的格式是(samples, features):
版权声明:本文为weixin_44177594原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。