Why does training my network in batches give different results than training in a single step?
2 views (last 30 days)
Show older comments
MathWorks Support Team
on 27 Jun 2009
Commented: Greg Heath
on 9 Apr 2018
I would like to know why training my network in batches gives different results than training in a single step.
If I train my Neural Netwok 10 times for 10 epochs, I get a different result than if I had trained it once for a hundred epochs.
Accepted Answer
MathWorks Support Team
on 27 Jun 2009
When training a neural network, each input vector is presented to the network at least once. Presenting all vectors once is called an epoch.
Most of the training algorithms have parameters that are adjusted adaptively during training. When you stop and restart training, these parameters revert to their initial values. This means that training the network 10 times for 10 epochs will give you a result similar to if you had trained the network just once for 10 epochs. This is why training a network 10 times for 10 epochs is not equivalent to training 1 time for 100 epochs.
3 Comments
Greg Heath
on 9 Apr 2018
foo???
My answer was based on comparing the results of a simple comparison test.
Try it.
Greg
More Answers (0)
See Also
Categories
Find more on Image Data Workflows in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!