我想使用高斯过程实现一个简单的回归模型。为了简单起见,我选择了 Rasmussen 的 GPML 工具箱。我的问题是我们如何让工具箱知道我们已经为每个数据点提供了不同的已知输出噪声。所以工具箱不会再优化这个超参数了。这里的输出噪声是具有已知标准偏差的零均值高斯。我想它应该与 cov 文件夹中的“CovNoise”功能有关。
如何使用已知输出噪声的 GPML 工具箱实现高斯过程?
机器算法验证
高斯过程
2022-04-09 20:46:53
2个回答
GPML 工具箱中的输出噪声以非常不同的方式定义。如此处清楚描述: GPML 工具箱中的似然与噪声内核超参数
如果您使用@likGauss 函数,则输出噪声将由“hyp.lik”表示,而不是通过将@covNoise 协方差函数添加到协方差内核。
因此,在我看来,创建一个具有受限超参数的新协方差函数是行不通的。您将不得不探索@likGauss 或@infExact 函数是如何实现的。
经过一点研究后的一个建议
定义
hyp.lik = "known output noise";
并更改 @infExact 函数中的第 24 行;
从:
sn2 = exp(2*hyp.lik);
到:
sn2 = "known output noise";
我希望这会奏效。
干杯
首先想到的是创建自己的内核。GPML 很容易做到这一点,因此只需复制您要使用的内核并将其中一个超参数更改为常量。删除计算该超参数的导数的代码。
这可能不是唯一的方法,但是如果没有其他人回答并且您自己无法做到这一点,请发表评论,我可以逐步向您展示如何做到这一点。
其它你可能感兴趣的问题