18
3

Massively parallel MCMC for Bayesian hierarchical models

Abstract

We propose a simple, generic algorithm for parallelising Markov chain Monte Carlo (MCMC) algorithms for posterior inference of Bayesian hierarchical models. Our algorithm parallelises evaluation of the product-form likelihoods formed when a parameter has many children in the hierarchical model; and parallelises sampling of conditionally-independent sets of parameters. A simple heuristic algorithm is used to decide which approach to use for each parameter and to apportion computation across computational cores. The algorithm enables automatic parallelisation of the broad range of statistical models that can be fitted using BUGS-language software, making the dramatic speed-ups of modern multi-core computing accessible to applied statisticians, without requiring any experience of parallel programming. We demonstrate our approach using our freely-available open source implementation, called MultiBUGS (https://github.com/MultiBUGS/MultiBUGS), on simulated data designed to mimic a hierarchical e-health linked-data study of methadone prescriptions including 425,112 observations and 20,426 random effects. Reliable posterior inference for this model takes several hours in existing software, but MultiBUGS can perform inference in only 29 minutes using 48 computational cores.

View on arXiv
Comments on this paper