OpenNN
2.2
Open Neural Networks Library
|
#include <random_search.h>
Classes | |
struct | RandomSearchResults |
Private Attributes | |
double | first_training_rate |
double | training_rate_reduction_factor |
size_t | training_rate_reduction_period |
double | warning_parameters_norm |
double | warning_training_rate |
double | error_parameters_norm |
double | error_training_rate |
double | performance_goal |
size_t | maximum_generalization_performance_decreases |
size_t | maximum_iterations_number |
double | maximum_time |
bool | reserve_parameters_history |
bool | reserve_parameters_norm_history |
bool | reserve_performance_history |
bool | reserve_generalization_performance_history |
bool | reserve_training_direction_history |
bool | reserve_training_direction_norm_history |
bool | reserve_training_rate_history |
bool | reserve_elapsed_time_history |
Additional Inherited Members | |
Protected Attributes inherited from OpenNN::TrainingAlgorithm | |
PerformanceFunctional * | performance_functional_pointer |
size_t | display_period |
size_t | save_period |
std::string | neural_network_file_name |
bool | display |
This concrete class represents a random search training algorithm for a performance functional of a neural network.
Definition at line 45 of file random_search.h.
|
explicit |
Default constructor. It creates a random search training algorithm not associated to any performance functional object. It also initializes the class members to their default values.
Definition at line 27 of file random_search.cpp.
|
explicit |
Performance functional constructor. It creates a random search training algorithm associated to a performance functional object. It also initializes the class members to their default values.
new_performance_functional_pointer | Pointer to a performance functional object. |
Definition at line 41 of file random_search.cpp.
|
explicit |
XML constructor. It creates a random search training algorithm not associated to any performance functional object. It also loads the rest of class members from a XML document.
document | TinyXML document containing the members of a random search object. |
Definition at line 55 of file random_search.cpp.
|
virtual |
Destructor. It does not delete any object.
Definition at line 66 of file random_search.cpp.
|
virtual |
Loads a default training algorithm from a XML document.
document | TinyXML document containing the performance term members. |
Reimplemented from OpenNN::TrainingAlgorithm.
Definition at line 1559 of file random_search.cpp.
const double & OpenNN::RandomSearch::get_error_parameters_norm | ( | void | ) | const |
Returns the value for the norm of the parameters vector at wich an error message is written to the screen and the program exits.
Definition at line 97 of file random_search.cpp.
const double & OpenNN::RandomSearch::get_error_training_rate | ( | void | ) | const |
Returns the training rate value at wich the line minimization algorithm is assumed to fail when bracketing a minimum.
Definition at line 108 of file random_search.cpp.
const double & OpenNN::RandomSearch::get_performance_goal | ( | void | ) | const |
Returns the goal value for the performance. This is used as a stopping criterion when training a multilayer perceptron
Definition at line 119 of file random_search.cpp.
|
virtual |
Trains a neural network with an associated performance functional according to the random search training algorithm. Training occurs according to the training parameters.
Implements OpenNN::TrainingAlgorithm.
Definition at line 898 of file random_search.cpp.
|
virtual |
Sets all the random search object members to their default values:
Reimplemented from OpenNN::TrainingAlgorithm.
Definition at line 263 of file random_search.cpp.
void OpenNN::RandomSearch::set_display_period | ( | const size_t & | new_display_period | ) |
Sets a new number of iterations between the training showing progress.
new_display_period | Number of iterations between the training showing progress. |
Definition at line 650 of file random_search.cpp.
void OpenNN::RandomSearch::set_error_parameters_norm | ( | const double & | new_error_parameters_norm | ) |
Sets a new value for the parameters vector norm at which an error message is written to the screen and the program exits.
new_error_parameters_norm | Error norm of parameters vector value. |
Definition at line 462 of file random_search.cpp.
void OpenNN::RandomSearch::set_error_training_rate | ( | const double & | new_error_training_rate | ) |
Sets a new training rate value at wich a the line minimization algorithm is assumed to fail when bracketing a minimum.
new_error_training_rate | Error training rate value. |
Definition at line 493 of file random_search.cpp.
void OpenNN::RandomSearch::set_first_training_rate | ( | const double & | new_first_training_rate | ) |
Sets the initial training rate in the random search. The training rate is the step given in some training direction.
new_first_training_rate | Firs training rate value. |
Definition at line 309 of file random_search.cpp.
void OpenNN::RandomSearch::set_maximum_generalization_performance_decreases | ( | const size_t & | new_maximum_generalization_performance_decreases | ) |
Sets a new maximum number of generalization failures.
new_maximum_generalization_performance_decreases | Maximum number of iterations in which the generalization evalutation decreases. |
Definition at line 535 of file random_search.cpp.
void OpenNN::RandomSearch::set_maximum_iterations_number | ( | const size_t & | new_maximum_iterations_number | ) |
Sets a maximum number of iterations for training.
new_maximum_iterations_number | Maximum number of iterations for training. |
Definition at line 548 of file random_search.cpp.
void OpenNN::RandomSearch::set_maximum_time | ( | const double & | new_maximum_time | ) |
Sets a new maximum training time.
new_maximum_time | Maximum training time. |
Definition at line 559 of file random_search.cpp.
void OpenNN::RandomSearch::set_performance_goal | ( | const double & | new_performance_goal | ) |
Sets a new goal value for the performance. This is used as a stopping criterion when training a multilayer perceptron
new_performance_goal | Goal value for the performance. |
Definition at line 524 of file random_search.cpp.
|
virtual |
Makes the training history of all variables to be reseved or not in memory.
Makes the training history of all variables to reseved or not in memory.
new_reserve_all_training_history | True if the training history of all variables is to be reserved, false otherwise. |
Definition at line 378 of file random_search.cpp.
void OpenNN::RandomSearch::set_reserve_elapsed_time_history | ( | const bool & | new_reserve_elapsed_time_history | ) |
Makes the elapsed time over the iterations to be reseved or not in memory. This is a vector.
new_reserve_elapsed_time_history | True if the elapsed time history vector is to be reserved, false otherwise. |
Definition at line 626 of file random_search.cpp.
void OpenNN::RandomSearch::set_reserve_generalization_performance_history | ( | const bool & | new_reserve_generalization_performance_history | ) |
Makes the Generalization performance history to be reserved or not in memory. This is a vector.
new_reserve_generalization_performance_history | True if the Generalization performance history is to be reserved, false otherwise. |
Definition at line 638 of file random_search.cpp.
void OpenNN::RandomSearch::set_reserve_parameters_history | ( | const bool & | new_reserve_parameters_history | ) |
Makes the potential parameters history vector of vectors to be reseved or not in memory.
new_reserve_parameters_history | True if the potential parameters history is to be reserved, false otherwise. |
Definition at line 342 of file random_search.cpp.
void OpenNN::RandomSearch::set_reserve_parameters_norm_history | ( | const bool & | new_reserve_parameters_norm_history | ) |
Makes the potential parameters norm history vector to be reseved or not in memory.
new_reserve_parameters_norm_history | True if the potential parameters norm history is to be reserved, false otherwise. |
Definition at line 354 of file random_search.cpp.
void OpenNN::RandomSearch::set_reserve_performance_history | ( | const bool & | new_reserve_performance_history | ) |
Makes the potential performance history vector to be reseved or not in memory.
new_reserve_performance_history | True if the potential performance history is to be reserved, false otherwise. |
Definition at line 366 of file random_search.cpp.
void OpenNN::RandomSearch::set_reserve_training_direction_history | ( | const bool & | new_reserve_training_direction_history | ) |
Makes the training direction history vector of vectors to be reseved or not in memory.
new_reserve_training_direction_history | True if the training direction history matrix is to be reserved, false otherwise. |
Definition at line 590 of file random_search.cpp.
void OpenNN::RandomSearch::set_reserve_training_direction_norm_history | ( | const bool & | new_reserve_training_direction_norm_history | ) |
Makes the training direction norm history vector to be reseved or not in memory.
new_reserve_training_direction_norm_history | True if the history of the norm of the training direction is to be reserved, false otherwise. |
Definition at line 602 of file random_search.cpp.
void OpenNN::RandomSearch::set_reserve_training_rate_history | ( | const bool & | new_reserve_training_rate_history | ) |
Makes the training rate history vector to be reseved or not in memory.
new_reserve_training_rate_history | True if the training rate history vector is to be reserved, false otherwise. |
Definition at line 614 of file random_search.cpp.
void OpenNN::RandomSearch::set_training_rate_reduction_factor | ( | const double & | new_training_rate_reduction_factor | ) |
Sets a new value for the reduction factor of the training rate.
new_training_rate_reduction_factor | Reduction factor value. |
Definition at line 320 of file random_search.cpp.
void OpenNN::RandomSearch::set_training_rate_reduction_period | ( | const size_t & | new_training_rate_reduction_period | ) |
Sets a new period value for the reduction of the training rate. This is measured in training iterations.
new_training_rate_reduction_period | Reduction period for the training rate. |
Definition at line 331 of file random_search.cpp.
void OpenNN::RandomSearch::set_warning_parameters_norm | ( | const double & | new_warning_parameters_norm | ) |
Sets a new value for the parameters vector norm at which a warning message is written to the screen.
new_warning_parameters_norm | Warning norm of parameters vector value. |
Definition at line 401 of file random_search.cpp.
void OpenNN::RandomSearch::set_warning_training_rate | ( | const double & | new_warning_training_rate | ) |
Sets a new training rate value at wich a warning message is written to the screen during line minimization.
new_warning_training_rate | Warning training rate value. |
Definition at line 433 of file random_search.cpp.
|
virtual |
Returns a default (empty) string matrix containing the members of the training algorithm object.
Reimplemented from OpenNN::TrainingAlgorithm.
Definition at line 1174 of file random_search.cpp.
|
virtual |
Prints to the screen the training parameters, the stopping criteria and other user stuff concerning the random search object.
Reimplemented from OpenNN::TrainingAlgorithm.
Definition at line 1286 of file random_search.cpp.
|
private |
Maximum number of iterations at which the generalization performance decreases. This is an early stopping method for improving generalization.
Definition at line 322 of file random_search.h.
|
private |
Factor which reduces the training rate. It must be greater than zero and less than one.
Definition at line 290 of file random_search.h.