用Arviz绘制的旧PyMC3样式分组跟踪图

问题描述

我有一个旧的博客文章,我正在其中训练PyMC3模型。您可以找到博客文章here,但该模型的要点如下所示。

static void modify(ref ball){
     Ball[0].name="New name";
     Ball[0].num=54;
     Ball[0].city="Barcelona";
}

在此数据集中,我估计with pm.Model() as model: mu_intercept = pm.Normal('mu_intercept',mu=40,sd=5) mu_slope = pm.HalfNormal('mu_slope',10,shape=(n_diets,)) mu = mu_intercept + mu_slope[df.diet-1] * df.time sigma_intercept = pm.HalfNormal('sigma_intercept',sd=2) sigma_slope = pm.HalfNormal('sigma_slope',sd=2,shape=n_diets) sigma = sigma_intercept + sigma_slope[df.diet-1] * df.time weight = pm.Normal('weight',mu=mu,sd=sigma,observed=df.weight) approx = pm.fit(20000,random_seed=42,method="fullrank_advi") 对鸡的体重的影响。这就是traceplot的样子。

traceplot

看看它有多漂亮!每种饮食都有自己的路线!好漂亮!

Arviz更改

此跟踪图是使用较旧的PyMC3 API制作的。如今,此功能已移至arviz。因此,尝试重做这项工作,但是...情节看起来非常不同。

enter image description here

我在这里使用的代码稍有不同。我现在正在使用Diet,但我怀疑是否应该造成这种差异。

pm.Data

我该怎么做才能使每个DIET重新获得不同的颜色?

解决方法

新的plot_trace函数中有一个参数。这可以解决问题;

az.plot_trace(trace,compact=True)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...