Learn R Programming

NMF (version 0.2.2)

nmfAlgorithm.SNMF_R: NMF Algorithm - Sparse NMF via Alternating NNLS

Description

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).

Usage

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)

Arguments

maxIter
maximum number of iterations.
eta
parameter to suppress/bound the L2-norm of 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.

beta
regularisation parameter for sparsity control, which balances the trade-off between the accuracy of the approximation and the sparseness of H and W in SNMF/R and SNMF/L respectively.

L

bi_conv
parameter of the biclustering convergence test. It must be a size 2 numeric vector bi_conv=c(wminchange, iconv), with: [object Object],[object Object]

Convergence checks are performed every 5 iterations.

eps_conv
threshold for the KKT convergence test.
...
extra argument not used.

Details

The algorithm SNMF/R solves the following NMF optimization problem on a given target matrix $A$ of dimension $n \times p$: $$\begin{array}{ll} & \min_{W,H} \frac{1}{2} \left(|| A - WH ||_F^2 + \eta ||W||_F^2 + \beta (\sum_{j=1}^p ||H_{.j}||_1^2)\right)\ s.t. & W\geq 0, H\geq 0 \end{array}$$

The algorithm SNMF/L solves a similar problem on the transposed target matrix $A$, where $H$ and $W$ swap roles, i.e. with sparsity constraints applied to W.

References

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, , .