Get best hyperparameters for ionosphere data using fitcecoc & bayesopt. but i am getting error optimizableVariable.
3 views (last 30 days)
Show older comments
Vedant Chauhan
on 17 Mar 2022
Commented: Vedant Chauhan
on 24 Mar 2022
load ionosphere
box = optimizableVariable('box',[1e-4,1e3],'Type','real','Transform','log');
kern = optimizableVariable('kern',[1e-4,1e3],'Type','real','Transform','log');
vars = [box,kern];
t = templateSVM('Standardize',true,'KernelFunction','gaussian','kernelscale',vars.kern ,'boxconstraint', vars.box);
fun = @(vars)kfoldLoss(fitcecoc(X,Y,'Learners',t,'FitPosterior',true,...
'ClassNames',{'g','b'},...
'Verbose',2,'Kfold',5));
results = bayesopt(fun,vars,'UseParallel',true);
The error coming is shown below:
No appropriate method, property, or field 'kern' for class 'optimizableVariable'.
0 Comments
Accepted Answer
Alan Weiss
on 20 Mar 2022
I do not understand why you are attempting to use fitcecoc with a 2-class model. Try this instead:
load ionosphere
mdl = fitcsvm(X,Y,"OptimizeHyperparameters","auto") % The auto parameters are box and kernel scale
Alan Weiss
MATLAB mathematical toolbox documentation
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!