4
$\begingroup$

I am after some general advice regarding my MCMC scheme, which is causing me some grief.

Essentially, I have a large (2N + 9 parameters) MCMC scheme which works great. However, the problem is that the estimation of two of these parameters consumes around 95% of the total computational time. The sampler can take up to 25 hours to sample (large data set @ 20,000 sweeps).

However, for these two special parameters, once they are estimated (after 1,000 loops or so), they are estimated very accurately, and do not move much (extremely small bias). Clearly, there is no benefit to estimate these parameters for each sweep, as they are time consuming and do not change very much.

Is there an "elegant" way to avoid having to estimate these parameters for each sweep? Is there examples where people estimate it for say, every 10th sweep? Not sure if by doing this, it will violate some serious Markov chain assumptions. Thanks in advance for any tips you can provide.

Edit: Without going into too much unnecessary detail, my model is hierarchical, and these two particular parameters are estimated jointly.

$\endgroup$
1
  • $\begingroup$ Welcome ! Can you describe more your MCMC scheme ? so that we can see what can be simply modified to achieve your purpose. $\endgroup$ – peuhp Jan 2 '16 at 10:05
4
$\begingroup$

This is a most interesting question! If you manage a good estimation of some parameters, the early MCMC steps can be used to produce a decent approximation to the genuine posterior on those parameters, approximation that is used as proposal later. Decreasing the frequency of updating those parameters against the other updates is completely fine in terms of convergence properties.

$\endgroup$
1
  • $\begingroup$ Thanks for the tip. Can you recommend a reliable paper which uses this? $\endgroup$ – akkp Jan 2 '16 at 23:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.