Dynamical Compuation Graphs in Universal Probabilistic Programming
- Status
- In work
- Type
- Master Thesis
- Announcement date
- 04 Oct 2018
- Student
- Philipp Gabler
- Mentors
- Research Areas
Univseral probabilistic programming languages (PPLs), such as Turing.jl, benefit from the capablilty of representing any computable probability distribution. However, posterior inference in universal programs is often challenging and time consuming.
The aim of this thesis is to develop a dynamical computation graph which is constructed during the program execution. In contrast to static graphs, dynamic graphs allow to represent the computational flow for any probabilistic program – including programs with varying number of parameters. Doing so will allow to analyze and optimize the computations, e.g. exploit conjugacy in universal PPLs, and perform efficient inference by detecting independence in model parameters as well as caching computation results.
The project will be an extension of the universal PPL Turing.jl and will be developed in Julia.