Simula@BI: Probabilistic programming (and what it means for you)
Speaker: Jan Kudlicka
In this seminar we introduce probabilistic programs as simple and yet very expressive representations of probabilistic models. Probabilistic programming languages (PPLs) extend universal deterministic languages to support random variables, probability distributions and conditioning on the observed data. Random variables in a probabilistic program can be used as any other (deterministic) variables, including to control the flow of its execution.
Stochastic branching and unbounded recursion make probabilistic programs more expressive than probabilistic graphical models (Bayesian networks, Markov random fields and factor graphs). Automatic inference, an integral part of PPLs, makes them an exciting tool for researchers within a wide range of fields: probabilistic models can usually be implemented with just a basic knowledge of programming while the automatic inference eliminates the need for external experts to find and implement bespoke inference algorithms.
We will look closer at sequential Monte Carlo (or particle filters) based inference, and demonstrate its feasibility for problems in statistical phylogenetics (esp. parameter inference in birth-death models of evolution).