GPflow 2.0 是否支持将先验放在 GP 的(超)参数上?

Does GPflow 2.0 support putting priors on (hyper)parameters of GPs?

我想先了解一下 GPflow 中 GP 模型的(超)参数,但我找不到任何关于此问题的模块(如 gpflow.priors)或文档。

此外,我注意到 priorclass parameter, together with a 的参数之一。

GPflow 2.0 使用 tensorflow_probability 分布对象作为先验,例如

model.kernel.lengthscales.prior = tensorflow_probability.distributions.Gamma(
    gpflow.utilities.to_default_float(1.0), gpflow.utilities.to_default_float(1.0)
)

(或将分布对象作为 gpflow.Parameter class 的 prior 参数传递)。请注意,默认情况下 TensorFlow 使用 float32,而对于 GP,我们通常希望在 float64 中工作 - 因此调用 to_default_float.

这个在文档中都有提到,都在notebook on understanding models and discussed in depth in the notebook on how to use MCMC with GPflow.