问题标签 [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.
gpflow - GPy 和 GPflow 数学背景 - 参考资料
GPy 和 GPflow 是否具有共同的数学背景?我问这个是因为我正在使用 GPy 但我看不到参考资料。但是,GPflow 在其示例中提供了参考。
使用继续使用 GPy 是否可以,或者您是否建议立即使用 GPflow 用于高斯过程?
scaling - 理解不同训练数据缩放方案的 GPy 标准差?
我正在尝试使用两个单独的模型对两个不同的输出(独立)进行预测。我正在使用问题物理中的相关因素对输入和输出数据进行规范化。但是平均值预测中的不确定性(标准偏差)在使用不同的缩放方案时会发生变化,而对于两种不同的方案,平均值本身的预测精度很高。
我如何理解与我使用的缩放方案无关的不确定性(GPy 模型预测的标准偏差)?我如何确定是否需要进行适当的转换才能获得输出量级的标准偏差。
对于任何缺乏明确性,我提前道歉。
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 作为参考,结果看起来很合理。
GPy 代码仅供参考,以建议拟合模型应该如何。我知道 GPy 和 GPflow 使用不同的方法。我的问题是为什么当我在一维中指定线性内核时 GPflow 模型不适合。
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)所示:
问题是我不断收到以下错误:
关于如何克服该问题的任何建议或我的实施是否有任何错误?
追溯:
machine-learning - 如何使用 scikit-learn GaussianProcessRegressor 重现 GPy GPRegression 的结果?
GPRegression
( GPy
) 和GaussianProcessRegressor
( )都scikit-learn
使用相似的初始值和相同的优化器 ( lbfgs
)。为什么结果差异很大?
结果
python - 具有非高斯似然和拉普拉斯推理函数的多任务/多输出 GPy Coregionalized Regression
我想在 GPy 中执行 coregionalized 回归,但是我使用的是伯努利似然,然后作为高斯估计,我使用拉普拉斯推理。PjkRbf
下面的代码显示了我通常如何使用此设置(使用我的自定义内核)运行单输出 GP :
现在我正在尝试运行相同的设置,但作为多输出。这是我一直无法做到的。
我已经尝试使用GPCoregionalizedRegression
带有 ICM 内核的类,如下面的代码所示:
运行此代码会引发 AssertionError,并带有很长的堆栈跟踪,但最后一部分显示以下内容。可能性不能断言为高斯。
这是因为我无法将拉普拉斯推理传递给GPCoregionalizedRegression
模型。
任何人都可以就如何解决这个问题提供建议,或者如果有不同的模型我可以使用伯努利似然法和拉普拉斯推理方法来执行多输出回归?
python - 使用泊松似然的 GP 回归
我正在尝试使用泊松似然来实现 GP 回归。我按照GPy中的例子做了
当我尝试使用 GPflow 做同样的事情时,我以以下方式实现
当我使用 GP 流程实现这一点时,超参数并没有从初始化值移动。另外,我得到了非常不同的结果,我做错了什么吗?
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 函数的一些调整?
谢谢你的时间!