nmf_update.euclidean_offset.h
and
nmf_update.euclidean_offset.w
compute the updated
NMFOffset model, using the optimized C++
implementations.
nmf_update.offset_R
implements a complete single
update step, using plain R updates.
nmf_update.offset
implements a complete single
update step, using C++-optimised updates.
Algorithms nmf_update.offset
and
nmf_update.offset_R
respectively.
nmf_update.euclidean_offset.h(v, w, h, offset,
eps = 10^-9, copy = TRUE) nmf_update.euclidean_offset.w(v, w, h, offset,
eps = 10^-9, copy = TRUE)
nmf_update.offset_R(i, v, x, eps = 10^-9, ...)
nmf_update.offset(i, v, x, copy = FALSE, eps = 10^-9,
...)
nmfAlgorithm.offset_R(..., .stop = NULL,
maxIter = nmf.getOption("maxIter") %||% 2000,
eps = 10^-9, stopconv = 40, check.interval = 10)
nmfAlgorithm.offset(..., .stop = NULL,
maxIter = nmf.getOption("maxIter") %||% 2000,
copy = FALSE, eps = 10^-9, stopconv = 40,
check.interval = 10)
FALSE
) or
on a copy (TRUE
- default). With copy=FALSE
the memory footprint is very small, and some speed-up may
be achievedNMF
object.onInit
and Stop
respectively).NMFOffset
model object.NMFOffset
object. The details of the
multiplicative updates can be found in Badea
(2008). Note that the updates are the ones defined for a
single datasets, not the simultaneous NMF model, which is
fit by algorithm Lee DD and Seung H (2001). "Algorithms for non-negative
matrix factorization." _Advances in neural information
processing systems_.