TrainingInfo
Description
Neural network training information including validation and loss information.
Creation
Create a TrainingInfo
object using the second output of the trainnet
.
Properties
TrainingHistory
— Information about training iterations
table
Information about training iterations, returned as a table.
The table contains these variables:
Iteration
— Iteration numberLoss
— Training lossMetrics specified by the
Metrics
training option.
If you train with a stochastic solver (SGDM, Adam, or RMSProp), then the table has these additional variables:
Epoch
— Epoch numberLearnRate
— Learning rate
If you train with the L-BFGS solver, then the table has these additional variables:
GradientNorm
— Norm of the gradientsStepNorm
— Norm of the steps
Data Types: table
ValidationHistory
— Information about validation iterations
table
Information about validation iterations, returned as a table.
The table contains these variables:
Iteration
— Iteration numberLoss
— Training lossMetrics specified by the
Metrics
training option.
Data Types: table
OutputNetworkIteration
— Iteration that corresponds to the returned network
positive integer
Iteration that corresponds to the returned network, returned as a positive integer.
Data Types: double
StopReason
— Reason for stopping training
string scalar
Reason for stopping training, returned as one of these values:
"Max epochs completed"
— Training reached the number of epochs specified by theMaxEpochs
training option."Max iterations completed"
— Training reached the number of iterations specified by theMaxIterations
training option."Stopped by OutputFcn"
— Function specified by theOutputFcn
training option returned1
(true
)."Met validation criterion"
— Validation loss is not lowest forValidationPatience
times."Stopped manually"
— Stop button pressed."Error occurred"
— The software threw an error."Training loss is NaN"
— Training loss isNaN
."Gradient tolerance reached"
— Norm of the gradients is lower than theGradientTolerance
training option."Step tolerance reached"
— Norm of the steps is lower than theStepTolerance
training option."Suitable learning rate not found"
— Line search unable to find suitable learning rate.
Data Types: string
Examples
Show Neural Network Training Information
Unzip the digit sample data and create an image datastore. The imageDatastore
function automatically labels the images based on folder names.
unzip("DigitsData.zip") imds = imageDatastore("DigitsData", ... IncludeSubfolders=true, ... LabelSource="foldernames");
Define the convolutional neural network architecture. Specify the size of the images in the input layer of the network and the number of classes in the final fully connected layer. Each image is 28-by-28-by-1 pixels.
inputSize = [28 28 1]; numClasses = numel(categories(imds.Labels)); layers = [ imageInputLayer(inputSize) convolution2dLayer(5,20) batchNormalizationLayer reluLayer fullyConnectedLayer(numClasses) softmaxLayer];
Specify the training options.
Train for four epochs using the SGDM solver.
Monitor the accuracy metric.
options = trainingOptions("sgdm", ... MaxEpochs=4, ... Metrics="accuracy");
Train the neural network. For classification, use cross-entropy loss. Return the trained network and the training information.
[net,info] = trainnet(imds,layers,"crossentropy",options);
Iteration Epoch TimeElapsed LearnRate TrainingLoss TrainingAccuracy _________ _____ ___________ _________ ____________ ________________ 1 1 00:00:01 0.01 2.7615 3.9062 50 1 00:00:08 0.01 0.48211 85.938 100 2 00:00:13 0.01 0.16471 96.094 150 2 00:00:17 0.01 0.10177 96.094 200 3 00:00:26 0.01 0.057216 100 250 4 00:00:36 0.01 0.031815 100 300 4 00:00:40 0.01 0.021116 100 312 4 00:00:41 0.01 0.029253 99.219 Training stopped: Max epochs completed
View the training information.
info
info = TrainingInfo with properties: TrainingHistory: [312x5 table] ValidationHistory: [0x0 table] OutputNetworkIteration: 312 StopReason: "Max epochs completed"
Display the training information in a plot using the show
function.
show(info)
Close the plot using the close
function.
close(info)
Version History
Introduced in R2023b
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)