如何评估pymc3中的log-posterior

时间:2017-08-07 13:35:43

标签: python bayesian pymc3

我想在样本点和某些手动输入的点(例如合成数据集的真实参数值点)评估log后验(理想情况下,分别为对数先验和对数似然)值。我怎样才能在PyMC3中实现这个目标?

更新: 我找到了logp()方法,但是对于多个点使用它并不是很方便。是否有一些标准/习惯的方法?

更新: 这个[y.logp(trace[i]) for i in range(len(trace))]有效,但是超级低。

更新: y是观察到的随机变量这一事实导致缓慢,调用模型logp方法的速度很快。

1 个答案:

答案 0 :(得分:1)

好的,现实是最好在他们discourse forum.

上询问PyMC3相关问题

所以to get the values of log-posterior after sampling使用

logp = mvg_model.logp lnp = np.array([logp(trace.point(i,chain=c)) for c in trace.chains for i in range(len(trace))])

To save them during sampling使用

```

with model:
   llk = pm.Deterministic(likelihood_name, model.logpt)

```