mlpack 3.4.2
regularized_svd.hpp
Go to the documentation of this file.
1
13#ifndef MLPACK_METHODS_REGULARIZED_SVD_REGULARIZED_SVD_HPP
14#define MLPACK_METHODS_REGULARIZED_SVD_REGULARIZED_SVD_HPP
15
16#include <mlpack/prereqs.hpp>
17#include <ensmallen.hpp>
19
21
22namespace mlpack {
23namespace svd {
24
57template<typename OptimizerType = ens::StandardSGD>
59{
60 public:
71 RegularizedSVD(const size_t iterations = 10,
72 const double alpha = 0.01,
73 const double lambda = 0.02);
74
83 void Apply(const arma::mat& data,
84 const size_t rank,
85 arma::mat& u,
86 arma::mat& v);
87
88 private:
90 size_t iterations;
92 double alpha;
94 double lambda;
95};
96
97} // namespace svd
98} // namespace mlpack
99
100// Include implementation.
101#include "regularized_svd_impl.hpp"
102
103#endif
Regularized SVD is a matrix factorization technique that seeks to reduce the error on the training se...
void Apply(const arma::mat &data, const size_t rank, arma::mat &u, arma::mat &v)
Obtains the user and item matrices using the provided data and rank.
RegularizedSVD(const size_t iterations=10, const double alpha=0.01, const double lambda=0.02)
Constructor for Regularized SVD.
Linear algebra utility functions, generally performed on matrices or vectors.
Definition: cv.hpp:1
The core includes that mlpack expects; standard C++ includes and Armadillo.