This program is a MATLAB implementation of the NMF on the face data.
The function 'nmf' does the original NMF algorithm with the KL-Divergence (shown below) minimization, and the function 'ssnmf' does the sparsity imposed NMF.
KL-Divergence:
Matrix update is given by:
Where B is the factorized matrix with a user defined rank and W is the factorized weighting matrix.