Bayesian State-Space Modelling on High-Performance Hardware Using LibBi

LibBi is a software package for state space modelling and Bayesian inference on modern computer hardware, including multi-core central processing units, many-core graphics processing units, and distributed-memory clusters of such devices. The software parses a domain-specific language for model specification, then optimizes, generates, compiles and runs code for the given model, inference method and hardware platform. In presenting the software, this work serves as an introduction to state space models and the specialized methods developed for Bayesian inference with them. The focus is on sequential Monte Carlo (SMC) methods such as the particle filter for state estimation, and the particle Markov chain Monte Carlo and SMC2 methods for parameter estimation. All are well-suited to current computer hardware. Two examples are given and developed throughout, one a linear three-element windkessel model of the human arterial system, the other a nonlinear Lorenz '96 model. These are specified in the prescribed modelling language, and LibBi demonstrated by performing inference with them. Empirical results are presented, including a performance comparison of the software with different hardware configurations.

[1]  G. Evensen Sequential data assimilation with a nonlinear quasi‐geostrophic model using Monte Carlo methods to forecast error statistics , 1994 .

[2]  P. Moral,et al.  A nonasymptotic theorem for unnormalized Feynman-Kac particle models , 2011 .

[3]  John Parslow,et al.  Bayesian learning and predictability in a stochastic nonlinear dynamical model. , 2012, Ecological applications : a publication of the Ecological Society of America.

[4]  Nicolas Chopin,et al.  SMC2: an efficient algorithm for sequential analysis of state space models , 2011, 1101.1528.

[5]  Lawrence M. Murray,et al.  A Bayesian approach to state and parameter estimation in a Phytoplankton-Zooplankton model , 2010 .

[6]  Gareth O. Roberts,et al.  A General Framework for the Parametrization of Hierarchical Models , 2007, 0708.3797.

[7]  Kathryn B. Laskey,et al.  Population Markov Chain Monte Carlo , 2004, Machine Learning.

[8]  N. Metropolis,et al.  Equation of State Calculations by Fast Computing Machines , 1953, Resonance.

[9]  John Parslow,et al.  On Disturbance State-Space Models and the Particle Marginal Metropolis-Hastings Sampler , 2012, SIAM/ASA J. Uncertain. Quantification.

[10]  Anthony Lee,et al.  Parallel Resampling in the Particle Filter , 2013, 1301.4019.

[11]  Anthony Lee,et al.  Rethinking resampling in the particle filter on graphics processing units , 2013, ArXiv.

[12]  Adam M. Johansen,et al.  SMCTC : sequential Monte Carlo in C++ , 2009 .

[13]  P. Fearnhead,et al.  Particle filters for partially observed diffusions , 2007, 0710.4245.

[14]  Ralph S. Silva,et al.  On Some Properties of Markov Chain Monte Carlo Simulation Methods Based on the Particle Filter , 2012 .

[15]  A. S. Formulation Particle Smoothing in Continuous Time: A Fast Approach via Density Estimation , 2011 .

[16]  N. Cressie,et al.  Rethinking soil carbon modelling: a stochastic approach to quantify uncertainties , 2014 .

[17]  Herb Sutter,et al.  The Free Lunch Is Over A Fundamental Turn Toward Concurrency in Software , 2013 .

[18]  Paul Fearnhead,et al.  Observed diffusion processes (with discussion). , 2006 .

[19]  D. L. Freeman,et al.  Reducing Quasi-Ergodic Behavior in Monte Carlo Simulations by J-Walking: Applications to Atomic Clusters , 1990 .

[20]  W. K. Hastings,et al.  Monte Carlo Sampling Methods Using Markov Chains and Their Applications , 1970 .

[21]  E. Lorenz Predictability of Weather and Climate: Predictability – a problem partly solved , 2006 .

[22]  C. Striebel,et al.  On the maximum likelihood estimates for linear dynamic systems , 1965 .

[23]  P. Fearnhead,et al.  Exact and computationally efficient likelihood‐based estimation for discretely observed diffusion processes (with discussion) , 2006 .

[24]  Lawrence M. Murray,et al.  GPU acceleration of the particle filter: the Metropolis resampler , 2012, ArXiv.

[25]  Arnaud Doucet,et al.  On the Utility of Graphics Cards to Perform Massively Parallel Simulation of Advanced Monte Carlo Methods , 2009, Journal of computational and graphical statistics : a joint publication of American Statistical Association, Institute of Mathematical Statistics, Interface Foundation of North America.

[26]  Han Lin Shang,et al.  The BUGS book: a practical introduction to Bayesian analysis , 2013 .

[27]  Radford M. Neal MCMC Using Hamiltonian Dynamics , 2011, 1206.1901.

[28]  Darren J Wilkinson,et al.  Bayesian parameter inference for stochastic biochemical network models using particle Markov chain Monte Carlo , 2011, Interface Focus.

[29]  Len Thomas,et al.  Monte carlo inference for state-space models of wild animal populations. , 2009, Biometrics.

[30]  Martyn Plummer,et al.  JAGS: Just Another Gibbs Sampler , 2012 .

[31]  Terry Lyons NUMERICAL METHODS FOR STOCHASTIC DIFFERENTIAL EQUATIONS , 2004 .

[32]  Andrew Thomas,et al.  WinBUGS - A Bayesian modelling framework: Concepts, structure, and extensibility , 2000, Stat. Comput..

[33]  Jeffrey K. Uhlmann,et al.  New extension of the Kalman filter to nonlinear systems , 1997, Defense, Security, and Sensing.

[34]  Martyn Plummer,et al.  JAGS: A program for analysis of Bayesian graphical models using Gibbs sampling , 2003 .

[35]  G. Kitagawa Monte Carlo Filter and Smoother for Non-Gaussian Nonlinear State Space Models , 1996 .

[36]  P. Moral,et al.  Sequential Monte Carlo samplers , 2002, cond-mat/0212648.

[37]  Lawrence M. Murray,et al.  GPU Acceleration of Runge-Kutta Integrators , 2012, IEEE Transactions on Parallel and Distributed Systems.

[38]  H. Haario,et al.  An adaptive Metropolis algorithm , 2001 .

[39]  M. Dowd Estimating parameters for a stochastic dynamic marine ecological system , 2011 .

[40]  M. Dowd A sequential Monte Carlo approach for marine ecological prediction , 2006 .

[41]  P. Moral Feynman-Kac Formulae: Genealogical and Interacting Particle Systems with Applications , 2004 .

[42]  Michel Verhaegen,et al.  Estimation of Three- and Four-Element Windkessel Parameters Using Subspace Model Identification , 2010, IEEE Transactions on Biomedical Engineering.

[43]  Chao Yang,et al.  Learn From Thy Neighbor: Parallel-Chain and Regional Adaptive MCMC , 2009 .

[44]  Naoki Miura,et al.  A state-space model of the hemodynamic approach: nonlinear filtering of BOLD signals , 2004, NeuroImage.

[45]  G. Roberts,et al.  Adaptive Markov Chain Monte Carlo through Regeneration , 1998 .

[46]  F. L. Deremer,et al.  Practical translators for LR(k) languages , 1969 .

[47]  Anthony Lee,et al.  Feynman-Kac Particle Integration with Geometric Interacting Jumps , 2012, 1211.7191.

[48]  C. Geyer Markov Chain Monte Carlo Maximum Likelihood , 1991 .

[49]  Andrew Gelman,et al.  The No-U-turn sampler: adaptively setting path lengths in Hamiltonian Monte Carlo , 2011, J. Mach. Learn. Res..

[50]  A. Doucet,et al.  Particle Markov chain Monte Carlo methods , 2010 .

[51]  Jack J. Dongarra,et al.  Enabling and scaling matrix computations on heterogeneous multi-core and multi-GPU systems , 2012, ICS '12.

[52]  Darren J. Wilkinson,et al.  Bayesian inference for nonlinear multivariate diffusion models observed with error , 2008, Comput. Stat. Data Anal..

[53]  M. V. Tretyakov,et al.  Stochastic Numerics for Mathematical Physics , 2004, Scientific Computation.

[54]  D. Fogel Evolutionary algorithms in theory and practice , 1997, Complex..

[55]  G. Parisi,et al.  Simulated tempering: a new Monte Carlo scheme , 1992, hep-lat/9205018.

[56]  Christophe Andrieu,et al.  A tutorial on adaptive MCMC , 2008, Stat. Comput..

[57]  Petar M. Djuric,et al.  Resampling algorithms and architectures for distributed particle filters , 2005, IEEE Transactions on Signal Processing.

[58]  A. Shapiro Monte Carlo Sampling Methods , 2003 .

[59]  Philip Ross,et al.  Why CPU Frequency Stalled , 2008, IEEE Spectrum.

[60]  G. Peters,et al.  Ecological non-linear state space model selection via adaptive particle Markov chain Monte Carlo (AdPMCMC) , 2010, 1005.2238.

[61]  C. Geyer,et al.  Annealing Markov chain Monte Carlo with applications to ancestral inference , 1995 .

[62]  Victor C. M. Leung,et al.  Unscented Rauch--Tung--Striebel Smoother , 2008, IEEE Transactions on Automatic Control.

[63]  K. Vahala Handbook of stochastic methods for physics, chemistry and the natural sciences , 1986, IEEE Journal of Quantum Electronics.

[64]  P. Kloeden,et al.  Numerical Solution of Stochastic Differential Equations , 1992 .

[65]  A. Doucet,et al.  Efficient implementation of Markov chain Monte Carlo when using an unbiased likelihood estimator , 2012, 1210.1871.

[66]  R Core Team,et al.  R: A language and environment for statistical computing. , 2014 .

[67]  S. F. Schmidt APPLICATION OF STATISTICAL FILTER THEORY TO THE OPTIMAL ESTIMATION OF POSITION AND VELOCITY ON BOARD A CIRCUMLUNAR VEHICLE , 2022 .

[68]  O. Frank,et al.  Die grundform des arteriellen pulses , 1899 .

[69]  G. Amdhal,et al.  Validity of the single processor approach to achieving large scale computing capabilities , 1967, AFIPS '67 (Spring).

[70]  T. Başar,et al.  A New Approach to Linear Filtering and Prediction Problems , 2001 .

[71]  Berend E. Westerhof,et al.  The arterial Windkessel , 2009, Medical & Biological Engineering & Computing.

[72]  John W. Eaton,et al.  Gnu Octave Manual , 2002 .

[73]  Gareth W. Peters,et al.  Estimating density dependence and latent population trajectories with unknown observation error , 2012 .

[74]  Donald Geman,et al.  Stochastic relaxation, Gibbs distributions, and the Bayesian restoration of images , 1984 .

[75]  Radford M. Neal Sampling from multimodal distributions using tempered transitions , 1996, Stat. Comput..

[76]  Ba-Ngu Vo,et al.  The Gaussian Mixture Probability Hypothesis Density Filter , 2006, IEEE Transactions on Signal Processing.

[77]  Pierre E. Jacob,et al.  Path storage in the particle filter , 2013, Statistics and Computing.

[78]  H. Sorenson,et al.  Nonlinear Bayesian estimation using Gaussian sum approximations , 1972 .

[79]  Nando de Freitas,et al.  Sequential Monte Carlo Methods in Practice , 2001, Statistics for Engineering and Information Science.

[80]  P. Fearnhead,et al.  Random‐weight particle filtering of continuous time processes , 2010 .

[81]  Christopher K. Wikle,et al.  Hierarchical Bayesian Models for Predicting The Spread of Ecological Processes , 2003 .

[82]  S. Roweis,et al.  Continuous Time Particle Filtering for fMRI , 2007 .

[83]  N. Gordon,et al.  Novel approach to nonlinear/non-Gaussian Bayesian state estimation , 1993 .