Description Usage Arguments Details Value Author(s) References
Multiplicative updates from Lee and Seung (2001) for standard Nonnegative Matrix Factorization models V \approx W H, where the distance between the target matrix and its NMF estimate is measured by the – euclidean – Frobenius norm.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | nmf_update.euclidean.h(
v,
w,
h,
eps = 10^-9,
nbterms = 0L,
ncterms = 0L,
copy = TRUE
)
nmf_update.euclidean.h_R(v, w, h, wh = NULL, eps = 10^-9)
nmf_update.euclidean.w(
v,
w,
h,
eps = 10^-9,
nbterms = 0L,
ncterms = 0L,
weight = NULL,
copy = TRUE
)
nmf_update.euclidean.w_R(v, w, h, wh = NULL, eps = 10^-9)
|
v |
target matrix |
w |
current basis matrix |
h |
current coefficient matrix |
eps |
small numeric value used to ensure numeric stability, by shifting up entries from zero to this fixed value. |
nbterms |
number of fixed basis terms |
ncterms |
number of fixed coefficient terms |
copy |
logical that indicates if the update should be made on the original
matrix directly ( |
wh |
already computed NMF estimate used to compute the denominator term. |
weight |
numeric vector of sample weights, e.g., used to normalise samples
coming from multiple datasets.
It must be of the same length as the number of samples/columns in |
nmf_update.euclidean.w
and nmf_update.euclidean.h
compute the updated basis and coefficient
matrices respectively.
They use a C++ implementation which is optimised for speed and memory usage.
The coefficient matrix (H
) is updated as follows:
H_kj <- max(H_kj (W^T V)_kj, eps) / ( (W^T W H)_kj + eps )
These updates are used by the built-in NMF algorithms Frobenius
and
lee
.
The basis matrix (W
) is updated as follows:
W_ik <- max(W_ik (V H^T)_ik, eps) / ( (W H H^T)_ik + eps )
a matrix of the same dimension as the input matrix to update
(i.e. w
or h
).
If copy=FALSE
, the returned matrix uses the same memory as the input object.
Update definitions by Lee2001.
C++ optimised implementation by Renaud Gaujoux.
Lee DD, Seung H (2001). “Algorithms for non-negative matrix factorization.” _Advances in neural information processing systems_. <URL: http://scholar.google.com/scholar?q=intitle:Algorithms+for+non-negative+matrix+factorization\#0>.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.