问题标签 [gpy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
309 浏览

gpflow - GPy 和 GPflow 数学背景 - 参考资料

GPy 和 GPflow 是否具有共同的数学背景?我问这个是因为我正在使用 GPy 但我看不到参考资料。但是,GPflow 在其示例中提供了参考。

使用继续使用 GPy 是否可以,或者您是否建议立即使用 GPflow 用于高斯过程?

0 投票
0 回答
41 浏览

scaling - 理解不同训练数据缩放方案的 GPy 标准差?

我正在尝试使用两个单独的模型对两个不同的输出(独立)进行预测。我正在使用问题物理中的相关因素对输入和输出数据进行规范化。但是平均值预测中的不确定性(标准偏差)在使用不同的缩放方案时会发生变化,而对于两种不同的方案,平均值本身的预测精度很高。

我如何理解与我使用的缩放方案无关的不确定性(GPy 模型预测的标准偏差)?我如何确定是否需要进行适当的转换才能获得输出量级的标准偏差。

对于任何缺乏明确性,我提前道歉。

0 投票
1 回答
171 浏览

gpflow - GPflow - 具有 1 维线性内核的 GP 分类不适合二维数据

在问题#1435之后,我还有一个关于如何使用 GPflow 的问题。

我在一个额外的内核中复制了这个问题:https ://github.com/avalonhse/BayesNotebook/blob/master/Issue_2_GPFlow_Linear_Classification.ipynb

我的目的是将加性内核拟合到二维数据(维度 1 中的平方指数和维度 2 中的线性内核)。按照#1435的说明,我已经成功地用内核 gpflow.kernels.Linear(variance= 0.1) 拟合了模型。

线性核

但是,当我按照最初的计划使用内核 gpflow.kernels.Linear(active_dims= 1 ,variance= 0.01) 时,模型不适合。我使用具有相同内核的 GPy 作为参考,结果看起来很合理。

1-dim GPFlow 内核

GPy 代码仅供参考,以建议拟合模型应该如何。我知道 GPy 和 GPflow 使用不同的方法。我的问题是为什么当我在一维中指定线性内核时 GPflow 模型不适合。

0 投票
1 回答
1223 浏览

python - 使用 GPy 多输出共区域化预测

我最近遇到了一个问题,我认为多输出 GP 可能是一个不错的选择。我目前正在对我的数据应用单输出 GP,随着维度的增加,我的结果越来越差。我已经尝试使用 SKlearn 进行多输出,并且能够在更高维度上获得更好的结果,但是我相信 GPy 对于此类任务更完整,并且我将对模型有更多的控制权。对于单输出 GP,我将内核设置如下:

在上面的示例中,X 的大小为 (20,4) 和 Y(20,1)。

我从 多输出高斯过程简介中获得的多输出实现 我根据示例准备数据,将 X_mult_output 设置为大小 (80,2) - 第二列是输入索引 - 并重新排列 Y到 (80,1)。

好的,到目前为止一切似乎都有效,现在我想预测这些值。问题是我似乎无法预测这些值。据我了解,您可以通过在 Y_metadata 参数上指定输入索引来预测单个输出。由于我有 4 个输入,因此我设置了一个要预测的数组,如下所示:

然后,我想我必须分别对 x_pred 数组中的每个值进行预测,如 Coregionalized Regression Model (vector-valued regression)所示:

问题是我不断收到以下错误:

关于如何克服该问题的任何建议或我的实施是否有任何错误?

追溯:

0 投票
2 回答
317 浏览

python - 如何保存/加载优化的 GPy 回归模型

我正在尝试保存优化的高斯过程模型以用于不同的脚本。我目前的思路是将模型信息存储在 json 文件中,利用 GPy 的内置to_dictfrom_dict函数。类似于以下内容:

此步骤没有问题,但是当我尝试使用以下方法加载模型信息时遇到问题:

这给了我一个断言错误,因为“数据不是无”,它是——或者至少我是这样认为的。 断言错误

我对 GPy 和使用 jsons 真的很陌生,所以我真的不确定我在哪里误入歧途。我尝试查看文档,但文档有点模糊,我找不到它的使用示例。有没有我错过的步骤/概念?另外,这是存储和重新加载模型的最佳方式吗?对此的任何帮助将不胜感激!谢谢!

0 投票
2 回答
159 浏览

machine-learning - 如何使用 scikit-learn GaussianProcessRegressor 重现 GPy GPRegression 的结果?

GPRegression( GPy) 和GaussianProcessRegressor( )都scikit-learn使用相似的初始值和相同的优化器 ( lbfgs)。为什么结果差异很大?

结果

0 投票
1 回答
237 浏览

python - 具有非高斯似然和拉普拉斯推理函数的多任务/多输出 GPy Coregionalized Regression

我想在 GPy 中执行 coregionalized 回归,但是我使用的是伯努利似然,然后作为高斯估计,我使用拉普拉斯推理。PjkRbf下面的代码显示了我通常如何使用此设置(使用我的自定义内核)运行单输出 GP :

现在我正在尝试运行相同的设置,但作为多输出。这是我一直无法做到的。

我已经尝试使用GPCoregionalizedRegression带有 ICM 内核的类,如下面的代码所示:

运行此代码会引发 AssertionError,并带有很长的堆栈跟踪,但最后一部分显示以下内容。可能性不能断言为高斯。

这是因为我无法将拉普拉斯推理传递GPCoregionalizedRegression模型。

任何人都可以就如何解决这个问题提供建议,或者如果有不同的模型我可以使用伯努利似然法和拉普拉斯推理方法来执行多输出回归?

0 投票
0 回答
120 浏览

python - 使用泊松似然的 GP 回归

我正在尝试使用泊松似然来实现 GP 回归。我按照GPy中的例子做了

当我尝试使用 GPflow 做同样的事情时,我以以下方式实现

当我使用 GP 流程实现这一点时,超参数并没有从初始化值移动。另外,我得到了非常不同的结果,我做错了什么吗?

GPflow 的结果

GPy 的结果

0 投票
1 回答
373 浏览

pip - LinAlgError:不是正定的,即使有抖动。使用 conda 环境而不是 pip 时

我正在尝试使用 GPy 包将一些随机数据拟合到带有 RBF 内核的 GP 中。当我更改活动尺寸时,LinAlgError: not positive definite, even with jitter出现错误。此错误在 conda 环境中生成。当我使用 pip 时,我从来没有遇到过这个错误。有没有人遇到过这个?

gpy、scipy 和 numpy 的 conda list 的输出。 输出 gpy、scipy 和 numpy 的 conda 列表

上述包的路径。 路径

0 投票
0 回答
17 浏览

python - GPy - 获取 GPCoregionalizedRegression 模型的对数预测密度

我想知道在 GPy 中使用 GPCoregionalizedRegression 模型时获得 log_predictive_density 的正确方法是什么?

我尝试了以下方法,都导致抛出相同的错误 AttributeError: 'MixedNoise' object has no attribute 'gp_link'

样品 1:

样本 2:

在这两种情况下,“newX”都是维度为 (1, 28+1) 的行向量,其中附加列是 0 或 1,具体取决于我要使用的输出索引。

我已经确认示例 1 在使用 GPRegression 模型时工作正常,并且noise_dict在示例 2 中也为mean, var = m.predict(newX, Y_metadata=noise_dict). 我是否特别错过了对 log_predictive_density 函数的一些调整?

谢谢你的时间!