Skip to main content

Table 1 Comparison of four NMF algorithms

From: Assessment of nonnegative matrix factorization algorithms for electroencephalography spectral analysis

Algorithms

Cost function

Iteration

Advantages

NMF_MU

\(fW,H = \frac{1}{2}\parallel V - WH\parallel_{F}^{2}\)

\(H \leftarrow H.*\frac{{V^{T} W}}{{HW^{T} W}}\)

\(W \leftarrow W.*\frac{VH}{{WH^{T} H}}\)

The original realization of NMF

HALS

\(h_{i} \leftarrow \frac{1}{{w_{i}^{T} w_{i} }}\left[ {V_{i}^{T} w_{i} } \right]\)

\(w_{i} \leftarrow \frac{1}{{h_{i}^{T} h_{i} }}\left[ {V_{i}^{ } h_{i} } \right]\)

Iteration column by column, faster than NMF_MU in practical application

lraNMF_MU

\(F\;\left( {\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{W} ,\;\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{H} ,\;W,\;H} \right)\; = \;\parallel V\; - \;\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{W} \overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{H}^{T} \parallel_{F}^{2} \; + \;\parallel \overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{W} \overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{H}^{T} \; - \;WH^{T} \parallel_{F}^{2}\)

\(H \leftarrow H.*\frac{{\left[ {\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{H} \left( {\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{W}^{T} W} \right)} \right]}}{{H\left( {W^{T} W} \right)}}\)

\(W \leftarrow W.*\frac{{\left[ {\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{W} \left( {\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{H}^{T} H} \right)} \right]}}{{W\left( {H^{T} H} \right)}}\)

Dimension reduction at the start of the algorithm. Fix the problem of the size of matrix to be decomposed. Faster than NMF_MU in theory and in practical application

lraNMF_HALS

\(h_{i} \leftarrow \frac{1}{{w_{i}^{T} w_{i} }}\left[ {\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{H} \left( {\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{W}^{T} w_{i} } \right)\; - \;\overline{{H_{i} }} \left( {\overline{{W_{i} }}^{T} w_{i} } \right)} \right]\)

\(w_{i} \leftarrow \frac{1}{{h_{i}^{T} h_{i} }}\left[ {\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{W} \left( {\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{H}^{T} h_{i} } \right) - \;\overline{{W_{i} }} \left( {\overline{{H_{i} }}^{T} h_{i} } \right)} \right]\)

Dimension reduction at the start of the algorithm. Faster than HALS in theory and practical application