Working with LSTM and Bayes Optimization
7 views (last 30 days)
Show older comments
CHRISTOPHER MILLAR
on 25 Feb 2020
Commented: CHRISTOPHER MILLAR
on 5 Oct 2021
I am trying to use bayesoptimization to tune the parameters
optimvars = [
optimizableVariable('InitialLearnRate',[1e-2 1],'Transform','log')
optimizableVariable('L2Regularization',[1e-10 1e-2],'Transform','log')];
layers = [ ...
sequenceInputLayer(inputSize,'Normalization','zscore')
bilstmLayer(numHiddenUnits,'OutputMode','last')
fullyConnectedLayer(numClasses)
softmaxLayer
classificationLayer];
maxEpochs =25;
options = trainingOptions('adam',...
'ExecutionEnvironment','cpu',...
'GradientThreshold',1,...
'MaxEpochs',maxEpochs,...
'MiniBatchSize',miniBatchSize, ...
'SequenceLength', 'longest', ...
'Shuffle','every-epoch', ...
'Verbose', 1, ...
'InitialLearnRate',optimvars.InitialLearnRate,...
'L2Regularization',optimvars.L2Regularization,...
'Plots','training-progress');
objFcn = makeObj(Xtrain,YTrain);
bayesObj = bayesopt(objFcn,optimvars, ...
'MaxTime', 14*60*60, ...
'IsObjectiveDeterministic',false,...
'UseParallel',false);
Where am i going wrong as i get the following error:
Unrecognized method, property, or field 'InitialLearnRate' for class 'optimizableVariable'.
Error in AllVsIndx (line 236)
'InitialLearnRate',optimvars.InitialLearnRate,...
The documentation regarding bayesian optimization is very vague especially when it comes to implementation with LSTM networks
Any help would be appreciated
Thanks
0 Comments
Accepted Answer
Jorge Calvo
on 27 May 2021
If you have R2020b or later, you can use the Experiment Manager app to run Bayesian optimization to determine the best combination of hyperparameters. For more information, see https://www.mathworks.com/help/deeplearning/ug/experiment-using-bayesian-optimization.html.
More Answers (2)
Don Mathis
on 25 Feb 2020
You might find this similar example useful: https://www.mathworks.com/matlabcentral/answers/457788-lstm-time-series-hyperparameter-optimization-using-bayesian-optimization?s_tid=answers_rc1-2_p2_MLT
0 Comments
Jorge Calvo
on 5 Oct 2021
I thought you would like to know that, in R2021b, we are included an example for training long short-term memory (LSTM) networks using Bayesian optimization in Experiment Manager:
I hope you find it helpful!
See Also
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!