How to see the training progress in CNN?
3 次查看(过去 30 天)
显示 更早的评论
When the CNN training is running, how to make it show the training progress (the table with iteration no., training accuracy, loss etc.). I asked for the second output through "info" in the trainNetwork function which gave me a summary at the end. But I want to see it while the training is going on.
0 个评论
采纳的回答
Javier Pinzón
2018-4-6
编辑:Javier Pinzón
2018-4-6
Hello Stu,
In the trainingOptions, you need tu put the option 'Verbose', true, ... , in that way you can see the progress, and set your VerboseFrequency, also, if you are using the 2017b, you can also plot your progress, using the option 'Plots','training-progress', ...
So, a full example may be:
opts = trainingOptions('sgdm', ...
'InitialLearnRate', 0.01, ...
'L2Regularization', 0.004, ...
'Shuffle', 'every-epoch', ...
'MaxEpochs', 20, ...
'MiniBatchSize', 69, ...
'Verbose', true, ...
'VerboseFrequency', 320, ...
'ValidationData',ValidationDS, ...
'ValidationFrequency',160, ...
'ValidationPatience',Inf, ...
'Plots','training-progress', ...
'ExecutionEnvironment', 'auto', ...
'CheckpointPath','data\epoch');
Also I recommend you yo use a MiniBatchSize multiple of your total amount of images of your training dataset, and the VerboseFrequency, be set as TotalImage/MiniBatchSize in that way you will see what happens at the end of every epoch, as in the example, there are a total of 22080 images, and I set 69 as the batch size, so, to see it in every epoch, i said that i wanted to see every 320 iterations the table (320 iter = 1 Epoch).
Hope it may help you.
Regards, Javier
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 GPU Computing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!