Implementation of the updates for the LS-NMF algorithm from Wang et al. (2006).
wrss implements the objective function used by the
nmf_update.lsnmf(i, X, object, weight, eps = 10^-9, ...) wrss(object, X, weight) nmfAlgorithm.lsNMF(..., .stop = NULL, maxIter = 2000, weight, eps = 10^-9, stationary.th = .Machine$double.eps, check.interval = 5 * check.niter, check.niter = 10L)
S, i.e. the weights that are applied to each entry in
X * weight(= entry wise product). Weights are usually specified as a matrix of the same dimension as
X(e.g. uncertainty estimates for each measurement), but may also be passed as a vector, in which case the standard rules for entry wise product between matrices and vectors apply (e.g. recylcing elements).
(object="NMFStrategy", i="integer", y="matrix", x="NMF", ...), where
NMFStrategyobject that describes the algorithm being run,
iis the current iteration,
yis the target matrix and
xis the current value of the NMF model.
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,