Inference Compilation and Universal Probabilistic Programming
By Tuan Anh Le, Atilim Gunes Baydin, Frank D. Wood. 2016
149 citations recorded by the source corpus.
We introduce a method for using deep neural networks to amortize the cost of inference in models from the family induced by universal probabilistic programming languages, establishing a framework that combines the strengths of probabilistic programming and deep learning methods. We call what we do "compilation of inference" because our method transforms a denotational specification of an inference problem in the form of a probabilistic program written in a universal programming language into a trained neural network denoted in a neural network specification language. When at test time this neural network is fed observational data and executed, it performs approximate inference in the original model specified by the probabilistic program. Our training objective and learning procedure are designed to allow the trained neural network to be used as a proposal distribution in a sequential importance sampling inference engine. We illustrate our method on mixture models and Captcha solving and show significant speedups in the efficiency of inference.
Subfields: Artificial Intelligence, Probabilistic & Bayesian Methods
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Artificial Intelligence
- Frank D. Wood
- Ruslan Salakhutdinov
- Sergey Levine
- Josh Tenenbaum
- Yoshua Bengio
- Eric P. Xing
- Gilles Louppe
- Percy Liang
In Probabilistic & Bayesian Methods
- Frank D. Wood
- Hongseok Yang
- Gilles Louppe
- Yura N. Perov
- Brooks Paige
- Jan-Willem van de Meent
- George Papamakarios
- Iain Murray
Citations in the corpus
- Foundation Posteriors for Approximate Probabilistic Inference (2022, neutral): “In these cases, we apply a useful trick by optimizing KL ( p q ) rather than KL ( q p ) : Equation 1 is called compiled inference [40].”
- The frontier of simulation-based inference (2019, methodology): “1C) or on training a neural network to provide proposal distributions (49) as shown in Fig.”
- Masked Autoregressive Flow for Density Estimation (2017, background): “Density estimators can learn effective proposals for importance sampling [22] or sequential Monte Carlo [8, 21]; such proposals can be used in probabilistic programming environments to speed up inference [15, 16].”
- Learning Disentangled Representations with Semi-Supervised Deep Generative Models (2017, background): “This approach allows us also amortise inference [7, 23, 29, 34], simultaneously learning a network that performs approximate inference over representations at the same time we learn the unknown factors of the model itself.”
- Automatic differentiation in machine learning: a survey (2015, background): “, 2013) techniques based on deep learning (Le et al., 2017; Ritchie et al., 2016) work by training neural networks for performing approximate inference in generative models defined as probabilistic programs (Gordon et al.”
- Meta-Learning an Inference Algorithm for Probabilistic Programs (2021, background): “Amortised inference and inference compilation (Gershman & Goodman, 2014; Le et al., 2017; Paige & Wood, 2016; Stuhlmüller et al., 2013; Kingma & Welling, 2013; Mnih & Gregor, 2014; Rezende et al., 2014; Ritchie et al., 2016; Marino et al., 2018) are closely related to our approach in that they also ”
- ProBO: Versatile Bayesian Optimization Using Any Probabilistic Programming Language (2019, background): “In amortized or compiled inference methods [39, 28, 24], inf trains or calls a pretrained model that maps observations to a posterior or proposal distribution, and post samples from this.”
- Sequential Neural Likelihood: Fast Likelihood-free Inference with Autoregressive Flows (2018, methodology): “Beyond SNPE, conditional neural density estimators have been used to learn the posterior from simulations in graphical models [53, 58], and universal probabilistic programs [38].”
- Gen: a general-purpose probabilistic programming system with programmable inference (2019, methodology): “Standard Inference Library Gen’s standard inference library includes support for diverse inference algorithms, and building blocks of inference algorithms, including importance sampling [37] and Metropolis-Hastings MCMC [19] using default proposal and custom proposal distributions, maximum-a-posteri”
- MultiVerse: Causal Reasoning using Importance Sampling in Probabilistic Programming (2019, methodology): “…techniques for amortised approximate inference (Gu et al., 2015; Germain et al., 2015; Perov et al., 2015; Paige and Wood, 2016a; Perov, 2016; Le et al., 2016; Morris, 2001; Paige and Wood, 2016b; Ritchie et al., 2016; Le et al., 2017) and in particular importance sampling inference (Douglas…”
- Denotational validation of higher-order Bayesian inference (2017, background): “Most of these research e orts have focussed on developing e cient inference algorithms and implementations [Kucukelbir et al. 2015; Le et al. 2017; Tran et al. 2017; Wingate and Weber 2013].”
- Mining gold from implicit models to improve likelihood-free inference (2018, background): “Probabilistic programming systems represent another class of methods that use the simulator directly during inference [29, 30].”
- sbi: A toolkit for simulation-based inference (2020, methodology): “In cases where the simulator likelihood can be evaluated, many methods for approximate Bayesian inference exist (e.g., Metropolis, Rosenbluth, Rosen-bluth, Teller, & Teller, 1953; Baydin et al., 2019; Graham & Storkey, 2017; Le, Baydin, & Wood, 2017; Neal, 2003).”
- Meta-Amortized Variational Inference and Learning (2019, background): “Building on [28], we tackle this problem with “meta-compiled inference" and optimize:”
- Deep Probabilistic Surrogate Networks for Universal Simulator Approximation (2019, methodology): “In this paper we specifically build on the inference compilation (IC) framework of Le et al. (2017) and its PyProb (Baydin and Le, 2018) realization.”
- ProBO: a Framework for Using Probabilistic Programming in Bayesian Optimization (2019, methodology): “While not the focus of this paper, universal PPs (Le et al., 2016; Mansinghka et al., 2014; Wood et al., 2014) allow for models defined by arbitrary forward simulators, and aim to provide automatic inference for these models.”