SaaSHub helps you find the best software and product alternatives Learn more →
Top 12 Python probabilistic-programming Projects
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
numpyro
Probabilistic programming with NumPy powered by JAX for autograd and JIT compilation to GPU/TPU/CPU.
-
orbit
A Python package for Bayesian forecasting with object-oriented design and probabilistic models under the hood. (by uber)
-
uncertainty-baselines
High-quality implementations of standard and SOTA methods on a variety of tasks.
-
Bayeslite
BayesDB on SQLite. A Bayesian database table for querying the probable implications of data as easily as SQL databases query the data itself.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
problog
ProbLog is a Probabilistic Logic Programming Language for logic programs with probabilities.
Mostly I use pytorch for statistical modeling https://pyro.ai . Under the hood that package uses a lot of Monte Carlo integration and variational methods (i.e. integration by optimization). It does support neural nets, but probably >80% of pyro users stick to simpler hierarchical Bayesian models.
What are the other four frameworks?
> For one, who wants to do stuff in tensorflow anymore let alone tensorflow-probability.
AutoBNN is a JAX library and has nothing to do technically with TF Probability. It was developed by the TF Probability team.
> DL community prefers pytorch and stats community prefers Stan.
It looks like the JAX ecosystem for stats is growing: NumPyro is based on JAX, PyMC has a JAX backend, https://github.com/blackjax-devs/blackjax has effective samplers, there is https://github.com/jax-ml/bayeux, and now AutoBNN.
> This one seems theoretically more interesting than some others but practically less useful.
Are there other factors why you think AutoBNN is not practically useful, apart from being based on the wrong foundation (which was a mistaken belief of yours)?
Plug for the Funsor library, written by Eli Bingham and me for use in the Pyro and NumPyro probabilistic programming languages. We tried to take the "functions are tensors" perspective and make a numpy-like library for functions, aimed mostly at the log-density functions of probability distributions.
Paper: "Functional Tensors for Probabilistic Programming" (2019) https://arxiv.org/abs/1910.10775
Code: https://github.com/pyro-ppl/funsor
Python probabilistic-programming related posts
- Pyro: The Universal, Probablistic Programming Language
- Pyro: Deep universal probabilistic programming with Python and PyTorch
- Computational Bayesian Inference Techniques
- [P] torchegranate: a PyTorch rewrite of the pomegranate library for probabilistic modeling
- Ranking YC W22 Companies with a Neural Net
- What is Probabilistic Programming?
-
A note from our sponsor - SaaSHub
www.saashub.com | 25 Apr 2024
Index
What are some of the best open-source probabilistic-programming projects in Python? This list will help you:
Project | Stars | |
---|---|---|
1 | pyro | 8,356 |
2 | PyMC | 8,155 |
3 | numpyro | 2,039 |
4 | orbit | 1,799 |
5 | uncertainty-baselines | 1,362 |
6 | Bayeslite | 914 |
7 | blackjax | 721 |
8 | lightwood | 420 |
9 | problog | 296 |
10 | funsor | 230 |
11 | Gumbi | 48 |
12 | tablespoon | 39 |
Sponsored