Aditya Manuwal
Aditya Manuwal

Reputation: 1

Autocorrelation time keeps increase as the number of steps is increased in an MCMC analysis

I have obtained best-fits for surface mass density profiles by maximising the Poisson log-likelihood (minimizing Cstat, to be exact), and am using the emcee python package to obtain posteriors for the corresponding model parameters. Typically, it is thought that sampler chains should be longer than 50 times the autocorrelation time for reliable results, followed by a split-R_hat statistic of <1.01 for convergence. I am trying to assess the minimum number of steps required for my problem by running the mcmc, computing the autocorrelation time, and then repeating this with number of steps greater than the autocorrelation time suggested by the previous iteration -- expecting the autocorrelation time to converge at some point.

In practice, however, the autocorrelation time keeps on increasing with number of steps, and seems divergent: it began with 5000 and is now at 10^6! The starting point of mcmc is taken as the best-fit values and the sampler is run for 1000 steps, after which it is reset and run again for N steps. Initially, I thought it might be due to a Gaussian likelihood function, which can result in biased results for integer count data. While changing it to a Poisson likelihood did improve the fits substantially, it did not resolve the mcmc issue. I have even tried other moving methods beyond the default 'Stretch' mode, but to no aid. I am using 32 walkers and 16 cores at present. I have tried increasing the number of walkers as well. Does anyone have any insights about potential causes for this peculiar behaviour? Can the correlation between the fitting parameters contribute?

Upvotes: 0

Views: 45

Answers (0)

Related Questions