Algorithm 971: An Implementation of a Randomized Algorithm for Principal Component Analysis

By Huamin Li, George C. Linderman, Arthur Szlam, Kelly P. Stanton, Yuval Kluger, Mark Tygert. 2017

69 citations recorded by the source corpus.

Recent years have witnessed intense development of randomized methods for low-rank approximation. These methods target principal component analysis and the calculation of truncated singular value decompositions. The present article presents an essentially black-box, foolproof implementation for Mathworks’ MATLAB, a popular software platform for numerical computation. As illustrated via several tests, the randomized algorithms for low-rank approximation outperform or at least match the classical deterministic techniques (such as Lanczos iterations run to convergence) in basically all respects: accuracy, computational efficiency (both speed and memory usage), ease-of-use, parallelizability, and reliability. However, the classical procedures remain the methods of choice for estimating spectral norms and are far superior for calculating the least singular values and corresponding singular vectors (or singular subspaces).

Subfields: Artificial Intelligence, Atomic and Molecular Physics, and Optics, Computational Mechanics

How researchers see this paper

The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.

In Artificial Intelligence

  1. Joel A. Tropp
  2. Yuval Kluger
  3. George C. Linderman
  4. Stefan Steinerberger
  5. M. Rachh
  6. Jeremy G. Hoskins
  7. Per-Gunnar Martinsson
  8. David P. Woodruff

In Atomic and Molecular Physics, and Optics

  1. Joel A. Tropp
  2. Per-Gunnar Martinsson
  3. David J. Biagioni
  4. Vladimir Rokhlin

In Computational Mechanics

  1. Joel A. Tropp
  2. Yuval Kluger
  3. George C. Linderman
  4. Per-Gunnar Martinsson
  5. Stefan Steinerberger
  6. M. Rachh
  7. Jeremy G. Hoskins
  8. Martin J. Wainwright

Citations in the corpus