English

An implementation of a randomized algorithm for principal component analysis

Computation 2017-01-02 v1 Mathematical Software

Abstract

Recent years have witnessed intense development of randomized methods for low-rank approximation. These methods target principal component analysis (PCA) and the calculation of truncated singular value decompositions (SVD). The present paper presents an essentially black-box, fool-proof 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 techniques (such as Lanczos iterations) 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).

Keywords

Cite

@article{arxiv.1412.3510,
  title  = {An implementation of a randomized algorithm for principal component analysis},
  author = {Arthur Szlam and Yuval Kluger and Mark Tygert},
  journal= {arXiv preprint arXiv:1412.3510},
  year   = {2017}
}

Comments

13 pages, 4 figures

R2 v1 2026-06-22T07:27:17.355Z