trainNetwork: loss output vs. manual calculation
2 views (last 30 days)
Show older comments
Dear Matlab community,
I have recently become a bit puzzled when it comes to the trainNetwork function, specifically the diagnostis printed.
I get the following values during the last epoch:
|======================================================================================================================|
| Epoch | Iteration | Time Elapsed | Mini-batch | Validation | Mini-batch | Validation | Base Learning |
| | | (hh:mm:ss) | RMSE | RMSE | Loss | Loss | Rate |
|======================================================================================================================|
| 1000 | 252750 | 12:58:24 | 0.04 | 0.17 | 0.0007 | 0.0136 | 6.2500e-05 |
| 1000 | 252800 | 12:58:34 | 0.03 | 0.16 | 0.0006 | 0.0120 | 6.2500e-05 |
| 1000 | 252850 | 12:58:43 | 0.04 | 0.16 | 0.0007 | 0.0133 | 6.2500e-05 |
| 1000 | 252900 | 12:58:52 | 0.03 | 0.17 | 0.0004 | 0.0143 | 6.2500e-05 |
| 1000 | 252950 | 12:59:01 | 0.03 | 0.16 | 0.0005 | 0.0121 | 6.2500e-05 |
| 1000 | 253000 | 12:59:11 | 0.03 | 0.17 | 0.0004 | 0.0150 | 6.2500e-05 |
One observes that the training loss is much lower than the validation loss, sign of overtraining but not the issue here.
If I now use the trained network, predict the responses and calculate the loss manually I receive:
training: 0.137 / validation: 0.149
This is systematic and leads me to wonder if the "Mini-batch Loss" is not the MSE of the training data.
0 Comments
Answers (0)
See Also
Categories
Find more on Custom Training Loops in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!