13 #ifndef MLPACK_METHODS_MATRIX_COMPLETION_MATRIX_COMPLETION_HPP 14 #define MLPACK_METHODS_MATRIX_COMPLETION_MATRIX_COMPLETION_HPP 16 #include <ensmallen.hpp> 20 namespace matrix_completion {
70 const arma::umat& indices,
71 const arma::vec& values,
88 const arma::umat& indices,
89 const arma::vec& values,
90 const arma::mat& initialPoint);
104 const arma::umat& indices,
105 const arma::vec& values);
112 void Recover(arma::mat& recovered);
115 const ens::LRSDP<ens::SDP<arma::sp_mat>>&
Sdp()
const 120 ens::LRSDP<ens::SDP<arma::sp_mat>>&
Sdp() {
return sdp; }
133 ens::LRSDP<ens::SDP<arma::sp_mat>> sdp;
142 static size_t DefaultRank(
const size_t m,
const size_t n,
const size_t p);
Linear algebra utility functions, generally performed on matrices or vectors.
MatrixCompletion(const size_t m, const size_t n, const arma::umat &indices, const arma::vec &values, const size_t r)
Construct a matrix completion problem, specifying the maximum rank of the solution.
The core includes that mlpack expects; standard C++ includes and Armadillo.
ens::LRSDP< ens::SDP< arma::sp_mat > > & Sdp()
Modify the underlying SDP.
const ens::LRSDP< ens::SDP< arma::sp_mat > > & Sdp() const
Return the underlying SDP.
void Recover(arma::mat &recovered)
Solve the underlying SDP to fill in the remaining values.
This class implements the popular nuclear norm minimization heuristic for matrix completion problems...