sbi-dev/sbi
sbi is a Python package for simulation-based inference, designed to meet the needs of both researchers and practitioners. Whether you need fine-grained control or an easy-to-use interface, sbi has you covered.
What it solves
sbi is a Python package designed for simulation-based inference (SBI). It allows users to estimate the full posterior distribution of a simulator's parameters based on observed real-world data, which is essential when the likelihood function is intractable (likelihood-free inference).
How it works
The library provides a suite of state-of-the-art Bayesian inference algorithms that use a simulator as the ground truth to learn the relationship between parameters and observations. It supports two main categories of methods:
- Amortized Methods: These create posterior estimators that can be reused across multiple observations without retraining.
- Sequential Methods: These optimize the number of simulations required by focusing on individual observations.
It implements a wide range of techniques, including Neural Posterior Estimation (NPE), Neural Likelihood Estimation (NLE), Neural Ratio Estimation (NRE), Neural Variational Inference (NVI), and Mixed Neural Likelihood Estimation (MNLE).
Who it’s for
Researchers and practitioners who have a simulator of a real-world process and need to perform parameter inference while quantifying uncertainty and identifying parameter interactions.
Highlights
- Flexible Interfaces: Offers both high-level interfaces for quick implementation and low-level interfaces for fine-grained control.
- Cros-Algorithm Support: Implements a diverse array of state-of-the-art algorithms (NPE, NLE, NRE, NVI, MNLE).
- Validation Tools: Includes built-in methods to verify the accuracy of inferred posteriors.
- Analysis Tools: Comprehensive plotting and visualization functions for interpreting results.
Related
- Project
- Project
- Project
- Project
- Project