NMF(非负矩阵分解)

Posted 小葵花幼儿园园长

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NMF(非负矩阵分解)相关的知识,希望对你有一定的参考价值。

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):

以上是关于NMF(非负矩阵分解)的主要内容,如果未能解决你的问题,请参考以下文章

文本主题模型之非负矩阵分解(NMF)

机器学习笔记:非负矩阵分解问题 NMF

独立成分分析ICA因子分析LDA降维NMF非负矩阵分解

NMF非负矩阵分解初探

推荐算法——非负矩阵分解(NMF)

非负矩阵分解:NMF算法和聚类算法的联系与区别