Non-negative matrix factorization with nGMCA

Sparse non-negative matrix factorization with nGMCAlab

nGMCA (non-negative Generalized Morphological Component Analysis, [1]) aims at performing non-negative matrix factorization (NMF) of sparse sources, i.e. solving the following problem:

\underset{\mathbf{A}\ge \mathbf{0},~\mathbf{S}\ge \mathbf{0}}{\text{argmin}}~\|\mathbf{Y}-\mathbf{A}\mathbf{S}\|_2^2+\|\mathbf{\Lambda}\odot\mathbf{S}\|_1,

where \mathbf{Y} is the data matrix to factorize, \mathbf{A} is a mixing matrix, \mathbf{S} a source matrix, and \mathbf{\Lambda} the sparsity parameter matrix. In the nGMCA framework, this parameter matrix is automatically chosen so as to deal with Gaussian noise contamination. A stand-alone nGMCA function for simple use and comparisons can be downloaded here: nGMCA stand-alone function.

In [2], this framework was extended in order to deal with sparsity in a possibly redundant transformed domain (with \mathbf{W} the transformation matrix) either with an analysis formulation:

\underset{\mathbf{A}\ge \mathbf{0},~\mathbf{S}\ge \mathbf{0}}{\text{argmin}}~\|\mathbf{Y}-\mathbf{A} \mathbf{S}\|_2^2 +\|\mathbf{\Lambda}\odot(\mathbf{S}\mathbf{W}^T)\|_1

or a synthesis formulation:

\underset{\mathbf{A}\ge \mathbf{0},~\mathbf{S}_w\mathbf{W}\ge \mathbf{0}}{\text{argmin}}~\|\mathbf{Y}-\mathbf{A} \mathbf{S}_w\mathbf{W}\|_2^2 + \|\mathbf{\Lambda}\odot\mathbf{S}_w\|_1.

The Matlab toolbox which which was used in both [1] and [2] in order to perform the benchmarks can be downloaded here: nGMCAlab Toolbox. An equivalent Python toolbox is also available: pygmca. These toolbox include an implementation of 1D and 2D redundant wavelet transforms.

Please cite one or both of the references below if you use these functions in a publication. These are development toolboxes, which may be imperfect. Please feel free to contact us if you have any problem.


  • [1] Jérémy Rapin, Jérôme Bobin, Anthony Larue, Jean-Luc Starck. Sparse and Non-negative BSS for Noisy Data, IEEE Transactions on Signal Processing, 2013.IEEE Transactions on Signal Processing, vol. 61, issue 22, p. 5620-5632, 2013. Available here.
  • [2] Jérémy Rapin, Jérôme Bobin, Anthony Larue, Jean-Luc Starck. NMF with Sparse Regularizations in Transformed Domains, SIAM Journal on Imaging Sciences (accepted), 2014. Available here.