How can we recover the network state at iteration T

1 visualizzazione (ultimi 30 giorni)
I am using a validation set to determine stop training when the validation loss stops decreasing. I have my validation patience as 3. Assuming that my networks stops training when it has surpassed this patience threshold, during the final 3 validation steps of my network would have been overfitting.
As a result, I want to recover the network state at the step that produced the minimum validation loss. Is there a way to do this?
  2 Commenti
Roberto
Roberto il 15 Gen 2019
Hi Arjun. I have the same problem. Did you find a solution?
My current solution is keeping track of the best iterations and then re-train the network with the same rng seed and max epoch set in order to stop the training wher the validation loss reached the minimum in the previous training. It's an horrible solution but it's the only way I've found.
Torsten K
Torsten K il 16 Ott 2020
Hi Roberto,
I also have the same problem. Did you find a solution yet? If so, I am very interested how you solved the problem!
Regards
Torsten

Accedi per commentare.

Risposte (1)

Greg Heath
Greg Heath il 26 Mag 2018
In the distant past I'm pretty sure that I have checked, by using the error plot, that it is done automatically.
Thank you for formally accepting this answer
Greg.
  2 Commenti
Arjun Desai
Arjun Desai il 31 Mag 2018
Hi Greg, I checked with the Mathworks team, and it seems that this is not the case. In fact, the state pf the network that is accepted is the last state before the training stops.
Greg Heath
Greg Heath il 16 Gen 2019
Modificato: Greg Heath il 16 Gen 2019
I have not verified this but I have the feeling that, in the long run, the difference between stopping at minval and minval + 6 for 15% of the data is not significant w.r.t. performance on the entire dataset.
Greg

Accedi per commentare.

Prodotti


Release

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by