我參考鏈接https://stats.stackexchange.com/questions/105516/how-to-implement-a-2-d-gaussian-processes-regression-through-gpml-matlab并創建一個二維高斯程序回歸。我想創建一個 4-d 高斯程序回歸,但是“meshgrid”只允許 3 個輸入([X,Y,Z] = meshgrid(x,y,z));如何在meshgrid中添加另一個輸入?
3-d 代碼是這樣的:
X1train = linspace(-4.5,4.5,10);
X2train = linspace(-4.5,4.5,10);
X3train = linspace(-4.5,4.5,10);
X = [X1train' X2train' X3train'];
Y = [X1train X2train X3train]';
%Testdata
[Xtest1, Xtest2, Xtest3] = meshgrid(-4.5:0.1:4.5, -4.5:0.1:4.5, -4.5:0.1:4.5);
Xtest = [Xtest1(:) Xtest2(:) Xtest3(:)];
% implement regression
[ymu ys2 fmu fs2] = gp(hyp, @infExact, [], covfunc, likfunc, X, Y, Xtest);
如果我創建了一個 X4train,那就意味著我需要一個 Xtest4,我該如何將 Xtest4 添加到 meshgrid 中?
GPML 代碼來自http://www.gaussianprocess.org/gpml/code/matlab/doc/
uj5u.com熱心網友回復:
您可以使用ndgrid創建 n 維網格,但請記住,它不會直接創建與 meshgrid 相同的輸出,您必須先對其進行轉換。(檔案中也解釋了如何做到這一點)
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/335646.html
上一篇:Weka中決策樹的資訊增益
