For what I’ve read about them, they are very similar. Both model probabilistic models in which the nodes are random variables and the edges are dependencies among them.

However, the literature I’ve read makes no explicit connection among these two fields.

Is probabilistic programming just a technique for modeling and doing inference on Bayesian Networks? Is it because probabilistic programming languages have enabled the specification of very complex Bayesian Networks that their literature seems so different?


1 Answer 1


I think the problem here is that different people mean different things when they talk about probabilistic programming. However, it seems to me that there are basically two different views.

On the one hand, the term is used for modelling and inference with bayesian networks. And I have the feeling, that this is a view adopted by many data scientists. This could be called probabilisitic programming in a narrow sense, since it's focused more or less on a specific class of models.

On the other hand there is a community that is actively involved in the development of probabilistic programming languages, or better, probabilistic programming systems. Their goal is to develop formal languages to describe models in probabilistic terms, and these models no longer have to be bayesian networks or conform to other statistical models. Instead, they are totally general, so everything that you can write down in a "normal" programming language would also work in one of those languages. The probabilistic programming system also has an inference engine, that is capable of doing inference on such models. This could be called probabilistic programming in a wide sense.

A recent publication that gives a thorough introduction and also makes the distinction between graphical models and general probabilistic programming is this:

Meent, Jan-Willem van de, Brooks Paige, Hongseok Yang, and Frank Wood. An Introduction to Probabilistic Programming. ArXiv:1809.10756 [Cs, Stat], September 27, 2018. http://arxiv.org/abs/1809.10756.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.