Reversible Jump Probabilistic Programming

David A. Roberts, Marcus Gallagher, Thomas Taimre
Proceedings of the Twenty-Second International Conference on Artificial Intelligence and Statistics, PMLR 89:634-643, 2019.

Abstract

In this paper we present a method for automatically deriving a Reversible Jump Markov chain Monte Carlo sampler from probabilistic programs that specify the target and proposal distributions. The main challenge in automatically deriving such an inference procedure, in comparison to deriving a generic Metropolis-Hastings sampler, is in calculating the Jacobian adjustment to the proposal acceptance ratio. To achieve this, our approach relies on the interaction of several different components, including automatic differentiation, transformation inversion, and optimised code generation. We also present Stochaskell, a new probabilistic programming language embedded in Haskell, which provides an implementation of our method.

Cite this Paper


BibTeX
@InProceedings{pmlr-v89-roberts19a, title = {Reversible Jump Probabilistic Programming}, author = {Roberts, David A. and Gallagher, Marcus and Taimre, Thomas}, booktitle = {Proceedings of the Twenty-Second International Conference on Artificial Intelligence and Statistics}, pages = {634--643}, year = {2019}, editor = {Chaudhuri, Kamalika and Sugiyama, Masashi}, volume = {89}, series = {Proceedings of Machine Learning Research}, month = {16--18 Apr}, publisher = {PMLR}, pdf = {http://proceedings.mlr.press/v89/roberts19a/roberts19a.pdf}, url = {https://proceedings.mlr.press/v89/roberts19a.html}, abstract = {In this paper we present a method for automatically deriving a Reversible Jump Markov chain Monte Carlo sampler from probabilistic programs that specify the target and proposal distributions. The main challenge in automatically deriving such an inference procedure, in comparison to deriving a generic Metropolis-Hastings sampler, is in calculating the Jacobian adjustment to the proposal acceptance ratio. To achieve this, our approach relies on the interaction of several different components, including automatic differentiation, transformation inversion, and optimised code generation. We also present Stochaskell, a new probabilistic programming language embedded in Haskell, which provides an implementation of our method.} }
Endnote
%0 Conference Paper %T Reversible Jump Probabilistic Programming %A David A. Roberts %A Marcus Gallagher %A Thomas Taimre %B Proceedings of the Twenty-Second International Conference on Artificial Intelligence and Statistics %C Proceedings of Machine Learning Research %D 2019 %E Kamalika Chaudhuri %E Masashi Sugiyama %F pmlr-v89-roberts19a %I PMLR %P 634--643 %U https://proceedings.mlr.press/v89/roberts19a.html %V 89 %X In this paper we present a method for automatically deriving a Reversible Jump Markov chain Monte Carlo sampler from probabilistic programs that specify the target and proposal distributions. The main challenge in automatically deriving such an inference procedure, in comparison to deriving a generic Metropolis-Hastings sampler, is in calculating the Jacobian adjustment to the proposal acceptance ratio. To achieve this, our approach relies on the interaction of several different components, including automatic differentiation, transformation inversion, and optimised code generation. We also present Stochaskell, a new probabilistic programming language embedded in Haskell, which provides an implementation of our method.
APA
Roberts, D.A., Gallagher, M. & Taimre, T.. (2019). Reversible Jump Probabilistic Programming. Proceedings of the Twenty-Second International Conference on Artificial Intelligence and Statistics, in Proceedings of Machine Learning Research 89:634-643 Available from https://proceedings.mlr.press/v89/roberts19a.html.

Related Material