probml/dynamax
A Python package for probabilistic state space modeling with JAX
What it solves
Dynamax provides a high-performance library for working with probabilistic state space models (SSMs). It simplifies the process of performing state estimation (inference) and parameter estimation (learning) for systems where a hidden state evolves over time and generates observed data.
How it works
Built on JAX, the library implements a variety of SSMs, including Hidden Markov Models (HMMs), Linear Gaussian SSMs, and Nonlinear/Generalized Gaussian SSMs. It offers two layers of API: a set of functionally pure, low-level inference algorithms and a user-friendly, object-oriented interface for model classes. It integrates with the JAX ecosystem, using Optax for stochastic gradient descent and Blackjax for Hamiltonian or sequential Monte Carlo methods.
Who it’s for
It is designed for researchers and developers working with time-series data and probabilistic modeling who need efficient, vectorized operations for state and parameter estimation.
Highlights
- JAX-powered: Leverages JAX for high-performance computing and the ability to vectorize operations via
vmap. - Diverse Model Support: Includes HMMs, Linear Gaussian, Nonlinear Gaussian, and Generalized Gaussian state space models.
- Comprehensive Tooling: Supports online filtering, offline smoothing, and prediction of future states and observations.
- Ecosystem Integration: Compatible with Optax and Blackjax for advanced parameter estimation and Bayesian inference.
Related
- Project
- Project
- Project
- Project
- Project