Define early stopping criterion for number of training epochs

99 views (last 30 days)
Hi, I am using feedforwardnet with trainlm and want to define an early stopping criterion for number of training epochs, based on level of convergence of the training MSE. I want to use 100% of my data for training (I am using other data for validation / testing).
How can I define a stopping criterion based on, for instance, the rate of change in the training MSE, or the level of the training MSE vs previous training iterations?
Thank you for your help.

Answers (1)

Sahithi Kanumarlapudi
Sahithi Kanumarlapudi on 16 Jul 2019
Hi Eleanor,
Training a neural network can be terminated by setting the values of the following parameters:
min_grad Minimum Gradient Magnitude
max_fail Maximum Number of Validation Increases
time Maximum Training Time
goal Minimum Performance Value
epochs Maximum Number of Training Epochs (Iterations)
If you want the training to be stopped if mse reaches a particular value (say min_msd),then u can set the goal parameter as follows:
net.trainParam.goal = min_msd;
Where net is the neural network on which the training is performed.
For more information you can refer to




Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!