qb: QB decomposition

Description Usage Arguments Value References

View source: R/utilities.R

Description

QB decomposition is an approximation algorithm for the QR decomposition. Let the approximation to Q be the approximation to the 'true' Q, and B be a matrix of basis vectors, B=Q'X. The original input matrix X can be approximated using Q and B as X = QB. This is based on the rqb function in the rsvd package, but with a few changes to increase the speed and adaptive setting of default arguments when not specfied by the user.

Usage

1
qb(X, k = NULL, p = NULL, q = NULL, rand = TRUE)

Arguments

X

the matrix to be decomposed

k

target rank. if left as NULL the rank is set as the number of columns in X.

p

oversampling factor. higher values improve accuracy, but come at the expense of increased computing time when dealing with very large matrices. if left as NULL a value will be chosen based on the size of the matrix.

q

number of power iterations. higher values reflect a faster decrease in the singluar values of the matrix (ie, a few large values and suddenly much smaller ones). lower values reflect more smoothly decaying singular values. if left as NULL a value will be chosen based on the dimensions of the matrix.

rand

determines whether a randomized algorithm should be used. defaults to TRUE. setting to FALSE increases the speed of computation, but may lead to a decrease in accuracy.

Value

a list containing named matrices Q and B

References

Halko, N., Martinsson, P., & Tropp, J. (2011) Finding structure with randomness: probabilistic algorithms for constructing approximate matrix decompositions. SIAM J. Review., 53(2), 217–288, doi:10.1137/090771806

Martinsson, P. & Voronin, S. (2015) Randomized Blocked Algorithm for Efficiently Computing Rank-revealing Factorizations of Matrices. SIAM J. Sci. Comput., 38(5), 485–507, doi:10.1137/15M1026080


abnormally-distributed/cvreg documentation built on May 3, 2020, 3:45 p.m.