An ADMM Algorithm for Non-negative matrix factorization

This page provides source code for the paper:

D. L. Sun and C. Févotte. Alternating direction method of multipliers for non-negative matrix factorization with the beta-divergence, IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP), May 2014.

Matlab code: nmf_admm.m

Example usage:

V = rand(100, 20);

% initializations
W0 = rand(100, 5);
H0 = rand(5, 20);

beta = 1; % set beta=1 for KL divergence, beta=0 for IS divergence
rho = 1; % ADMM parameter

[W, H] = nmf_admm(V, W0, H0, beta, rho)

Please feel free to contact me with any questions and bug reports: