在了解了GPML toolbox之后,我使用这些工具编写了第一个代码。我有一个数据矩阵,data
由两个总大小为1000的数组值组成。我想使用这个矩阵来估算使用GPML工具箱的GP值。我编写了如下代码:
x = data(1:200,1); %training inputs
Y = data(1:201,2); %, training targets
Ys = data(201:400,2);
Xs = data(201:400,1); %possibly test cases
covfunc = {@covSE, 3};
ell = 1/4; sf = 1;
hyp.cov = log([ell; sf]);
likfunc = @likGauss;
sn = 0.1;
hyp.lik = log(sn);
[ymu ys2 fmu fs2] = gp(hyp, @infExact, [], covfunc, likfunc,X,Y,Xs,Ys);
plot(Xs, fmu);
但是当我运行此代码时出现错误'在了解了GPML toolbox之后,我使用这些工具编写了第一个代码。我有一个数据矩阵,data
由两个总大小为1000的数组值组成。我想使用这个矩阵来估算使用GPML工具箱的GP值。我编写了如下代码:
x = data(1:200,1); %training inputs
Y = data(1:201,2); %, training targets
Ys = data(201:400,2);
Xs = data(201:400,1); %possibly test cases
covfunc = {@covSE, 3};
ell = 1/4; sf = 1;
hyp.cov = log([ell; sf]);
likfunc = @likGauss;
sn = 0.1;
hyp.lik = log(sn);
[ymu ys2 fmu fs2] = gp(hyp, @infExact, [], covfunc, likfunc,X,Y,Xs,Ys);
plot(Xs, fmu);
但是当我运行此代码时:
使用covMaha时出错(第58行)参数模式是'eye','iso', 'ard','proj','fact'或'vlen'
如果有可能请帮我弄明白我在哪里弄错了?
答案 0 :(得分:0)
我知道这已经很晚了,但我自己也遇到了这个问题。解决方法是改变
covfunc = {@covSE, 3};
类似的东西
covfunc = {@covSE, 'iso'};
它不一定是 'iso'
,它可以是错误消息中列出的任何选项。只需确保为您选择的特定模式正确设置了超参数。 GPML 中的 covMaha.m
文件对此进行了详细说明。