Autoconj: Recognizing and Exploiting Conjugacy Without a Domain-Specific Language
Matthew D. Hoffman, Matthew J. Johnson, Dustin Tran

TL;DR
Autoconj automates the derivation of conjugate distributions directly from Python functions, simplifying and accelerating the development of probabilistic inference algorithms without relying on domain-specific languages.
Contribution
It introduces a system that recognizes and exploits conjugacy relationships directly from log-joint functions in Python, unlike prior systems limited to variable pairs.
Findings
Automates conjugacy derivations from Python functions
Supports any Python embedded probabilistic programming language
Enables faster development of inference algorithms
Abstract
Deriving conditional and marginal distributions using conjugacy relationships can be time consuming and error prone. In this paper, we propose a strategy for automating such derivations. Unlike previous systems which focus on relationships between pairs of random variables, our system (which we call Autoconj) operates directly on Python functions that compute log-joint distribution functions. Autoconj provides support for conjugacy-exploiting algorithms in any Python embedded PPL. This paves the way for accelerating development of novel inference algorithms and structure-exploiting modeling strategies.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsMachine Learning and Algorithms · Machine Learning and Data Classification · Time Series Analysis and Forecasting
