mlpack  2.0.1
quic_svd.hpp
Go to the documentation of this file.
1 
14 #ifndef __MLPACK_METHODS_QUIC_SVD_QUIC_SVD_HPP
15 #define __MLPACK_METHODS_QUIC_SVD_QUIC_SVD_HPP
16 
17 #include <mlpack/core.hpp>
19 
20 namespace mlpack {
21 namespace svd {
22 
55 class QUIC_SVD
56 {
57  public:
72  QUIC_SVD(const arma::mat& dataset,
73  arma::mat& u,
74  arma::mat& v,
75  arma::mat& sigma,
76  const double epsilon = 0.03,
77  const double delta = 0.1);
78 
87  void ExtractSVD(arma::mat& u,
88  arma::mat& v,
89  arma::mat& sigma);
90 
91  private:
93  const arma::mat& dataset;
95  arma::mat basis;
96 };
97 
98 } // namespace svd
99 } // namespace mlpack
100 
101 // Include implementation.
102 #include "quic_svd_impl.hpp"
103 
104 #endif
Linear algebra utility functions, generally performed on matrices or vectors.
arma::mat basis
Subspace basis of the input dataset.
Definition: quic_svd.hpp:95
void ExtractSVD(arma::mat &u, arma::mat &v, arma::mat &sigma)
This function uses the vector subspace created using a cosine tree to calculate an approximate SVD of...
Include all of the base components required to write MLPACK methods, and the main MLPACK Doxygen docu...
QUIC_SVD(const arma::mat &dataset, arma::mat &u, arma::mat &v, arma::mat &sigma, const double epsilon=0.03, const double delta=0.1)
Constructor which implements the QUIC-SVD algorithm.
QUIC-SVD is a matrix factorization technique, which operates in a subspace such that A's approximatio...
Definition: quic_svd.hpp:55
const arma::mat & dataset
Matrix for which cosine tree is constructed.
Definition: quic_svd.hpp:93