Statically bounded-memory delayed sampling for probabilistic streams - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Journal Articles Proceedings of the ACM on Programming Languages Year : 2021

Statically bounded-memory delayed sampling for probabilistic streams

Abstract

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 the 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.
Fichier principal
Vignette du fichier
oopsla21.pdf (1.71 Mo) Télécharger le fichier
Origin Files produced by the author(s)

Dates and versions

hal-03401752 , version 1 (25-10-2021)

Identifiers

Cite

Eric Atkinson, Guillaume Baudart, Louis Mandel, Charles Yuan, Michael Carbin. Statically bounded-memory delayed sampling for probabilistic streams. Proceedings of the ACM on Programming Languages, 2021, 5 (OOPSLA), pp.1-28. ⟨10.1145/3485492⟩. ⟨hal-03401752⟩
14 View
42 Download

Altmetric

Share

Gmail Mastodon Facebook X LinkedIn More