mlpack
master
|
This class implements validation termination policy based on RMSE index. More...
Public Member Functions | |
ValidationRMSETermination (MatType &V, size_t num_test_points, double tolerance=1e-5, size_t maxIterations=10000, size_t reverseStepTolerance=3) | |
Create a validation set according to given parameters and nullifies this set in data matrix(training set). More... | |
const double & | Index () const |
Get current value of residue. More... | |
void | Initialize (const MatType &) |
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 size_t & | NumTestPoints () const |
Get number of validation points. More... | |
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 |
max iteration limit More... | |
size_t | num_test_points |
number of validation test points More... | |
size_t | reverseStepCount |
successive residue drops More... | |
size_t | reverseStepTolerance |
tolerance on successive residue drops More... | |
double | rmse |
double | rmseOld |
rmse values More... | |
arma::mat | test_points |
validation point matrix More... | |
double | tolerance |
tolerance More... | |
arma::mat | W |
variables to store information of minimum residue point More... | |
This class implements validation termination policy based on RMSE index.
The input data matrix is divided into 2 sets, training set and validation set. Entries of validation set are nullifed in the input matrix. Termination criterion is met when increase in validation set RMSe value drops below the given tolerance. To accommodate spikes certain number of successive validation RMSE 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.
Definition at line 37 of file validation_RMSE_termination.hpp.
|
inline |
Create a validation set according to given parameters and nullifies this set in data matrix(training set).
V | Input matrix to be factorized. |
num_test_points | number of validation test points |
maxIterations | max iteration count before termination |
reverseStepTolerance | max successive RMSE drops allowed |
Definition at line 49 of file validation_RMSE_termination.hpp.
References mlpack::amf::ValidationRMSETermination< MatType >::num_test_points, and mlpack::amf::ValidationRMSETermination< MatType >::test_points.
|
inline |
Get current value of residue.
Definition at line 187 of file validation_RMSE_termination.hpp.
References mlpack::amf::ValidationRMSETermination< MatType >::rmse.
|
inline |
Initializes the termination policy before stating the factorization.
V | Input matrix to be factorized. |
Definition at line 94 of file validation_RMSE_termination.hpp.
References mlpack::amf::ValidationRMSETermination< MatType >::c_index, mlpack::amf::ValidationRMSETermination< MatType >::c_indexOld, mlpack::amf::ValidationRMSETermination< MatType >::isCopy, mlpack::amf::ValidationRMSETermination< MatType >::iteration, mlpack::amf::ValidationRMSETermination< MatType >::reverseStepCount, mlpack::amf::ValidationRMSETermination< MatType >::rmse, and mlpack::amf::ValidationRMSETermination< MatType >::rmseOld.
|
inline |
Check if termination criterio is met.
W | Basis matrix of output. |
H | Encoding matrix of output. |
Definition at line 114 of file validation_RMSE_termination.hpp.
References mlpack::amf::ValidationRMSETermination< MatType >::c_index, mlpack::amf::ValidationRMSETermination< MatType >::c_indexOld, mlpack::amf::ValidationRMSETermination< MatType >::H, mlpack::amf::ValidationRMSETermination< MatType >::isCopy, mlpack::amf::ValidationRMSETermination< MatType >::iteration, mlpack::amf::ValidationRMSETermination< MatType >::maxIterations, mlpack::amf::ValidationRMSETermination< MatType >::num_test_points, mlpack::amf::ValidationRMSETermination< MatType >::reverseStepCount, mlpack::amf::ValidationRMSETermination< MatType >::reverseStepTolerance, mlpack::amf::ValidationRMSETermination< MatType >::rmse, mlpack::amf::ValidationRMSETermination< MatType >::rmseOld, mlpack::amf::ValidationRMSETermination< MatType >::test_points, and mlpack::amf::ValidationRMSETermination< MatType >::W.
|
inline |
Get current iteration count.
Definition at line 190 of file validation_RMSE_termination.hpp.
References mlpack::amf::ValidationRMSETermination< MatType >::iteration.
|
inline |
Access upper limit of iteration count.
Definition at line 196 of file validation_RMSE_termination.hpp.
References mlpack::amf::ValidationRMSETermination< MatType >::maxIterations.
|
inline |
Definition at line 197 of file validation_RMSE_termination.hpp.
References mlpack::amf::ValidationRMSETermination< MatType >::maxIterations.
|
inline |
Get number of validation points.
Definition at line 193 of file validation_RMSE_termination.hpp.
References mlpack::amf::ValidationRMSETermination< MatType >::num_test_points.
|
inline |
Access tolerance value.
Definition at line 200 of file validation_RMSE_termination.hpp.
References mlpack::amf::ValidationRMSETermination< MatType >::tolerance.
|
inline |
Definition at line 201 of file validation_RMSE_termination.hpp.
References mlpack::amf::ValidationRMSETermination< MatType >::tolerance.
|
private |
Definition at line 234 of file validation_RMSE_termination.hpp.
Referenced by mlpack::amf::ValidationRMSETermination< MatType >::Initialize(), and mlpack::amf::ValidationRMSETermination< MatType >::IsConverged().
|
private |
Definition at line 233 of file validation_RMSE_termination.hpp.
Referenced by mlpack::amf::ValidationRMSETermination< MatType >::Initialize(), and mlpack::amf::ValidationRMSETermination< MatType >::IsConverged().
|
private |
Definition at line 232 of file validation_RMSE_termination.hpp.
Referenced by mlpack::amf::ValidationRMSETermination< MatType >::IsConverged().
|
private |
indicates whether a copy of information is available which corresponds to minimum residue point
Definition at line 228 of file validation_RMSE_termination.hpp.
Referenced by mlpack::amf::ValidationRMSETermination< MatType >::Initialize(), and mlpack::amf::ValidationRMSETermination< MatType >::IsConverged().
|
private |
current iteration count
Definition at line 212 of file validation_RMSE_termination.hpp.
Referenced by mlpack::amf::ValidationRMSETermination< MatType >::Initialize(), mlpack::amf::ValidationRMSETermination< MatType >::IsConverged(), and mlpack::amf::ValidationRMSETermination< MatType >::Iteration().
|
private |
max iteration limit
Definition at line 207 of file validation_RMSE_termination.hpp.
Referenced by mlpack::amf::ValidationRMSETermination< MatType >::IsConverged(), and mlpack::amf::ValidationRMSETermination< MatType >::MaxIterations().
|
private |
number of validation test points
Definition at line 209 of file validation_RMSE_termination.hpp.
Referenced by mlpack::amf::ValidationRMSETermination< MatType >::IsConverged(), mlpack::amf::ValidationRMSETermination< MatType >::NumTestPoints(), and mlpack::amf::ValidationRMSETermination< MatType >::ValidationRMSETermination().
|
private |
successive residue drops
Definition at line 224 of file validation_RMSE_termination.hpp.
Referenced by mlpack::amf::ValidationRMSETermination< MatType >::Initialize(), and mlpack::amf::ValidationRMSETermination< MatType >::IsConverged().
|
private |
tolerance on successive residue drops
Definition at line 222 of file validation_RMSE_termination.hpp.
Referenced by mlpack::amf::ValidationRMSETermination< MatType >::IsConverged().
|
private |
|
private |
rmse values
Definition at line 218 of file validation_RMSE_termination.hpp.
Referenced by mlpack::amf::ValidationRMSETermination< MatType >::Initialize(), and mlpack::amf::ValidationRMSETermination< MatType >::IsConverged().
|
private |
validation point matrix
Definition at line 215 of file validation_RMSE_termination.hpp.
Referenced by mlpack::amf::ValidationRMSETermination< MatType >::IsConverged(), and mlpack::amf::ValidationRMSETermination< MatType >::ValidationRMSETermination().
|
private |
tolerance
Definition at line 205 of file validation_RMSE_termination.hpp.
Referenced by mlpack::amf::ValidationRMSETermination< MatType >::Tolerance().
|
private |
variables to store information of minimum residue point
Definition at line 231 of file validation_RMSE_termination.hpp.
Referenced by mlpack::amf::ValidationRMSETermination< MatType >::IsConverged().