We present an architectural design of a library for Bayesian modelling and inference in modern functional programming languages. The novel aspect of our approach are modular correct-by-construction implementa- tions of existing state-of-the-art inference algorithms. Our design relies on three inherently functional features: higher-order functions, inductive data-types, and support for either type-classes or an expressive module system. We provide a performant Haskell implementation of this architecture, demonstrating that high-level and modular probabilistic programming can be added as a library in sufficiently expressive languages. We review the core abstractions in this architecture: inference representations, inference transformations, and inference representation transformers. We then implement concrete instances of these abstractions, counterparts to particle filters and Metropolis-Hastings samplers, which form the basic building blocks of our library. By composing these building blocks we obtain state-of-the-art inference algorithms: Resample-Move Sequential Monte Carlo, Particle Marginal Metropolis-Hastings, and Sequential Monte Carlo squared. We evaluate our implementation against existing probabilistic programming systems and find it is already com- petitively performant, although we conjecture that existing functional programming optimisation techniques could reduce the overhead associated with the abstractions we use. We show that our modular design enables deterministic testing of inherently stochastic Monte Carlo algorithms. Finally, we demonstrate using OCaml that an expressive module system can also implement our design.
Mon 24 SepDisplayed time zone: Guadalajara, Mexico City, Monterrey change
16:40 - 18:10 | Probabilistic Programming and LearningResearch Papers at Stifel Theatre Chair(s): Michael Sperber Active Group GmbH | ||
16:40 22mTalk | The Simple Essence of Automatic DifferentiationDistinguished Paper Research Papers Conal Elliott Target, USA DOI | ||
17:02 22mTalk | Functional Programming for Modular Bayesian Inference Research Papers Adam Ścibior University of Cambridge and MPI Tuebingen, Ohad Kammar University of Oxford, Zoubin Ghahramani University of Cambridge DOI | ||
17:25 22mTalk | Contextual Equivalence for a Probabilistic Language with Continuous Random Variables and Recursion Research Papers Mitchell Wand Northeastern University, USA, Ryan Culpepper Czech Technical University, Theophilos Giannakopoulos BAE Systems, Inc., Andrew Cobb Northeastern University DOI | ||
17:47 22mTalk | Teaching How to Program using Automated Assessment and Functional Glossy Games (Experience Report) Research Papers José Bacelar Almeira University of Minho & INESC TEC, Alcino Cunha University of Minho and INESC TEC, Portugal, Nuno Macedo University of Minho & INESC TEC, Hugo Pacheco University of Minho, Portugal, José Proença HASLab/INESC TEC & University of Minho DOI |