Statically Bounded-Memory Delayed Sampling for Probabilistic Streams

09/26/2021
by   Eric Atkinson, et al.
0

Probabilistic programming languages aid developers performing Bayesian inference. These languages provide programming constructs and tools for probabilistic modeling and automated inference. Prior work introduced a probabilistic programming language, ProbZelus, to extend probabilistic programming functionality to unbounded streams of data. This work demonstrated that the delayed sampling inference algorithm could be extended to work in a streaming context. ProbZelus showed that while delayed sampling could be effectively deployed on some programs, depending on the probabilistic model under consideration, delayed sampling is not guaranteed to use a bounded amount of memory over the course of the execution of the program. In this paper, we present conditions on a probabilistic program's execution under which delayed sampling will execute in bounded memory. The two conditions are dataflow properties of the core operations of delayed sampling: the m-consumed property and the unseparated paths property. A program executes in bounded memory under delayed sampling if, and only if, it satisfies the m-consumed and unseparated paths properties. We propose a static analysis that abstracts over these properties to soundly ensure that any program that passes the analysis satisfies these properties, and thus executes in bounded memory under delayed sampling.

READ FULL TEXT
research
08/20/2019

Reactive Probabilistic Programming

Synchronous reactive languages were introduced for designing and impleme...
research
07/14/2023

Verifying Performance Properties of Probabilistic Inference

In this extended abstract, we discuss the opportunity to formally verify...
research
04/14/2022

Program Analysis of Probabilistic Programs

Probabilistic programming is a growing area that strives to make statist...
research
09/27/2018

An Introduction to Probabilistic Programming

This document is designed to be a first-year graduate-level introduction...
research
12/15/2015

Linear Models of Computation and Program Learning

We consider two classes of computations which admit taking linear combin...
research
01/05/2021

Control-Data Separation and Logical Condition Propagation for Efficient Inference on Probabilistic Programs

We introduce a novel sampling algorithm for Bayesian inference on impera...
research
07/24/2023

Template-Based Static Posterior Inference for Bayesian Probabilistic Programming

In Bayesian probabilistic programming, a central problem is to estimate ...

Please sign up or login with your details

Forgot password? Click here to reset