NMF algorithms proposed by Kim et al. (2007) that enforces sparsity constraint on the basis matrix (algorithm SNMF/L) or the mixture coefficient matrix (algorithm SNMF/R).
nmfAlgorithm.SNMF_R(..., maxIter = 20000L, eta = -1, beta = 0.01, bi_conv = c(0, 10), eps_conv = 1e-04) nmfAlgorithm.SNMF_L(..., maxIter = 20000L, eta = -1, beta = 0.01, bi_conv = c(0, 10), eps_conv = 1e-04)
W
and in H
in SNMF/R and
SNMF/L respectively.
If eta < 0
, then it is set to the maximum value in
the target matrix is used.H
and W
in SNMF/R and
SNMF/L respectively.
Larger beta generates higher sparseness on H
(resp. W
). Too large beta is not recommended.bi_conv=c(wminchange, iconv)
, with: wminchange
:the minimal allowance of change
in row-clusters. iconv
: decide
convergence if row-clusters (within the allowance of
wminchange
) and column-clusters have not changed
for iconv
convergence checks. The algorithm SNMF/R solves the following NMF
optimization problem on a given target matrix A
of
dimension n x p
:
min_{W,H} 1/2 (|| A - WH ||_F^2 + eta ||W||_F^2 + beta (sum_j ||H[,j]||_1^2))s.t. W>=0, H>=0
The algorithm SNMF/L solves a similar problem on the transposed target matrix
A
, whereH
andW
swap roles, i.e. with sparsity constraints applied toW
.
Kim H and Park H (2007). "Sparse non-negative matrix
factorizations via alternating non-negativity-constrained
least squares for microarray data analysis."
_Bioinformatics (Oxford, England)_, *23*(12), pp.
1495-502. ISSN 1460-2059,