These update rules, defined for the NMFns-class
model V \approx W S H
from
Pascual-Montano et al. (2006), that introduces an intermediate smoothing matrix to enhance
sparsity of the factors.
nmf_update.ns
computes the updated nsNMF model.
It uses the optimized C++ implementations nmf_update.KL.w
and
nmf_update.KL.h
to update W
and H
respectively.
nmf_update.ns_R
implements the same updates in plain R.
Algorithms nsNMF and .R#nsNMF provide the complete NMF algorithm from Pascual-Montano et al. (2006),
using the C++-optimised and plain R updates nmf_update.brunet
and nmf_update.brunet_R
respectively.
The stopping criterion is based on the stationarity of the connectivity matrix.
nmf_update.ns(i, v, x, copy = FALSE, ...) nmf_update.ns_R(i, v, x, ...) nmfAlgorithm.nsNMF_R(..., .stop = NULL, maxIter = nmf.getOption("maxIter") %||% 2000, stopconv = 40, check.interval = 10) nmfAlgorithm.nsNMF(..., .stop = NULL, maxIter = nmf.getOption("maxIter") %||% 2000, copy = FALSE, stopconv = 40, check.interval = 10)
NMF-class
object.FALSE
) or on a copy (TRUE
- default).
With copy=FALSE
the memory footprint is very small, and some speed-up may be
achieved in the case of big matrices.
However, greater care should be taken due the side effect.
We recommend that only experienced users use copy=TRUE
.onInit
and
Stop
respectively).maxIter
.
nmf.stop.stationary
;
(object="NMFStrategy", i="integer", y="matrix", x="NMF", ...)
,
where object
is the NMFStrategy
object that describes the algorithm being run,
i
is the current iteration, y
is the target matrix and x
is the current value of
the NMF model.
an NMFns-class
model object.
The multiplicative updates are based on the updates proposed by Brunet et al. (2004),
except that the NMF estimate W H
is replaced by W S H
and W
(resp. H
) is replaced by W S
(resp. S H
) in the update of
H
(resp. W
).
See nmf_update.KL
for more details on the update formula.
Pascual-Montano A, Carazo JM, Kochi K, Lehmann D and Pascual-marqui RD (2006). "Nonsmooth nonnegative matrix factorization (nsNMF)." _IEEE Trans. Pattern Anal. Mach. Intell_, *28*, pp. 403-415.
Brunet J, Tamayo P, Golub TR and Mesirov JP (2004). "Metagenes and molecular pattern discovery using matrix factorization."
_Proceedings of the National Academy of Sciences of the United States of America_, *101*(12), pp. 4164-9. ISSN 0027-8424,