mlpack  master
Public Member Functions | Private Attributes | List of all members
mlpack::amf::SimpleToleranceTermination< MatType > Class Template Reference

This class implements residue tolerance termination policy. More...

Public Member Functions

 SimpleToleranceTermination (const double tolerance=1e-5, const size_t maxIterations=10000, const size_t reverseStepTolerance=3)
 empty constructor More...
 
const double & Index () const
 Get current value of residue. More...
 
void Initialize (const MatType &V)
 Initializes the termination policy before stating the factorization. More...
 
bool IsConverged (arma::mat &W, arma::mat &H)
 Check if termination criterio is met. More...
 
const size_t & Iteration () const
 Get current iteration count. More...
 
const size_t & MaxIterations () const
 Access upper limit of iteration count. More...
 
size_t & MaxIterations ()
 
const double & Tolerance () const
 Access tolerance value. More...
 
double & Tolerance ()
 

Private Attributes

double c_index
 
double c_indexOld
 
arma::mat H
 
bool isCopy
 indicates whether a copy of information is available which corresponds to minimum residue point More...
 
size_t iteration
 current iteration count More...
 
size_t maxIterations
 iteration threshold More...
 
double normOld
 
double residue
 
double residueOld
 residue values More...
 
size_t reverseStepCount
 successive residue drops More...
 
size_t reverseStepTolerance
 tolerance on successive residue drops More...
 
double tolerance
 tolerance More...
 
const MatType * V
 pointer to matrix being factorized More...
 
arma::mat W
 variables to store information of minimum residue poi More...
 

Detailed Description

template<class MatType>
class mlpack::amf::SimpleToleranceTermination< MatType >

This class implements residue tolerance termination policy.

Termination criterion is met when increase in residue value drops below the given tolerance. To accommodate spikes certain number of successive residue drops are accepted. This upper imit on successive drops can be adjusted with reverseStepCount. Secondary termination criterion terminates algorithm when iteration count goes above the threshold.

See also
AMF

Definition at line 31 of file simple_tolerance_termination.hpp.

Constructor & Destructor Documentation

template<class MatType >
mlpack::amf::SimpleToleranceTermination< MatType >::SimpleToleranceTermination ( const double  tolerance = 1e-5,
const size_t  maxIterations = 10000,
const size_t  reverseStepTolerance = 3 
)
inline

empty constructor

Definition at line 35 of file simple_tolerance_termination.hpp.

Member Function Documentation

template<class MatType >
const double& mlpack::amf::SimpleToleranceTermination< MatType >::Index ( ) const
inline

Get current value of residue.

Definition at line 149 of file simple_tolerance_termination.hpp.

References mlpack::amf::SimpleToleranceTermination< MatType >::residue.

template<class MatType >
void mlpack::amf::SimpleToleranceTermination< MatType >::Initialize ( const MatType &  V)
inline
template<class MatType >
bool mlpack::amf::SimpleToleranceTermination< MatType >::IsConverged ( arma::mat &  W,
arma::mat &  H 
)
inline
template<class MatType >
const size_t& mlpack::amf::SimpleToleranceTermination< MatType >::Iteration ( ) const
inline

Get current iteration count.

Definition at line 152 of file simple_tolerance_termination.hpp.

References mlpack::amf::SimpleToleranceTermination< MatType >::iteration.

template<class MatType >
const size_t& mlpack::amf::SimpleToleranceTermination< MatType >::MaxIterations ( ) const
inline

Access upper limit of iteration count.

Definition at line 155 of file simple_tolerance_termination.hpp.

References mlpack::amf::SimpleToleranceTermination< MatType >::maxIterations.

template<class MatType >
size_t& mlpack::amf::SimpleToleranceTermination< MatType >::MaxIterations ( )
inline
template<class MatType >
const double& mlpack::amf::SimpleToleranceTermination< MatType >::Tolerance ( ) const
inline

Access tolerance value.

Definition at line 159 of file simple_tolerance_termination.hpp.

References mlpack::amf::SimpleToleranceTermination< MatType >::tolerance.

template<class MatType >
double& mlpack::amf::SimpleToleranceTermination< MatType >::Tolerance ( )
inline

Member Data Documentation

template<class MatType >
double mlpack::amf::SimpleToleranceTermination< MatType >::c_index
private
template<class MatType >
double mlpack::amf::SimpleToleranceTermination< MatType >::c_indexOld
private
template<class MatType >
arma::mat mlpack::amf::SimpleToleranceTermination< MatType >::H
private
template<class MatType >
bool mlpack::amf::SimpleToleranceTermination< MatType >::isCopy
private

indicates whether a copy of information is available which corresponds to minimum residue point

Definition at line 186 of file simple_tolerance_termination.hpp.

Referenced by mlpack::amf::SimpleToleranceTermination< MatType >::Initialize(), and mlpack::amf::SimpleToleranceTermination< MatType >::IsConverged().

template<class MatType >
size_t mlpack::amf::SimpleToleranceTermination< MatType >::iteration
private
template<class MatType >
size_t mlpack::amf::SimpleToleranceTermination< MatType >::maxIterations
private
template<class MatType >
double mlpack::amf::SimpleToleranceTermination< MatType >::normOld
private

Definition at line 177 of file simple_tolerance_termination.hpp.

template<class MatType >
double mlpack::amf::SimpleToleranceTermination< MatType >::residue
private
template<class MatType >
double mlpack::amf::SimpleToleranceTermination< MatType >::residueOld
private
template<class MatType >
size_t mlpack::amf::SimpleToleranceTermination< MatType >::reverseStepCount
private
template<class MatType >
size_t mlpack::amf::SimpleToleranceTermination< MatType >::reverseStepTolerance
private

tolerance on successive residue drops

Definition at line 180 of file simple_tolerance_termination.hpp.

Referenced by mlpack::amf::SimpleToleranceTermination< MatType >::IsConverged().

template<class MatType >
double mlpack::amf::SimpleToleranceTermination< MatType >::tolerance
private
template<class MatType >
const MatType* mlpack::amf::SimpleToleranceTermination< MatType >::V
private
template<class MatType >
arma::mat mlpack::amf::SimpleToleranceTermination< MatType >::W
private

variables to store information of minimum residue poi

Definition at line 189 of file simple_tolerance_termination.hpp.

Referenced by mlpack::amf::SimpleToleranceTermination< MatType >::IsConverged().


The documentation for this class was generated from the following file: