OpenNN
Open-source neural networks library
Loading...
Searching...
No Matches
opennn::TrainingResults Struct Reference

Per-epoch error history and final summary produced by Optimizer::train(). More...

#include <optimizer.h>

Public Member Functions

 TrainingResults (const Index expected_epochs=0)
 Constructs a TrainingResults pre-sized for an expected epoch count.
 
virtual ~TrainingResults ()=default
 Virtual destructor.
 
string write_stopping_condition () const
 Returns the canonical string name of the stopping condition.
 
float get_training_error () const
 Final training error (last entry of training_error_history).
 
float get_validation_error () const
 Final validation error (last entry of validation_error_history).
 
Index get_epochs_number () const
 Number of epochs effectively run.
 
void save (const filesystem::path &) const
 Saves the training results (history and final summary) to a file.
 
void print (const string &message=string()) const
 Prints a human-readable summary to stdout.
 
Tensor< string, 2 > write_override_results (const Index decimals=3) const
 Returns a 2D string table summarizing the training run.
 
void resize_training_error_history (const Index)
 Resizes the training error history.
 
void resize_validation_error_history (const Index)
 Resizes the validation error history.
 

Public Attributes

Optimizer::StoppingCondition stopping_condition = Optimizer::StoppingCondition::None
 Stopping condition that ended the training run.
 
VectorR training_error_history
 Per-epoch training error.
 
VectorR validation_error_history
 Per-epoch validation error.
 
string elapsed_time
 Total elapsed wall-clock time, formatted as "hh:mm:ss".
 
float loss = NAN
 Final loss value.
 
Index validation_failures = 0
 Number of consecutive validation-error increases at end of training.
 
float loss_decrease = 0.0f
 Loss decrease observed in the last epoch.
 

Detailed Description

Per-epoch error history and final summary produced by Optimizer::train().

Constructor & Destructor Documentation

◆ TrainingResults()

opennn::TrainingResults::TrainingResults ( const Index expected_epochs = 0)

Constructs a TrainingResults pre-sized for an expected epoch count.

Parameters
expected_epochsInitial capacity for the error history vectors.

◆ ~TrainingResults()

virtual opennn::TrainingResults::~TrainingResults ( )
virtualdefault

Virtual destructor.

Member Function Documentation

◆ get_epochs_number()

Index opennn::TrainingResults::get_epochs_number ( ) const

Number of epochs effectively run.

◆ get_training_error()

float opennn::TrainingResults::get_training_error ( ) const

Final training error (last entry of training_error_history).

◆ get_validation_error()

float opennn::TrainingResults::get_validation_error ( ) const

Final validation error (last entry of validation_error_history).

◆ print()

void opennn::TrainingResults::print ( const string & message = string()) const

Prints a human-readable summary to stdout.

Parameters
messageOptional prefix message.

◆ resize_training_error_history()

void opennn::TrainingResults::resize_training_error_history ( const Index )

Resizes the training error history.

Receives the new size.

◆ resize_validation_error_history()

void opennn::TrainingResults::resize_validation_error_history ( const Index )

Resizes the validation error history.

Receives the new size.

◆ save()

void opennn::TrainingResults::save ( const filesystem::path & ) const

Saves the training results (history and final summary) to a file.

Receives the destination path.

◆ write_override_results()

Tensor< string, 2 > opennn::TrainingResults::write_override_results ( const Index decimals = 3) const

Returns a 2D string table summarizing the training run.

Parameters
decimalsNumber of decimals used when formatting floats.
Returns
Tensor of (rows, columns) strings ready for pretty-printing.

◆ write_stopping_condition()

string opennn::TrainingResults::write_stopping_condition ( ) const

Returns the canonical string name of the stopping condition.

Returns
Name (e.g. "MaximumEpochsNumber").

Member Data Documentation

◆ elapsed_time

string opennn::TrainingResults::elapsed_time

Total elapsed wall-clock time, formatted as "hh:mm:ss".

◆ loss

float opennn::TrainingResults::loss = NAN

Final loss value.

◆ loss_decrease

float opennn::TrainingResults::loss_decrease = 0.0f

Loss decrease observed in the last epoch.

◆ stopping_condition

Optimizer::StoppingCondition opennn::TrainingResults::stopping_condition = Optimizer::StoppingCondition::None

Stopping condition that ended the training run.

◆ training_error_history

VectorR opennn::TrainingResults::training_error_history

Per-epoch training error.

◆ validation_error_history

VectorR opennn::TrainingResults::validation_error_history

Per-epoch validation error.

◆ validation_failures

Index opennn::TrainingResults::validation_failures = 0

Number of consecutive validation-error increases at end of training.