Skip to yearly menu bar Skip to main content


Demonstration

Monte: An Interactive Ssytem for Massively Parallel Probabilistic Programming

Vikash Mansinghka


Abstract:

We demonstrate Monte, a massively parallel implementation of the probabilistic programming language Church. Using Monte, a probabilistic modeler or machine learning researcher can specify state-of-the-art nonparametric Bayesian models in just 10-20 lines of code, and automatically perform inference on them in the presence of arbitrary datasets. Monte also allows a probabilistic modeler to exploit Amazon's Elastic Compute Cloud (EC2) to perform massively parallel inference, significantly increasing the model complexity and dataset scale that Monte can handle over serial implementations of probabilistic programming languages. Church is a probabilistic programming language, based on Lisp, that enables compact specification of all computable probabilistic models and supports universal Bayesian inference via Markov chain Monte Carlo. Probabilistic programming languages have gained substantial attention in the NIPS community, serving as a representation language for probabilistic machine learning and the basis of a widely attended NIPS 2008 Workshop. However, very few implementations of probabilistic programming languages have been mature enough to support reliable interactive use. The Monte implementation of Church, developed at Navia Systems, Inc., is one of the first such systems. The best evidence of its robustness and interactivity lies in the compactness of Monte representations of state-of-the-art probabilistic models (see Figure 1) and in the simplicity of its use on a single processor workstation (see Figure 2). Users of our demonstration system will be able to implement state-of-the-art probabilistic models from the current NIPS conference and immediately perform inference on them in real time using Monte's engine, collecting and analyzing posterior samples of interest. Figure 2 shows one example of this use pattern in the context of a Dirichlet process Mixture Model with binary data.

Live content is unavailable. Log in and register to view live content