Problem training Gaussian process with 'ardsquaredexponential' kernel function using bayesopt
7 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Robert
am 24 Mär. 2022
Kommentiert: Rebecca Mazloum
am 28 Mai 2024
Dear community,
I have a problem training a Gaussian process using fitrgp. Can someone advise, why some datasets will produce errors when training with the command below. The training data set that is causing the error is in the attached mat-file.
gpr = fitrgp(X, y, ...
'KernelFunction', 'ardsquaredexponential',...
'PredictMethod', 'fic',...
'OptimizeHyperparameters', {'KernelScale','Sigma'},...
'HyperparameterOptimizationOptions',...
struct('MaxObjectiveEvaluations',250,...
'Optimizer', 'bayesopt',...
'Repartition', false,...
'UseParallel', true,...
'Kfold' , 5),...
'Verbose', 1,...
'OptimizerOptions', statset(...
'Display', 'final',...
'UseParallel', true));
The error that is returned reads
For the 'ARDSquaredExponential' kernel with 2 predictors, 'KernelParameters' must be a 3-by-1 vector of positive numbers.
and did not help me find a solution. (I already tried normalizing, more data, etc., but it did not work)
Best regards and thank you,
Robert
0 Kommentare
Akzeptierte Antwort
Alan Weiss
am 24 Mär. 2022
"KernelScale cannot be optimized for any of the ARD kernels."
Alan Weiss
MATLAB mathematical toolbox documentation
4 Kommentare
Alan Weiss
am 28 Apr. 2022
I don't think so, but you can try setting the name (not function handle) of your user-defined kernel function as the kernel by using hyperparameters to set a nondefault kernel, as outlined on the fitrgp reference page in the HyperparameterOptimizationOptions section. I haven't tried this and don't know if it will work--I suspect not, but it might be worth a try.
Alan Weiss
MATLAB mathematical toolbox documentation
Rebecca Mazloum
am 28 Mai 2024
Hello,
How are the KernelScales chosen for ARD kernnels?
We notice that initial values given as KernelParameters change once the model is created.
Are the KernelScales optimized internally for ARD kernels? And if so using which method?
Thanks
Weitere Antworten (0)
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!