Is calling train with 20 epochs of learning the same as 20 calls to train with 1 epoch of learning?
Mostrar comentarios más antiguos
Hi there.
I've been exploring the train function and I'm a little unsure of how it's operating.
From my understanding, setting net.trainParam.epochs=20 should produce the same network as 20 calls to train with net.trainParam.epochs=1, using the updated network each time. But, when I do this I get very different results. The network produced using net.trainParam.epochs=20 performs much better than the network produced by making 20 calls to train with net.trainParam.epochs=1. Is something special happening in train with multiple learning epochs?
Thanks
-- Jeff
Respuesta aceptada
Más respuestas (2)
Sean de Wolski
el 30 de Oct. de 2012
Editada: Sean de Wolski
el 30 de Oct. de 2012
0 votos
I'm pretty sure that each call to train nullifies all previous training.
Not quite positive though, I'll wait for Greg to chime in.
1 comentario
jeffrey cockburn
el 30 de Oct. de 2012
Greg Heath
el 14 de Nov. de 2012
0 votos
I've been successful achieving the same weights with continuous training vs interupted training with net.trainParam.epochs = 1 when no validation subset is used during training.
The best results are obtained when the number of hidden nodes is not larger than necessary to obtain the a training goal of MSE = 0.01*mean(var(target')).
Hope this helps.
Greg
Categorías
Más información sobre Parallel and Cloud en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!