How does MATLAB's "trainnet" function handle network state during training?

4 views (last 30 days)
I am trying to understand the inner workings of MATLAB's "trainnet" function. Specifically, I need the following information:
Does "trainnet" operate on a copy of the network provided via the training options and only return the final trained network at the end of the training process?
Or is there a way to access and save the current state of the network during training (for example, after each epoch or according to custom output function)?
Any insights, explanations, or documentation references that clarify how MATLAB manages the network state during training would be greatly appreciated.
Thanks in advance!

Answers (1)

Abhipsa
Abhipsa on 19 Feb 2025
Hi @Diana,
I have used this MATLAB documentation example (https://www.mathworks.com/help/deeplearning/ug/train-network-on-image-and-feature-data.html ) to verify if the original network and trained network obtained using “trainnet” of Deep Learning Toolbox are actually the same. It appears that the original network was not modified, suggesting it must be a copy.
I am attaching the output screenshot of my experimentation below.
To save and access the current state of the network during training you can use the “CheckpointPath” name-value pair in “trainingOptions”. This can be specified in the "options" input argument in "trainnet". You can refer to the below MATLAB links for more details:
I hope this helps you.
  1 Comment
Diana
Diana on 3 Mar 2025
Thanks for your answer. My experience has also shown that MATLAB works with a copy of the network.
My choice was to specify ObjectiveMetricName and OutputNetwork under options. For example:
objective_metric = "recall";
output_network = "best-validation";
options = trainingOptions("adam", ...
ObjectiveMetricName=objective_metric, ...
OutputNetwork=output_network, ...
... );

Sign in to comment.

Categories

Find more on Sequence and Numeric Feature Data Workflows in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!