mlpack
master
|
This class acts as a wrapper for basic termination policies to be used by SVDCompleteIncrementalLearning. More...
Public Member Functions | |
CompleteIncrementalTermination (TerminationPolicy tPolicy=TerminationPolicy()) | |
Empty constructor. More... | |
const double & | Index () const |
Get current value of residue. More... | |
template<class MatType > | |
void | Initialize (const MatType &V) |
Initializes the termination policy before stating the factorization. More... | |
void | Initialize (const arma::sp_mat &V) |
Initializes the termination policy before stating the factorization. More... | |
bool | IsConverged (arma::mat &W, arma::mat &H) |
Check if termination criterion is met, if the current iteration means that each point has been visited. 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 () |
Modify maximum number of iterations. More... | |
const TerminationPolicy & | TPolicy () const |
Access the wrapped termination policy. More... | |
TerminationPolicy & | TPolicy () |
Modify the wrapped termination policy. More... | |
Private Attributes | |
size_t | incrementalIndex |
Number of iterations after which wrapped termination policy will be called. More... | |
size_t | iteration |
Current iteration number. More... | |
TerminationPolicy | tPolicy |
Wrapped termination policy. More... | |
This class acts as a wrapper for basic termination policies to be used by SVDCompleteIncrementalLearning.
This class calls the wrapped class functions after every n calls to main class functions where n is the number of non-zero entries in the matrix being factorized. This is necessary for SVDCompleteIncrementalLearning, because otherwise IsConverged() is called after every point, which is very slow.
Definition at line 29 of file complete_incremental_termination.hpp.
|
inline |
Empty constructor.
tPolicy | object of wrapped class. |
Definition at line 37 of file complete_incremental_termination.hpp.
|
inline |
Get current value of residue.
Definition at line 92 of file complete_incremental_termination.hpp.
References mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::tPolicy.
|
inline |
Initializes the termination policy before stating the factorization.
V | Input matrix to be factorized. |
Definition at line 47 of file complete_incremental_termination.hpp.
References mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::incrementalIndex, mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::iteration, and mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::tPolicy.
|
inline |
Initializes the termination policy before stating the factorization.
This is a specialization for sparse matrices.
V | Input matrix to be factorized. |
Definition at line 62 of file complete_incremental_termination.hpp.
References mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::incrementalIndex, mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::iteration, and mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::tPolicy.
|
inline |
Check if termination criterion is met, if the current iteration means that each point has been visited.
W | Basis matrix of output. |
H | Encoding matrix of output. |
Definition at line 78 of file complete_incremental_termination.hpp.
References mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::incrementalIndex, mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::iteration, and mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::tPolicy.
|
inline |
Get current iteration count.
Definition at line 95 of file complete_incremental_termination.hpp.
References mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::iteration.
|
inline |
Access upper limit of iteration count.
Definition at line 98 of file complete_incremental_termination.hpp.
References mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::tPolicy.
|
inline |
Modify maximum number of iterations.
Definition at line 100 of file complete_incremental_termination.hpp.
References mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::tPolicy.
|
inline |
Access the wrapped termination policy.
Definition at line 103 of file complete_incremental_termination.hpp.
References mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::tPolicy.
|
inline |
Modify the wrapped termination policy.
Definition at line 105 of file complete_incremental_termination.hpp.
References mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::tPolicy.
|
private |
Number of iterations after which wrapped termination policy will be called.
Definition at line 113 of file complete_incremental_termination.hpp.
Referenced by mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::Initialize(), and mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::IsConverged().
|
private |
Current iteration number.
Definition at line 115 of file complete_incremental_termination.hpp.
Referenced by mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::Initialize(), mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::IsConverged(), and mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::Iteration().
|
private |
Wrapped termination policy.
Definition at line 109 of file complete_incremental_termination.hpp.
Referenced by mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::Index(), mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::Initialize(), mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::IsConverged(), mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::MaxIterations(), and mlpack::amf::CompleteIncrementalTermination< TerminationPolicy >::TPolicy().