tensorflow2.0 - GPflow 2.0 是否支持将先验放在 GP 的(超)参数上?
问题描述
我想先介绍一下 GPflow 中 GP 模型的(超)参数,但我找不到任何关于此问题的模块(如 gpflow.priors)或文档。
解决方案
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)
)
(或将分发对象作为prior
gpflow.Parameter 类的参数传递)。请注意,TensorFlow 默认使用 float32,而对于 GP,我们通常希望使用 float64 - 因此调用to_default_float
.
这在文档中提到,无论是在理解模型的笔记本中,还是在笔记本中关于如何使用 MCMC 和 GPflow的深入讨论。
推荐阅读
- c++ - 为什么这个经过时间(帧时间)计算会锁定我的游戏
- java - 为什么 pageContext.request.contextPath 被解释为 $%7BpageContext.request.contextPath%7D?
- c# - 当我使用来自 UWP 的 Launcher.LaunchUriAsync 转到 MS Edge 时,我可以删除搜索引擎请求吗?
- scrapy - 限制scrapy请求和项目
- regex - 正则表达式可选括号分成强制三组
- java - 使用geotools开发wms服务时如何将地图图像输出到浏览器?
- scala - 如何将 XML 文件中的多列转换规则传递到 Spark 中的 Dataframe?
- c - 如何在给定的数字集合中找到第二大元素?
- php - 面临试图获取非对象的属性“名称”的问题无法解决
- django - django 登录屏幕不会从加载过渡到页面