NMF - 非负矩阵分解

NMF,全称为non-negative matrix factorization,“非负矩阵分解”

NMF的思想:V= W * HW权重矩阵、H特征矩阵、V原矩阵),通过计算从原矩阵提取权重和特征两个不同的矩阵出来(分解)。属于一个无监督学习的算法,其中限制条件就是W和H中的所有元素都要大于0非负矩阵)。

数学定义:

V(F∗N) = W(F∗K) H(K∗N)

V: F∗N 的矩阵

  • F 为特征(行)
  • N 可以为观察值、例子、特征向量(列)

vn = (v1n,v2n,...,vfn) T, 在集合 N 中第 N 个特征向量

W: F∗K 的权重矩阵

  • wfk 为W中的一个系数
  • wk 是K个元素的基向量

H: K∗N 特征矩阵

  • hn 列向量 the columsn vector of activation coeffcients for observation vn
  • hk 行向量 the row cector of activation coefficients relating to basis vector wk

从定义中可以看到,NMF关键点就是找出 K ,然后将一个 F 行 N 列的矩阵分解为一个 F 行 K 列和一个 K 行 N 列 矩阵的乘积。

选择一个适当的K在分解的时候非常重要,不同的K对于不同模型情况如下:

  • 数据拟合:K越大那么对于数据拟合更好
  • 模型复杂性:一个更小的K模型更简单(易于预测、少输入参数等)