# zbMATH — the first resource for mathematics

##### Examples
 Geometry Search for the term Geometry in any field. Queries are case-independent. Funct* Wildcard queries are specified by * (e.g. functions, functorial, etc.). Otherwise the search is exact. "Topological group" Phrases (multi-words) should be set in "straight quotation marks". au: Bourbaki & ti: Algebra Search for author and title. The and-operator & is default and can be omitted. Chebyshev | Tschebyscheff The or-operator | allows to search for Chebyshev or Tschebyscheff. "Quasi* map*" py: 1989 The resulting documents have publication year 1989. so: Eur* J* Mat* Soc* cc: 14 Search for publications in a particular source with a Mathematics Subject Classification code (cc) in 14. "Partial diff* eq*" ! elliptic The not-operator ! eliminates all results containing the word elliptic. dt: b & au: Hilbert The document type is set to books; alternatively: j for journal articles, a for book articles. py: 2000-2015 cc: (94A | 11T) Number ranges are accepted. Terms can be grouped within (parentheses). la: chinese Find documents in a given language. ISO 639-1 language codes can also be used.

##### Operators
 a & b logic and a | b logic or !ab logic not abc* right wildcard "ab c" phrase (ab c) parentheses
##### Fields
 any anywhere an internal document identifier au author, editor ai internal author identifier ti title la language so source ab review, abstract py publication year rv reviewer cc MSC code ut uncontrolled term dt document type (j: journal article; b: book; a: book article)
Fast Monte Carlo algorithms for matrices. II: Computing a low-rank approximation to a matrix. (English) Zbl 1111.68148

Summary: In many applications, the data consist of (or may be naturally formulated as) an $m×n$ matrix $A$. It is often of interest to find a low-rank approximation to $A$, i.e., an approximation $D$ to the matrix $A$ of rank not greater than a specified rank $k$, where $k$ is much smaller than $m$ and $n$. Methods such as the Singular Value Decomposition (SVD) may be used to find an approximation to $A$ which is the best in a well-defined sense. These methods require memory and time which are superlinear in $m$ and $n$; for many applications in which the data sets are very large this is prohibitive. Two simple and intuitive algorithms are presented which, when given an $m×n$ matrix $A$, compute a description of a low-rank approximation ${D}^{*}$ to $A$, and which are qualitatively faster than the SVD. Both algorithms have provable bounds for the error matrix $A-{D}^{*}$. For any matrix $X$, let ${\parallel X\parallel }_{F}$ and ${\parallel X\parallel }_{2}$ denote its Frobenius norm and its spectral norm, respectively. In the first algorithm, $c$ columns of $A$ are randomly chosen. If the $m×c$ matrix $C$ consists of those $c$ columns of $A$ (after appropriate rescaling), then it is shown that from ${C}^{T}C$ approximations to the top singular values and corresponding singular vectors may be computed. From the computed singular vectors a description ${D}^{*}$ of the matrix $A$ may be computed such that $\text{rank}\left({D}^{*}\right)\le k$ and such that

${∥A-{D}^{*}∥}_{\xi }^{2}\le \underset{D:\text{rank}\left(D\right)\le k}{min}{∥A-D∥}_{\xi }^{2}+\text{poly}\left(k,1/c\right){∥A∥}_{F}^{2}$

holds with high probability for both $\xi =2,F$. This algorithm may be implemented without storing the matrix $A$ in random access memory (RAM), provided it can make two passes over the matrix stored in external memory and use $O\left(cm+{c}^{2}\right)$ additional RAM. The second algorithm is similar except that it further approximates the matrix $C$ by randomly sampling $r$ rows of $C$ to form an $r×c$ matrix $W$. Thus, it has additional error, but it can be implemented in three passes over the matrix using only constant additional RAM. To achieve an additional error (beyond the best rank $k$ approximation) that is at most ${\epsilon \parallel A\parallel }_{F}^{2}$, both algorithms take time which is polynomial in $k$, $1/\epsilon$, and $log\left(1/\delta \right)$, where $\delta >0$ is a failure probability; the first takes time linear in $max\left(m,n\right)$ and the second takes time independent of $m$ and $n$. Our bounds improve previously published results with respect to the rank parameter $k$ for both the Frobenius and spectral norms. In addition, the proofs for the error bounds use a novel method that makes important use of matrix perturbation theory. The probability distribution over columns of $A$ and the rescaling are crucial features of the algorithms which must be chosen judiciously.

[For Part I see the authors, ibid. 36, No. 1, 132–157 (2006; Zbl 1111.68147), reviewed above.]

##### MSC:
 68W20 Randomized algorithms 65C05 Monte Carlo methods 68W25 Approximation algorithms