Learn R Programming

NMF (version 0.2.2)

nmf_update.lsnmf: Multiplicative Updates for LS-NMF

Description

Implementation of the updates for the LS-NMF algorithm from Wang et al. (2006).

wrss implements the objective function used by the LS-NMF algorithm.

Usage

nmf_update.lsnmf(i, X, object, weight, eps = 10^-9, ...)

wrss(object, X, weight)

nmfAlgorithm.lsNMF(..., .stop = NULL, maxIter = nmf.getOption("maxIter") %||% 2000, weight, eps = 10^-9, stationary.th = .Machine$double.eps, check.interval = 5 * check.niter, check.niter = 10L)

Arguments

i
current iteration
X
target matrix
object
current NMF model
weight
value for $\Sigma$, i.e. the weights that are applied to each entry in X by X * weight (= entry wise product). Weights are usually specified as a matrix of the same dimension as X (e.g. uncertainty estimates
eps
small number passed to the standard euclidean-based NMF updates (see nmf_update.euclidean).
...
extra arguments (not used)
.stop
specification of a stopping criterion, that is used instead of the one associated to the NMF algorithm. It may be specified as:
  • the access key of a registered stopping criterion;
  • a single integer that specifies the exact number of
maxIter
maximum number of iterations to perform.
stationary.th
maximum absolute value of the gradient, for the objective function to be considered stationary.
check.interval
interval (in number of iterations) on which the stopping criterion is computed.
check.niter
number of successive iteration used to compute the stationnary criterion.

Value

  • updated object object

References

Wang G, Kossenkov AV and Ochs MF (2006). "LS-NMF: a modified non-negative matrix factorization algorithm utilizing uncertainty estimates." _BMC bioinformatics_, *7*, pp. 175. ISSN 1471-2105, , .