Dimension Independent Matrix Square using MapReduce
Abstract
We compute the singular values of an $m \times n$ sparse matrix $A$ in a distributed setting, without communication dependence on $m$, which is useful for very large $m$. In particular, we give a simple nonadaptive sampling scheme where the singular values of $A$ are estimated within relative error with constant probability. Our proven bounds focus on the MapReduce framework, which has become the de facto tool for handling such large matrices that cannot be stored or even streamed through a single machine. On the way, we give a general method to compute $A^TA$. We preserve singular values of $A^TA$ with $\epsilon$ relative error with shuffle size $O(n^2/\epsilon^2)$ and reducekey complexity $O(n/\epsilon^2)$. We further show that if only specific entries of $A^TA$ are required and $A$ has nonnegative entries, then we can reduce the shuffle size to $O(n \log(n) / s)$ and reducekey complexity to $O(\log(n)/s)$, where $s$ is the minimum cosine similarity for the entries being estimated. All of our bounds are independent of $m$, the larger dimension. We provide opensource implementations in Spark and Scalding, along with experiments in an industrial setting.
 Publication:

arXiv eprints
 Pub Date:
 April 2013
 arXiv:
 arXiv:1304.1467
 Bibcode:
 2013arXiv1304.1467B
 Keywords:

 Computer Science  Data Structures and Algorithms;
 Computer Science  Distributed;
 Parallel;
 and Cluster Computing;
 Mathematics  Spectral Theory
 EPrint:
 arXiv admin note: text overlap with arXiv:1206.2082