Program Analysis of Probabilistic Programs

04/14/2022
by   Maria I. Gorinova, et al.
0

Probabilistic programming is a growing area that strives to make statistical analysis more accessible, by separating probabilistic modelling from probabilistic inference. In practice this decoupling is difficult. No single inference algorithm can be used as a probabilistic programming back-end that is simultaneously reliable, efficient, black-box, and general. Probabilistic programming languages often choose a single algorithm to apply to a given problem, thus inheriting its limitations. While substantial work has been done both to formalise probabilistic programming and to improve efficiency of inference, there has been little work that makes use of the available program structure, by formally analysing it, to better utilise the underlying inference algorithm. This dissertation presents three novel techniques (both static and dynamic), which aim to improve probabilistic programming using program analysis. The techniques analyse a probabilistic program and adapt it to make inference more efficient, sometimes in a way that would have been tedious or impossible to do by hand.

READ FULL TEXT
research
09/10/2019

Static Analysis for Probabilistic Programs

Probabilistic programming is a powerful abstraction for statistical mach...
research
10/22/2020

Conditional independence by typing

A central goal of probabilistic programming languages (PPLs) is to separ...
research
09/14/2021

Searching for More Efficient Dynamic Programs

Computational models of human language often involve combinatorial probl...
research
10/02/2018

Inference Over Programs That Make Predictions

This abstract extends on the previous work (arXiv:1407.2646, arXiv:1606....
research
06/15/2012

A Dynamic Programming Algorithm for Inference in Recursive Probabilistic Programs

We describe a dynamic programming algorithm for computing the marginal d...
research
05/29/2019

Hijacking Malaria Simulators with Probabilistic Programming

Epidemiology simulations have become a fundamental tool in the fight aga...
research
09/26/2021

Statically Bounded-Memory Delayed Sampling for Probabilistic Streams

Probabilistic programming languages aid developers performing Bayesian i...

Please sign up or login with your details

Forgot password? Click here to reset