Probabilistic programming systems make machine learning methods modular by automating \emph{inference}. Recent work by Shan and Ramsey (2017) makes inference itself modular by automating the common component of \emph{conditioning}. Their work introduces a symbolic program transformation that treats conditioning generally via the measure-theoretic notion of \emph{disintegration}. This technique, however, is limited to conditioning a single scalar variable. As a step towards tackling realistic machine learning applications, we have extended the disintegration algorithm to symbolically condition arrays in probabilistic programs. The extended algorithm implements \emph{lifted disintegration}, where repetition is treated symbolically and without unrolling loops. The technique uses a language of \emph{index variables} for tracking expressions at various array levels. We find that the method works well for arbitrarily-sized arrays of independent random choices, with the conditioning step taking time linear in the number of indices needed to select an element.
Mon 4 SepDisplayed time zone: Belfast change
15:00 - 16:10 | |||
15:00 23mTalk | Prototyping a Query Compiler using Coq (Experience Report) Research Papers Joshua Auerbach IBM Research, Martin Hirzel IBM Research, Louis Mandel IBM Research, Avraham Shinnar IBM Research, Jerome Simeon IBM Research DOI | ||
15:23 23mTalk | A Framework for Adaptive Differential Privacy Research Papers Daniel Winograd-Cort University of Pennsylvania, USA, Andreas Haeberlen University of Pennsylvania, USA, Aaron Roth University of Pennsylvania, USA, Benjamin C. Pierce University of Pennsylvania DOI | ||
15:46 23mTalk | Symbolic Conditioning of Arrays in Probabilistic Programs Research Papers DOI |