Why almost the same optimization function gives different results?

1 回表示 (過去 30 日間)
Nadou
Nadou 2021 年 7 月 16 日
コメント済み: Nadou 2021 年 7 月 19 日
Hello,
I am trying to optimize ECOC classifier as follows:
%data
clear all
load fisheriris
X = meas;Y = species;
rng default
t_gaussian=templateSVM('KernelFunction','gaussian','standardize',true)
Mdl_gaussian = fitcecoc(X,Y,'Coding','onevsall','Learners',t_gaussian,'OptimizeHyperparameters','auto',...
'HyperparameterOptimizationOptions',struct('CVPartition',CVO,'Optimizer','bayesopt','AcquisitionFunctionName',...
'expected-improvement-plus'))
I am wondering why I did not find the same results if I remplace 'OptimizeHyperparameters','auto' with 'OptimizeHyperparameters',{'BoxConstraint','KernelScale'}
rng default
Mdl_g = fitcecoc(X,Y,'Coding','onevsall','Learners',t_gaussian,'OptimizeHyperparameters',{'BoxConstraint','KernelScale'},...
'HyperparameterOptimizationOptions',struct('CVPartition',CVO,'Optimizer','bayesopt','AcquisitionFunctionName',...
'expected-improvement-plus'))
Best regards

回答 (1 件)

Alan Weiss
Alan Weiss 2021 年 7 月 16 日
編集済み: Alan Weiss 2021 年 7 月 18 日
I am not 100% sure, but my reading of the fitcecoc documentation shows that 'auto' has this description:
'auto' — Use {'Coding'} along with the default parameters for the specified Learners:
  • Learners = 'svm' (default) — {'BoxConstraint','KernelScale'}
So I think that 'auto' is equivalent to {'Coding','BoxConstraint','KernelScale'}.
Alan Weiss
MATLAB mathematical toolbox documentation
  1 件のコメント
Nadou
Nadou 2021 年 7 月 19 日
Hello Alan,
Thank you for your response
This is what I thought also while reading fitcecoc documentation. However, I found different results
Best regards

サインインしてコメントする。

製品


リリース

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by