Can a created Neural network only be updated with train()
Show older comments
Hi,
I have a patternnet neural network created to classify two movements from feature extracted EEG data. The network does not always generalize well to an online test. Say I wanted to take the data from the online test and feed it into the network object to update its chance of generalizing and improving accuracy, is the only way to do that using the train function?
as in, net=train(net,newInput,newTargets);
Thus improving its accuracy for the new data set but at the expense of its accuracy on the original training data.
Thank you
Accepted Answer
More Answers (1)
Greg Heath
on 8 Aug 2016
Training with only data2 after training with only data1 will degrade performance on data 1.
Therefore you have several choices. Let
data3 = data1 + data2
Then, the two most logical approaches are
1. Train with data1
2. Train with data3
either
a. initialized with data1 training
b. starting from small random weights
Thank you for formally accepting my answer
Greg
4 Comments
techn
on 8 Aug 2016
Greg Heath
on 9 Aug 2016
Edited: Greg Heath
on 9 Aug 2016
Isn't that what I just said?
Train with data3. Either
1. initialized with the existing results of the data1 training
or
2. initialized with random weights
Hope this is clear.
However, there are two other possibilities.
Same as 1 and 2 EXCEPT use ADAPT instead of TRAIN. Although I don't recommend this (because it is much, much slower) it can be done.
Greg
Greg Heath
on 14 Aug 2016
Edited: Greg Heath
on 14 Aug 2016
NO!
See my answer below
Greg
Categories
Find more on Deep Learning Toolbox 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!