PyMC3:如何使用 pymc3.traceplot() 在 traceplot 上重叠意味着

PyMC3: How to use pymc3.traceplot() to overlap means on traceplot

有一个函数 pymc3.traceplot() 可以绘制采样过程的轨迹图。我看到该函数接受一个参数 lines,该参数接受一个字典,您可以在其中将方法作为要绘制的线传递。你会怎么做?

您可以传递任何您想要的值,而不仅仅是平均值。

theta_val = 0.35
pm.traceplot(trace, lines={'theta':theta_val})

theta 是模型中变量的名称,theta_val 是您要绘制(重叠)的值。

您可以通过执行以下操作计算迹线的平均值:

trace['theta'].mean()

或者您也可以这样做:

lines = {var:trace[var].mean() for var in trace.varnames}