DCNAMLSep 28, 2016

MPI-FAUN: An MPI-Based Framework for Alternating-Updating Nonnegative Matrix Factorization

arXiv:1609.09154v141 citations
Originality Incremental advance
AI Analysis

This work addresses the problem of scaling NMF for big data applications like topic modeling and video analysis, though it is incremental as it builds on existing NMF algorithms with a new parallel implementation.

The authors tackled the lack of efficient parallel algorithms for non-negative matrix factorization (NMF) on big datasets by developing MPI-FAUN, a high-performance parallel framework that minimizes communication costs and scales to matrices with hundreds of millions to billions of entries, showing significant performance improvements over baseline implementations.

Non-negative matrix factorization (NMF) is the problem of determining two non-negative low rank factors $W$ and $H$, for the given input matrix $A$, such that $A \approx W H$. NMF is a useful tool for many applications in different domains such as topic modeling in text mining, background separation in video analysis, and community detection in social networks. Despite its popularity in the data mining community, there is a lack of efficient parallel algorithms to solve the problem for big data sets. The main contribution of this work is a new, high-performance parallel computational framework for a broad class of NMF algorithms that iteratively solves alternating non-negative least squares (NLS) subproblems for $W$ and $H$. It maintains the data and factor matrices in memory (distributed across processors), uses MPI for interprocessor communication, and, in the dense case, provably minimizes communication costs (under mild assumptions). The framework is flexible and able to leverage a variety of NMF and NLS algorithms, including Multiplicative Update, Hierarchical Alternating Least Squares, and Block Principal Pivoting. Our implementation allows us to benchmark and compare different algorithms on massive dense and sparse data matrices of size that spans for few hundreds of millions to billions. We demonstrate the scalability of our algorithm and compare it with baseline implementations, showing significant performance improvements. The code and the datasets used for conducting the experiments are available online.

Code Implementations1 repo
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes