MATLAB Answers

How to using bayesopt function for a GP model

8 views (last 30 days)
zhikun ruan
zhikun ruan on 20 Jun 2019
Commented: 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.

Accepted Answer

Don Mathis
Don Mathis on 21 Jun 2019
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

zhikun ruan
zhikun ruan on 22 Jun 2019
Thanks Don. I found your answers in other problems are very helpful. Thank you very much.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!