Re-parametrization in multivariate models (MCMC)
Posted: Wed Feb 05, 2014 2:56 pm
Hello
I'm struggling to estimate a multivariate (4 outcomes) multilevel (2 levels) model on approx 100,000 observations using MCMC. Correlation between outcomes is allowed through a MVN error distribution at first and second level. The ESS on the constant terms in each of the four models is very low and trajectory plot suggests very bad mixing (ESS=50 with 5000 iterations). The other coefficients are generally fine (ESS>1000 with 5000 iterations). My ultimate interest will be in estimates of the second level unobserved effects (here: hospital effects), but I am concerned that the low ESS on the intercept will cause me problems.
To address this problem, I've started to look into re-parametrization techniques. However, it seems that many of the approaches implemented in MLwiN don't work in a multivariate framework. Can you confirm this? Is there any alternative approach that I should consider?
I've explored this issue by running univariate models (Gaussian) (see pdf file attached). As expected, hierarchical centering solved my problem of high auto-correlation, whereas SMVN greatly reduced the time it took to estimate the model. Orthogonal re-parametrization didn't do much. After that I moved to a bivariate model (both Gaussian) but none of the options seems to work. SMVN resulted in a cryptic error message, hierarchical centering wasn't allowed. Orthogonal was once again very similar to simple Gibbs(?) sampling.
I am using MLwiN 2.29 through x64\mlnscript.exe. I'm also using runmlwin from within Stata 12, but I don't think that's the problem here.
Any comments or suggestions would be highly appreciated.
Thanks
Nils
// Edit: Orthogonal re-parametrization seems to work in the bivariate setting. I've edited my response accordingly, sorry.
I'm struggling to estimate a multivariate (4 outcomes) multilevel (2 levels) model on approx 100,000 observations using MCMC. Correlation between outcomes is allowed through a MVN error distribution at first and second level. The ESS on the constant terms in each of the four models is very low and trajectory plot suggests very bad mixing (ESS=50 with 5000 iterations). The other coefficients are generally fine (ESS>1000 with 5000 iterations). My ultimate interest will be in estimates of the second level unobserved effects (here: hospital effects), but I am concerned that the low ESS on the intercept will cause me problems.
To address this problem, I've started to look into re-parametrization techniques. However, it seems that many of the approaches implemented in MLwiN don't work in a multivariate framework. Can you confirm this? Is there any alternative approach that I should consider?
I've explored this issue by running univariate models (Gaussian) (see pdf file attached). As expected, hierarchical centering solved my problem of high auto-correlation, whereas SMVN greatly reduced the time it took to estimate the model. Orthogonal re-parametrization didn't do much. After that I moved to a bivariate model (both Gaussian) but none of the options seems to work. SMVN resulted in a cryptic error message, hierarchical centering wasn't allowed. Orthogonal was once again very similar to simple Gibbs(?) sampling.
I am using MLwiN 2.29 through x64\mlnscript.exe. I'm also using runmlwin from within Stata 12, but I don't think that's the problem here.
Any comments or suggestions would be highly appreciated.
Thanks
Nils
// Edit: Orthogonal re-parametrization seems to work in the bivariate setting. I've edited my response accordingly, sorry.