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 = 2000,
eps = 10^-9, stopconv = 40, check.interval = 10)
nmfAlgorithm.offset(..., .stop = NULL, 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.nmf_update.euclidean_offset.h
and
nmf_update.euclidean_offset.w
compute the updated
NMFOffset model, using the optimized C++
implementations. The associated model is defined as an
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_.