A Hitchhiker's Guide to designing a Bayesian library in Python
summary
Details on building a Bayesian library with PyMC3 and the PyMC4 redesign, comparing backends like TensorFlow Jax autograd PyTorch Theano, and why choosing a computational backend forces concrete tradeoffs: TF1 to TF2 transition and painful graph modification, fragile GPU/eager interaction, and symbolic sampling. Describes the practical burdens—three types of shape issues and ten alternative ways to rewriting control flows—plus how compilation, tracing, and random‑variable interception actually get implemented and where the surprises hide.
AI-written summary · about
chapters (12)
- 0:00Introduction
- 2:19Purpose and scope
- 3:02Bayesian modeling basics
- 10:54Challenges in models
- 18:23Random variable representation
- 26:36PyMC3 implementation limits
- 33:29Forward generation issues
- 37:07Transition to TensorFlow Probability
- 41:06Modern effect handling
- 47:51Framework flexibility
- 51:08Building a full library
- 53:36Summary
related talks
01h 31mProbabilistic Programming and Bayesian Inference in Python
44mAn introduction to PyMC3
01h 27mProbabilistic Python: An Introduction to Bayesian Modeling with PyMC
39mProbablistic Programming Data Science with PyMC3
57mA Quickstart Guide to PyMC3
42mSolving Real-World Business Problems with Bayesian Modeling
42mBayesian Non-parametric Models for Data Science using PyMC3
47mThe State of the Art for Probabilistic Programming
