14 #ifndef MLPACK_METHODS_PCA_DECOMPOSITION_POLICIES_QUIC_SVD_METHOD_HPP 15 #define MLPACK_METHODS_PCA_DECOMPOSITION_POLICIES_QUIC_SVD_METHOD_HPP 54 void Apply(
const arma::mat& data,
55 const arma::mat& centeredData,
56 arma::mat& transformedData,
70 eigVal = arma::pow(arma::diagvec(sigma), 2) / (data.n_cols - 1);
73 transformedData = arma::trans(eigvec) * centeredData;
Linear algebra utility functions, generally performed on matrices or vectors.
The core includes that mlpack expects; standard C++ includes and Armadillo.
double & Epsilon()
Modify the error tolerance fraction for calculated subspace.
double epsilon
Error tolerance fraction for calculated subspace.
QUICSVDPolicy(const double epsilon=0.03, const double delta=0.1)
Use QUIC-SVD method to perform the principal components analysis (PCA).
double & Delta()
Modify the cumulative probability for Monte Carlo error lower bound.
void Apply(const arma::mat &data, const arma::mat ¢eredData, arma::mat &transformedData, arma::vec &eigVal, arma::mat &eigvec, const size_t)
Apply Principal Component Analysis to the provided data set using the QUIC-SVD method.
double Epsilon() const
Get the error tolerance fraction for calculated subspace.
double delta
Cumulative probability for Monte Carlo error lower bound.
double Delta() const
Get the cumulative probability for Monte Carlo error lower bound.
QUIC-SVD is a matrix factorization technique, which operates in a subspace such that A's approximatio...
Implementation of the QUIC-SVD policy.