Randomized Matrix Decompositions using R
arXiv:1608.02148 · doi:10.18637/jss.v089.i11
Abstract
Matrix decompositions are fundamental tools in the area of applied mathematics, statistical computing, and machine learning. In particular, low-rank matrix decompositions are vital, and widely used for data analysis, dimensionality reduction, and data compression. Massive datasets, however, pose a computational challenge for traditional algorithms, placing significant constraints on both memory and processing power. Recently, the powerful concept of randomness has been introduced as a strategy to ease the computational load. The essential idea of probabilistic algorithms is to employ some amount of randomness in order to derive a smaller matrix from a high-dimensional data matrix. The smaller matrix is then used to compute the desired low-rank approximation. Such algorithms are shown to be computationally efficient for approximating matrices with low-rank structure. We present the \proglang{R} package rsvd, and provide a tutorial introduction to randomized matrix decompositions. Specifically, randomized routines for the singular value decomposition, (robust) principal component analysis, interpolative decomposition, and CUR decomposition are discussed. Several examples demonstrate the routines, and show the computational advantage over other methods implemented in R.
References in corpus (11)
- The Augmented Lagrange Multiplier Method for Exact Recovery of Corrupted Low-Rank Matrices
- Optimal whitening and decorrelation
- Linear Dimensionality Reduction: Survey, Insights, and Generalizations
- Decomposition into Low-rank plus Additive Matrices for Background/Foreground Separation: A Review for a Comparative Evaluation with a Large-Scale Dataset
- Improving CUR Matrix Decomposition and the Nyström Approximation via Adaptive Sampling
- Randomized Dynamic Mode Decomposition
- Randomized QR with Column Pivoting
- Randomized Low-Rank Dynamic Mode Decomposition for Motion Detection
- An implementation of a randomized algorithm for principal component analysis
- RSVDPACK: An implementation of randomized algorithms for computing the singular value, interpolative, and CUR decompositions of matrices on multi-core and GPU architectures
- A randomized algorithm for principal component analysis
Cited by in corpus (20)
- Shallow Neural Networks for Fluid Flow Reconstruction with Limited Sensors
- Sparse Principal Component Analysis via Variable Projection
- Bagging, optimized dynamic mode decomposition (BOP-DMD) for robust, stable forecasting with spatial and temporal uncertainty-quantification
- Randomized resolvent analysis
- Randomized Nonnegative Matrix Factorization
- Coupled and Uncoupled Dynamic Mode Decomposition in Multi-Compartmental Systems with Applications to Epidemiological and Additive Manufacturing Problems
- Eigen-spectrograms: An interpretable feature space for bearing fault diagnosis based on artificial intelligence and image processing
- Randomized methods to characterize large-scale vortical flow network
- Shape Constrained Tensor Decompositions using Sparse Representations in Over-Complete Libraries
- Phase transition of four-dimensional Ising model with tensor network scheme
- Randomized spectral co-clustering for large-scale directed networks
- How to reduce dimension with PCA and random projections?
- Automating Artifact Detection in Video Games
- Analysis of the rSVDdpd Algorithm: A Robust Singular Value Decomposition Method using Density Power Divergence
- rSVDdpd: A Robust Scalable Video Surveillance Background Modelling Algorithm
- Diffusion Maps meet Nyström
- Randomized Projection for Rank-Revealing Matrix Factorizations and Low-Rank Approximations
- A Highly Effective Low-Rank Compression of Deep Neural Networks with Modified Beam-Search and Modified Stable Rank
- RetinaMatch: Efficient Template Matching of Retina Images for Teleophthalmology
- A Coupled Random Projection Approach to Large-Scale Canonical Polyadic Decomposition