非负矩阵分解(NMF)-Non-negative Matrix Factorization

文章目录

    • 一、简介
    • 二、相关内容
    • 三、相关算法
    • 四、参考

一、简介

著名的科学杂志《Nature》于1999年刊登了两位科学家D.D.Lee和H.S.Seung对数学中非负矩阵研究的突出成果。该文提出了一种新的矩阵分解思想――非负矩阵分解(Non-negative Matrix Factorization,NMF)算法,即NMF是在矩阵中所有元素均为非负数约束条件之下的矩阵分解方法。该论文的发表迅速引起了各个领域中的科学研究人员的重视。

优点:

  1. 处理大规模数据更快更便捷;

  2. 简便性、分解形式和分解结果上的可解释性,以及占用存储空间少等诸多优点。

比较:

  • 利用矩阵分解来解决实际问题的分析方法很多,如PCA(主成分分析)、ICA(独立成分分析)、SVD(奇异值分解)、VQ(矢量量化)等。

  • 这些方法的共同特点是,元素可为正或负,即使输入的初始矩阵元素是全正的,传统的秩削减算法也不能保证原始数据的非负性。

  • 在数学上,从计算的观点看,分解结果中存在负值是正确的,但负值元素在实际问题中往往是没有意义的。例如图像数据中不可能有负值的像素点;在文档统计中,负值也是无法解释的。

二、相关内容

非负矩阵分解(Non-negative Matrix Factorization,NMF)算法。是在矩阵中所有元素均为非负数约束条件之下的矩阵分解方法。

即矩阵 V ( m ∗ n ) V(m*n) V(mn)维为非负矩阵,那么可以分解为2个非负矩阵 W ( m ∗ p ) W(m*p) W(mp)维、 H ( p ∗ n ) H(p*n) H(pn)维的乘积。(相关证明还未查阅,以后补上。)

V = W H V=WH V=WH

p p p可以显着小于 m m m n n n,可以明显降低矩阵的维度。

三、相关算法

1、乘法更新法(Multiplicative weight update method)

Lee和Seung的乘法更新规则由于实现简单而成为一种流行的方法。该算法是:

初始化: W W W H H H非负。

更新:由第n次更新第n+1次的 W W W H H H

H [ i , j ] n + 1 ← H [ i , j ] n ( ( W n ) T V ) [ i , j ] ( ( W n ) T W n H n ) [ i , j ] H_{[i,j]}^{n+1} \leftarrow H_{[i,j]}^{n} \frac{((W^{n})^{T}V)_{[i,j]}}{((W^{n})^{T}W^{n}H^{n})_{[i,j]}} H[i,j]n+1H[i,j]n((Wn)TWnHn)[i,j]((Wn)TV)[i,j]

W [ i , j ] n + 1 ← W [ i , j ] n ( V ( H n + 1 ) T ) [ i , j ] ( W n H n + 1 ( H n + 1 ) T ) [ i , j ] W_{[i,j]}^{n+1} \leftarrow W_{[i,j]}^{n} \frac{(V(H^{n+1})^{T})_{[i,j]}}{(W^{n}H^{n+1}(H^{n+1})^{T})_{[i,j]}} W[i,j]n+1W[i,j]n(WnHn+1(Hn+1)T)[i,j](V(Hn+1)T)[i,j]

注意:更新是基于第(i,j)元素而不是矩阵乘法完成的。

More recently other algorithms have been developed. Some approaches are based on alternating non-negative least squares: in each step of such an algorithm, first H is fixed and W found by a non-negative least squares solver, then W is fixed and H is found analogously. The procedures used to solve for W and H may be the same or different, as some NMF variants regularize one of W and H. Specific approaches include the projected gradient descent methods, the active set method, the optimal gradient method, and the block principal pivoting method among several others.

四、参考

相关库:

  • http://nimfa.biolab.si/ - nimfa - A Python Library for Nonnegative Matrix
  • http://www.csie.ntu.edu.tw/~cjlin/nmf/ Factorization Techniques

相关参考:

wiki:https://en.wikipedia.org/wiki/Non-negative_matrix_factorization

https://wenku.baidu.com/view/94c8af0bf78a6529647d5331.html

https://blog.csdn.net/zlp_zky/article/details/78391420

https://www.cnblogs.com/ywl925/p/3315758.html

https://liuzhiqiangruc.iteye.com/blog/2095116

你可能感兴趣的:(数理统计)