Nonnegativity Constraints in Numerical Analysis - CiteSeer
Nonnegativity Constraints in Numerical Analysis - CiteSeer
Nonnegativity Constraints in Numerical Analysis - CiteSeer
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Furthermore, the product T (m×np) (Z ⊙Y ) may be computed efficiently if T is sparse by notform<strong>in</strong>g the Khatri-Rao product (Z ⊙Y ). Thus, comput<strong>in</strong>g X essentially reduces to severalmatrix <strong>in</strong>ner products, tensor-matrix multiplication of Y and Z <strong>in</strong>to T , and <strong>in</strong>vert<strong>in</strong>g anR × R matrix.Analogous least squares steps may be used to update Y and Z. Follow<strong>in</strong>g is a summaryof the complete NTF algorithm.ALS algorithm for NTF:1. Group x i ’s, y i ’s and z i ’s as columns <strong>in</strong> X ∈ R m×r+ , Y ∈ R n×r+ and Z ∈ R p×r+ respectively.2. Initialize X, Y .(a) Nonnegative Matrix Factorization of the mean slice,where A is the mean of T across the 3 rd dimension.3. Iterative Tri-Alternat<strong>in</strong>g M<strong>in</strong>imizationm<strong>in</strong> ||A − XY || 2 F . (25)(a) Fix T , X, Y and fit Z by solv<strong>in</strong>g a NMF problem <strong>in</strong> an alternat<strong>in</strong>g fashion.(b) Fix T , X, Z, fit for Y ,(c) Fix T , Y , Z, fit for X.(T (m×np) C) iρX iρ ← X iρ , C = (Z ⊙ Y ) (26)(XC T C) iρ + ɛ(T (m×np) C) jρY jρ ← Y jρ , C = (Z ⊙ X) (27)(Y C T C) jρ + ɛ(T (m×np) C) kρZ kρ ← Z kρ , C = (Y ⊙ X) (28)(ZC T C) kρ + ɛHere ɛ is a small number like 10 −9 that adds stability to the calculation and guardsaga<strong>in</strong>st <strong>in</strong>troduc<strong>in</strong>g a negative number from numerical underflow.If T is sparse a simpler computation <strong>in</strong> the procedure above can be obta<strong>in</strong>ed. Eachmatricized version of T is a sparse matrix. The matrix C from each step should not be formedexplicitly because it would be a large, dense matrix. Instead, the product of a matricized Twith C should be computed specially, exploit<strong>in</strong>g the <strong>in</strong>herent Kronecker product structure<strong>in</strong> C so that only the required elements <strong>in</strong> C need to be computed and multiplied with thenonzero elements of T .18