08.07.2015 Views

Nonnegativity Constraints in Numerical Analysis - CiteSeer

Nonnegativity Constraints in Numerical Analysis - CiteSeer

Nonnegativity Constraints in Numerical Analysis - CiteSeer

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!