[Need Help] Cannot use DL checkpoint model to predict?

I tried to use models saved in path specified by 'CheckpointPath' parameter during training by Deep Learning Toolbox, I got following error:
Error using DAGNetwork/calculatePredict>predictSingle (line 112)
Input parameter has the wrong class.
Error in DAGNetwork/calculatePredict (line 13)
Y = predictSingle( ...
Error in DAGNetwork/predict (line 125)
Y = this.calculatePredict( ...
The detector after training can be used without problem.
Did I miss something? Are the checkpoint models of same class as final detector itself?
Thanks

2 Comments

Hi, indeed checkpoints that are associated to some DAGNetwork architectures cannot be used to make predictions. As an example, those who contain batchNorm layers. See https://fr.mathworks.com/matlabcentral/answers/423588-how-to-classify-with-dag-network-from-checkpoint or https://fr.mathworks.com/matlabcentral/answers/451383-issue-with-batch-normalization-layer-of-saved-cnn#answer_366855.
For a workaround, you can still retrain from your checkpoint during 1 epoch, with a minimalist training set, at a very low learning rate.
Best,
Guillaume

Sign in to comment.

Answers (0)

Categories

Find more on Deep Learning Toolbox in Help Center and File Exchange

Products

Release

R2019b

Asked:

on 27 Mar 2020

Commented:

on 8 Feb 2021

Community Treasure Hunt

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

Start Hunting!