Get best hyperparameters for ionosphere data using fitcecoc & bayesopt. but i am getting error optimizableVariable.

2 ビュー (過去 30 日間)
Vedant Chauhan
Vedant Chauhan 2022 年 3 月 17 日
コメント済み: Vedant Chauhan 2022 年 3 月 24 日
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'.

採用された回答

Alan Weiss
Alan Weiss 2022 年 3 月 20 日
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

その他の回答 (0 件)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by