SPPL: Probabilistic Programming with Fast Exact Symbolic Inference

10/07/2020
by   Feras A. Saad, et al.
0

We present the Sum-Product Probabilistic Language (SPPL), a new probabilistic programming language that automatically delivers exact solutions to a broad range of probabilistic inference queries. SPPL translates probabilistic programs into sum-product expressions, a new symbolic representation and associated semantic domain that extends standard sum-product networks to support mixed-type distributions, numeric transformations, logical formulas, and pointwise and set-valued constraints. We formalize SPPL via a novel translation strategy from probabilistic programs to sum-product expressions and give sound exact algorithms for conditioning on and computing probabilities of events. SPPL imposes a collection of restrictions on probabilistic programs to ensure they can be translated into sum-product expressions, which allow the system to leverage new techniques for improving the scalability of translation and inference by automatically exploiting probabilistic structure. We implement a prototype of SPPL with a modular architecture and evaluate it on benchmarks the system targets, showing that it obtains up to 3500x speedups over state-of-the-art symbolic systems on tasks such as verifying the fairness of decision tree classifiers, smoothing hidden Markov models, conditioning transformed random variables, and computing rare event probabilities.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
04/03/2019

Symbolic Exact Inference for Discrete Probabilistic Programs

The computational burden of probabilistic inference remains a hurdle for...
research
09/15/2022

Semi-Symbolic Inference for Efficient Streaming Probabilistic Programming

Efficient inference is often possible in a streaming context using Rao-B...
research
01/27/2021

Compositional Semantics for Probabilistic Programs with Exact Conditioning

We define a probabilistic programming language for Gaussian random varia...
research
09/16/2022

Symbolic Execution for Randomized Programs

We propose a symbolic execution method for programs that can draw random...
research
07/14/2023

Exact Bayesian Inference for Loopy Probabilistic Programs

We present an exact Bayesian inference method for inferring posterior di...
research
10/09/2017

Sum-Product Networks for Hybrid Domains

While all kinds of mixed data -from personal data, over panel and scient...
research
07/14/2023

Verifying Performance Properties of Probabilistic Inference

In this extended abstract, we discuss the opportunity to formally verify...

Please sign up or login with your details

Forgot password? Click here to reset