How is it possible to use a validation set with a LSTM?
When I try to use the Validation set with a LSTM layer, it shows the following error:
options = trainingOptions('adam', ...
'ExecutionEnvironment','gpu', ...
'GradientThreshold',1, ...
'MaxEpochs',maxEpochs, ...
'ValidationData',{XTest,YTest},...
'MiniBatchSize',miniBatchSize, ...
'LearnRateSchedule','piecewise', ...
'SequenceLength','longest', ...
'Shuffle','never', ...
'Verbose',0, ...
'Plots','training-progress');
net = trainNetwork(XTrain,categorical(YTrain),layers,options);
Error:
Training with validation data is not supported for networks with LSTM layers.
Is there another way to use the Validation set during the training of the network?
ANSWER
Matlabsolutions.com provide latest MatLab Homework Help,MatLab Assignment Help for students, engineers and researchers in Multiple Branches like ECE, EEE, CSE, Mechanical, Civil with 100% output.Matlab Code for B.E, B.Tech,M.E,M.Tech, Ph.D. Scholars with 100% privacy guaranteed. Get MATLAB projects with source code for your learning and research.
It’s ugly, but if you use Checkpoints, then you can use an OutputFcn to (once per epoch) load the network from a checkpoint and run it against your validation data. It isn’t very efficient, but it’s okay if you’re only doing it once per epoch. You won’t get it on the training plot of course.