MATLAB Answers

1

How to using bayesopt function for a GP model

Asked by zhikun ruan on 20 Jun 2019
Latest activity Commented on by zhikun ruan on 22 Jun 2019
Hi, I need to use bayesopt function for a GP model but it returns NaN and Error. I used the code below and the x is a 2 * n matrix and y is a 1*n matrix. Can anyone help me?
num = optimizableVariable('n',[1,10],'Type','integer');
dst = optimizableVariable('dst',{'chebychev','euclidean','minkowski'},'Type','categorical');
results = bayesopt(@(params)fitrgp(x',y,'Sigma',0.1),[num,dst],'Verbose',0,...
'AcquisitionFunctionName','expected-improvement-plus')

  0 Comments

Sign in to comment.

1 Answer

Answer by Don Mathis on 21 Jun 2019
 Accepted Answer

It looks like you're basing your code on this example, which is a good starting point: https://www.mathworks.com/help/stats/bayesopt.html?searchHighlight=bayesopt&s_tid=doc_srchtitle#bvamydy-2
But it seems you removed some important parts, like the call to kfoldLoss for example.
I would recommend starting with that example and making incremental changes to turn it into a solution to your problem. And reading the bayesopt documentation.

  1 Comment

Thanks Don. I found your answers in other problems are very helpful. Thank you very much.

Sign in to comment.