×

zbMATH — the first resource for mathematics

Probabilistic inference by program transformation in Hakaru (system description). (English) Zbl 06562504
Kiselyov, Oleg (ed.) et al., Functional and logic programming. 13th international symposium, FLOPS 2016, Kochi, Japan, March 4–6, 2016. Proceedings. Cham: Springer. Lect. Notes Comput. Sci. 9613, 62-79 (2016).
Summary: We present Hakaru, a new probabilistic programming system that allows composable reuse of distributions, queries, and inference algorithms, all expressed in a single language of measures. The system implements two automatic and semantics-preserving program transformations – disintegration, which calculates conditional distributions, and simplification, which subsumes exact inference by computer algebra. We show how these features work together by describing the ideal workflow of a Hakaru user on two small problems. We highlight our composition of transformations and types in design and implementation.
For the entire collection see [Zbl 1331.68016].

MSC:
68N17 Logic programming
68N18 Functional programming and lambda calculus
Software:
Venture; Church; Hakaru
PDF BibTeX XML Cite
Full Text: DOI
References:
[1] Carette, J., Kiselyov, O., Shan, C.-c.: Finally tagless, partially evaluated: Tagless staged interpreters for simpler typed languages. J. Funct. Program. 19(5), 509–543 (2009) · Zbl 1191.68158
[2] Carette, J., Shan, C.-c.: Simplifying probabilistic programs using computer algebra (2015). http://www.cs.indiana.edu/ftp/techreports/TR719.pdf
[3] Giry, M.: A categorical approach to probability theory. In: Banaschewski, B. (ed.) Categorical Aspects of Topology and Analysis. Lecture Notes in Mathematics, vol. 915, pp. 68–85. Springer, Heidelberg (1982) · Zbl 0486.60034
[4] Goodman, N.D., Mansinghka, V.K., Roy, D., Bonawitz, K., Tenenbaum, J.B.: Church: A language for generative models. In: Proceedings of the 24th Conference on Uncertainty in Artificial Intelligence, pp. 220–229. AUAI Press (2008)
[5] Goodman, N.D., Stuhlmüller, A.: The design and implementation of probabilistic programming languages. http://dippl.org (2014). Accessed 20 November 2015
[6] Kiselyov, O., Shan, C.-c.: Embedded probabilistic programming. In: Taha, W.M. (ed.) DSL 2009. LNCS, vol. 5658, pp. 360–384. Springer, Heidelberg (2009) · Zbl 05574270
[7] MacKay, D.J.C.: Introduction to Monte Carlo methods. In: Jordan, M.I. (ed.): Learning and Inference in Graphical Models. Kluwer (1998)
[8] Mansinghka, V.K., Selsam, D., Perov, Y.N.: Venture: a higher-order probabilistic programming platform with programmable inference. CoRR abs/1404.0099 (2014). http://arxiv.org/abs/org/abs/1404.0099
[9] Pearl, J.: Probabilistic Reasoning in Intelligent Systems: Networks of Plausible Inference. Morgan Kaufmann, San Francisco (1988). revised 2nd printing (1998) · Zbl 0746.68089
[10] Ramsey, N., Pfeffer, A.: Stochastic lambda calculus and monads of probability distributions. In: Conference Record of the Annual ACM Symposium on Principles of Programming Languages POPL 2002, pp. 154–165. ACM Press (2002) · Zbl 1323.68150
[11] Ścibior, A., Ghahramani, Z., Gordon, A.D.: Practical probabilistic programming with monads. In: Proceedings of the 8th ACM SIGPLAN Symposium on Haskell, pp. 165–176. ACM (2015)
[12] Shan, C.-c., Ramsey, N.: Symbolic Bayesian inference by lazy partial evaluation (2015). http://www.cs.tufts.edu/ nr/pubs/disintegrator-abstract.html
[13] Wood, F., van de Meent, J.W., Mansinghka, V.: A new approach to probabilistic programming inference. In: Proceedings of the 17th International conference on Artificial Intelligence and Statistics, pp. 1024–1032 (2014)
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. It attempts to reflect the references listed in the original paper as accurately as possible without claiming the completeness or perfect precision of the matching.