问题标签 [gpytorch]
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.
python - 什么是`gpytorch.settings.max_preconditioner_size`?还有`gpytorch.beta_features.checkpoint_kernel(checkpoint_size)`?
我正在关注教程Simple_MultiGPU_GP_Regression并且我注意到在训练期间建立了两个选项:
什么是或指变量checkpoint_kernel
和preconditioner_size
?
我已经检查了文档preconditioner_size但我不太清楚它指的是什么。
我直觉这checkpoint_size
指的是与每个 GPU 相关的训练点数相关的东西。但这只是一种直觉。
帮助表示赞赏。
谢谢
pytorch - 在 Google Colab 上使用 GPU 的 PyTorch v1.3?
Google colab notebook 附带 PyTorch 和 GPU 支持——请参阅这个相关的 SO 答案,然后您应该将 notebook 运行时从 CPU 更改为 GPU(从顶部的 Colab 菜单栏)。
然而,尝试从 GPyTorch 训练模型总是失败
为什么?
相关资料:
python - Sklearn 高斯过程和 Gpytorch 给出不同的结果
我尝试使用 GPyTorch 版本在 sklearn 实现中复制 GP 回归的解决方案。不幸的是,我不能举一个原始数据集的例子,这是专有的。sklearn 解决方案的测试 mse 始终比 pytorch 版本低 40%,但我对 Torch 也不是很熟悉。还有另一个问题处理类似的问题,它似乎是关于多输出 GP 回归的特定问题,这似乎不适用于这里。
我尝试使用与原始数据完全不同的人工数据集来复制问题:
顺便说一下,在这个例子中,GPytorch 效果更好。更具体地说,我试图了解噪声方差的差异。通过尝试,我发现 alpha 参数,它本质上设置了协方差对角线上的噪声水平,对测试 mse 的好坏有很大的影响。如果我理解正确的话,就是这个参数在通过反向传播推断的火炬中。除此之外,如果允许 torch 变体充分放松为一个好的解决方案,这两个内核看起来是相同的。
我的问题是:
如何在 pytorch 内核上设置和固定噪声协方差?
推断的长度尺度在不同的实现之间似乎有很大的不同,这在原始实现的专有数据集上尤其如此。这怎么解释?
还有其他因素可以解释性能差异吗?数据的哪些方面会放大这种差异?
deep-learning - 没有名为“points.datasets”或点的模块
我试图在 3D Mesh Faust 数据集上实现这个模型https://github.com/rusty1s/pytorch_geometric/blob/master/benchmark/points/point_cnn.py 。但是,发生此故障,我无法通过 !pip intall "package" 解决。我能得到帮助吗谢谢。
pytorch - 将内核应用于 gpytorch 中的单独维度
我正在将 GPflow 中的三维高斯过程回归代码转换为 GPyTorch,以利用 PyTorch 的本机可扩展性来实现精确的 GPR。
此示例很有帮助,但无法找到有关如何将不同内核应用于多维 GPR 中的各个维度的解释(例如,将 Matern52 内核应用于维度 [0,1],将 Matern 32 内核应用于维度 [2] )。
GPyTorch 是否支持该功能,如果支持,它是如何实现的/我在哪里可以找到示例?
python - 高斯过程wrt特征的偏导数
给定具有多维特征和标量观察的高斯过程模型,如何在 GPyTorch 或 GPFlow(或 scikit-learn)中计算输出到每个输入的导数?
python - 有没有办法定义“异构”内核设计以将线性算子合并到 GPflow(或 GPytorch/GPy/...)的回归中?
我正在尝试使用线性运算符执行 GP 回归,例如 Särkka 的这篇论文中所述:https://users.aalto.fi/~ssarkka/pub/spde.pdf在这个例子中,我们可以从方程(8 )我需要一个不同的核函数用于完整协方差矩阵中的四个协方差块(训练和测试数据)。
这绝对是可能且有效的,但我想将其包含在(最好)GPflow 或 GPytorch、GPy 等的内核定义中。
但是,在Gpflow中的内核设计文档中,唯一的可能性是定义一个作用于所有协方差块的协方差函数。原则上,上面的方法应该是直接添加我自己(核函数表达式可以解析得出),但我看不到任何将“异构”核函数合并到回归或核类中的方法。我尝试咨询其他软件包,例如Gpytorch和Gpy,但同样,内核设计似乎不允许这样做。
也许我在这里遗漏了一些东西,也许我对底层实现不够熟悉来评估这一点,但如果有人以前做过这个或看到(什么应该是相当直接的?)实现可能性,我会很高兴找出答案。
非常感谢您的回答!
亲切的问候
kernel - GPyTorch,如何为“lengthscale”超参数设置初始值?
我根据文档使用 GPyTorch 回归器。
我想为 RBF 内核中的“lengthscale”超参数设置一个初始值。
我想设置一个常数作为“lengthscale”的初始值(类似于我们在 scikit-learn Gaussian Process Regressor 中可以做的事情)。
如果您有任何想法,请告诉我。
python - 使用具有相同超参数的 gpytorch 重现高斯过程的预测协方差的问题
我需要构建一个函数来给出高斯过程的后验协方差。这个想法是使用 GPytorch 训练 GP,然后获取学习的超参数,并将它们传递给我的内核函数。(由于几个原因,我不能直接使用 GPyTorch)。
现在的问题是我无法重现预测。这里是我写的代码。我整天都在努力,但我找不到问题所在。你知道我做错了什么吗?