NUTS 采样器可能会变慢或失速有什么原因吗?我使用http://twiecki.github.io/blog/2014/03/17/bayesian-glms-3/作为一些分层线性回归工作的基础。我尝试从 find_MAP() 开始,但在 2000 次迭代中的 100 次后它仍然停滞不前
我的代码是
with pm.Model() as hierarchical_model:
# Hyperpriors for group nodes
mu_a = pm.Normal('mu_alpha', mu=0., sd=100**2)
sigma_a = pm.Uniform('sigma_alpha', lower=0, upper=100)
mu_b = pm.Normal('mu_beta', mu=0., sd=100**2)
sigma_b = pm.Uniform('sigma_beta', lower=0, upper=100)
a = pm.Normal('alpha', mu=mu_a, sd=sigma_a, shape=n_dis)
b = pm.Normal('beta', mu=mu_b, sd=sigma_b, shape=n_dis)
# Model error
eps = pm.Uniform('eps', lower=0, upper=100)
actual_est = a[disRefV] + b[disRefV] * data.baseline.values
actual_like = pm.Normal('actual_like', mu=actual_est, sd=eps, observed=data.prepanel)
with hierarchical_model:
start = pm.find_MAP()
step = pm.NUTS()
hierarchical_trace = pm.sample(2000, step, progressbar=True)
提前谢谢了