Hi everyone,
I wanted to share that the ONNX Probabilistic Programming Working Group has recently been formed and invite participation from the TensorFlow Probability (TFP) community.
The goal of this working group is to bring probabilistic modeling and Bayesian inference into the ONNX ecosystem as first-class capabilities, similar to how ONNX currently supports portable neural network models.
We are working toward defining a standardized operator domain and runtime semantics that allow probabilistic models to be exported, executed, and optimized across frameworks and hardware backends.
Areas we are exploring
Some of the key areas the working group is focusing on include:
-
Probability distribution operators and log-probability evaluation
-
Bijectors and constrained parameter transformations
-
Reproducible stateless RNG semantics for parallel and distributed execution
-
Special mathematical functions used in probabilistic computation
-
Inference algorithms such as Laplace, Pathfinder, INLA, HMC, NUTS, and SMC
-
Export pathways for probabilistic programming frameworks
Frameworks we are looking to support
We are aiming to support a range of probabilistic programming frameworks, including:
-
TensorFlow Probability
-
PyMC
-
Stan
-
Pyro
-
NumPyro
-
JAX-based probabilistic systems
-
BayesFlow
-
Julia probabilistic programming frameworks (Turing.jl, RxInfer.jl)
The goal is to enable probabilistic models to be portable across frameworks and hardware backends using ONNX as an intermediate representation, while preserving the semantics required for probabilistic inference.
Why input from the TFP community matters
TensorFlow Probability has pioneered many of the abstractions that make modern probabilistic programming practical, including:
-
A rich distribution library
-
A powerful bijector framework
-
Integration with TensorFlow and JAX substrates
-
Scalable inference algorithms
As we design probabilistic operator domains for ONNX, input from the TFP community will be extremely valuable—especially around distribution semantics, bijector composition, and inference APIs.
Getting involved
If you’re interested in participating, contributing ideas, or providing feedback, feel free to reach out to:
-
Andreas Fehlner
-
Adam Pocock
-
Brian Parbhu
via linkedin
You are also welcome to attend the working group meetings:
Fridays @ 12 PM EST, every two weeks
Working group repository:
https://github.com/onnx/working-groups/tree/main/probabilistic-programming