bayesflow-org/bayesflow
A Python library for efficient Bayesian modeling with deep learning
What it solves
BayesFlow provides a framework for efficient Bayesian inference using deep learning. It specifically addresses the challenge of performing inference for complex simulators that cannot be expressed as simple parametric models (simulation-based inference), as well as traditional statistical models, allowing users to train neural networks for parameter estimation, model comparison, and validation.
How it works
The library implements amortized Bayesian workflows. It uses neural networks (neural estimators) as the core mechanism to approximate the posterior distribution. It supports a wide range of generative models, including diffusion and consistency models, to perform these tasks. To maintain flexibility, it is built on Keras 3, enabling multi-backend support for PyTorch, TensorFlow, and JAX.
Who it’s for
Researchers and data scientists working with simulation-based inference, Bayesian statistics, and generative AI for parameter estimation and model validation.
Highlights
- Multi-backend support: Works with JAX, PyTorch, or TensorFlow via Keras 3.
- Amortized workflows: Provides a user-friendly API for neural Bayesian inference.
- Generative AI integration: Includes a collection of generative models like diffusion and consistency models.
- Crossover capability: Handles both complex simulators and traditional parametric statistical models.