How to use the gaussian process regression function in matlab 2015b ?
古いコメントを表示
I'm trying to reproduce the picture at the end of the documentation: http://www.mathworks.com/help/stats/gaussian-process-regression-models.html the one on the left.
However, I cant quite do it.
This is what I have so far:
fun = @(x) x.*sin(x);
xx = linspace(0,10,100)';
yy = fun(xx);
nd = 5;
xd = linspace(1,9,nd)';
yd = fun(xd);
gp = fitrgp(xd,yd,'KernelFunction','squaredexponential');
figure(1); clf
plot(xx,yy, 'g-')
hold on
plot(xx,predict(gp,xx), 'r-')
However this doesn't work. It looks like the beta parameter is set at a constant and you can change the basis function used. But, why use Gaussian Processes if you have to provide it with the function you're trying to emulate? I'm trying to use GPs to model simulation data and the process that generate them can't be written as a nice function (basis function).
採用された回答
その他の回答 (1 件)
Gautam Pendse
2015 年 11 月 19 日
Replace xd and yd by something like this:
xd = linspace(0,10,20)';
yd = fun(xd) + 1*randn(20,1);
Rest of the code remains the same.
Gautam
カテゴリ
ヘルプ センター および File Exchange で Gaussian Process Regression についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!