- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我最近一直面临一个问题,我认为多输出 GP 可能是一个不错的候选者。我目前正在对我的数据应用单输出 GP,随着维度的增加,我的结果越来越差。我已经尝试过使用 SKlearn 进行多输出,并且能够在更高维度上获得更好的结果,但是我相信 GPy 对于此类任务更完整,我会对模型有更多控制。对于单输出 GP,我将内核设置如下:
kernel = GPy.kern.RBF(input_dim=4, variance=1.0, lengthscale=1.0, ARD = True)
m = GPy.models.GPRegression(X, Y_single_output, kernel = kernel, normalizer = True)
m.optimize_restarts(num_restarts=10)
kernel = GPy.kern.RBF(1,lengthscale=1, ARD = True)**GPy.kern.Coregionalize(input_dim=1,output_dim=4, rank=1)
m = GPy.models.GPRegression(X_mult_output,Y_mult_output, kernel = kernel, normalizer = True)
x_pred = np.array([3,2,2,4])
Y_metadata1 = {'output_index': np.array([[0]])}
y1_pred = m.predict(np.array(x[0]).reshape(1,-1),Y_metadata=Y_metadata1)
IndexError: index 1 is out of bounds for axis 1 with size 1
Traceback (most recent call last):
File "<ipython-input-9-edb25bc29817>", line 36, in <module>
y1_pred = m.predict(np.array(x[0]).reshape(1,-1),Y_metadata=Y_metadata1)
File "c:\users\johndoe\desktop\modules\sheffieldml-gpy-v1.9.9-0-g92f2e87\sheffieldml-gpy-92f2e87\GPy\core\gp.py", line 335, in predict
mean, var = self._raw_predict(Xnew, full_cov=full_cov, kern=kern)
File "c:\users\johndoe\desktop\modules\sheffieldml-gpy-v1.9.9-0-g92f2e87\sheffieldml-gpy-92f2e87\GPy\core\gp.py", line 292, in _raw_predict
mu, var = self.posterior._raw_predict(kern=self.kern if kern is None else kern, Xnew=Xnew, pred_var=self._predictive_variable, full_cov=full_cov)
File "c:\users\johndoe\desktop\modules\sheffieldml-gpy-v1.9.9-0-g92f2e87\sheffieldml-gpy-92f2e87\GPy\inference\latent_function_inference\posterior.py", line 276, in _raw_predict
Kx = kern.K(pred_var, Xnew)
File "c:\users\johndoe\desktop\modules\sheffieldml-gpy-v1.9.9-0-g92f2e87\sheffieldml-gpy-92f2e87\GPy\kern\src\kernel_slice_operations.py", line 109, in wrap
with _Slice_wrap(self, X, X2) as s:
File "c:\users\johndoe\desktop\modules\sheffieldml-gpy-v1.9.9-0-g92f2e87\sheffieldml-gpy-92f2e87\GPy\kern\src\kernel_slice_operations.py", line 65, in __init__
self.X2 = self.k._slice_X(X2) if X2 is not None else X2
File "<decorator-gen-140>", line 2, in _slice_X
File "C:\Users\johndoe\AppData\Roaming\Python\Python37\site-packages\paramz\caching.py", line 283, in g
return cacher(*args, **kw)
File "C:\Users\johndoe\AppData\Roaming\Python\Python37\site-packages\paramz\caching.py", line 172, in __call__
return self.operation(*args, **kw)
File "c:\users\johndoe\desktop\modules\sheffieldml-gpy-v1.9.9-0-g92f2e87\sheffieldml-gpy-92f2e87\GPy\kern\src\kern.py", line 117, in _slice_X
return X[:, self._all_dims_active]
IndexError: index 1 is out of bounds for axis 1 with size 1
最佳答案
问题
您已经用维度 (-1, 4) 的 X 和维度 (-1, 1) 的 Y 定义了内核,但是您给它的是维度 (1, 1) 的 X_pred(x_pred 的第一个元素重新整形为 (1, 1) ))
解决方案
将 x_pred 提供给模型进行预测(维度为 (-1, 4) 的输入)
Y_metadata1 = {'output_index': np.array([[0]])}
y1_pred = m.predict(np.array(x_pred).reshape(1,-1), Y_metadata=Y_metadata1)
Y_metadata1 = {'output_index': np.array([[0]])}
a = np.array(x_pred[0]).reshape(1,-1)
print(a.shape)
y1_pred = m.predict(a,Y_metadata=Y_metadata1)
(1,1)
和错误,这使得很明显错误来自输入维度。
kern.K(pred_var, Xnew)
中存在问题,所以错误可能来自内核,
X[:, self._all_dims_active]
所以错误可能来自 X 维度。然后通过对 x 维度的一些实验,你就会明白这个想法。
关于python - 使用 GPy Multiple-output coregionalized 预测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61475796/
我计算了两个 GP 回归模型,并希望将它们绘制在同一张图中。 模型1 kernel = GPy.kern.RBF(input_dim=1, variance=.1, lengthscale=1.) m
我正在尝试保存优化的高斯过程模型以用于不同的脚本。我目前的想法是利用 GPy 的内置 to_dict 和 from_dict 函数将模型信息存储在 json 文件中。类似的东西: import GPy
我使用 GPy 在 Python 中计算了一个高斯过程模型: ker0 = GPy.kern.Bias(input_dim=1,variance=1e-2) ... m = GPy.models.GP
我正在使用 GPy Python 2.7 中的库来执行高斯过程回归。我首先遵循 GitHub 页面中提供的教程笔记本。 示例代码: import numpy as np import matplotl
在浏览完所有在线文档和示例后,我无法找到一种方法来从 GPy 中提取有关置信度或预测区间的信息。模型。 我生成这样的虚拟数据, ## Generating data for regression #
我最近一直面临一个问题,我认为多输出 GP 可能是一个不错的候选者。我目前正在对我的数据应用单输出 GP,随着维度的增加,我的结果越来越差。我已经尝试过使用 SKlearn 进行多输出,并且能够在更高
我正在使用 Mirametrix S2 眼动追踪设备。在 API 文档 (v1.1) 中,它表示 ENABLE_SEND_GPI 命令允许跟踪客户端将数据插入注视流。复制一些示例代码,我尝试了以下操作
我是一名优秀的程序员,十分优秀!