Scalable probabilistic impact modeling
Project description
aimz: Scalable probabilistic impact modeling
Installation | Tutorial | User Guide | FAQs | Changelog
Overview
aimz is a Python library for scalable probabilistic impact modeling—estimating how interventions affect outcomes while quantifying uncertainty. It provides an intuitive interface for fitting Bayesian models, drawing posterior samples, generating large-scale posterior predictive simulations, and estimating intervention effects with minimal boilerplate.
Key capabilities
- Flexible model specification: Built on NumPyro and JAX, bring a NumPyro model as a "kernel"—aimz does not enforce a fixed architecture.
- Scalable predictive sampling: JIT-compiled, sharded sampling streams results to chunked Zarr stores, enabling large-scale posterior predictive simulations.
- Structured outputs: Predictions, samples, and effect estimates are materialized as Xarray objects backed by Zarr, integrating cleanly with the scientific Python ecosystem.
- Intervention handling: Specify interventions declaratively and estimate effects from posterior predictive distributions.
- Experiment tracking: MLflow integration for logging runs, parameters, metrics, and model artifacts with full lineage.
Installation
Install aimz using either pip or conda:
pip install -U aimz
conda install -c conda-forge aimz
For additional details, see the full installation guide.
Quick start
from aimz import ImpactModel
# Define a probabilistic model (kernel) using NumPyro primitives
def model(X, y=None):
...
# Load or prepare data
X, y = ...
# Initialize ImpactModel with SVI or MCMC inference
im = ImpactModel(
model,
rng_key=..., # e.g., jax.random.key(0)
inference=..., # e.g., SVI (or MCMC)
)
# Fit model and draw posterior samples
im.fit(X, y)
# Generate posterior predictive samples
dt = im.predict(X)
# Estimate intervention effects
dt_baseline = im.predict(X)
dt_intervention = im.predict(X, intervention={"treatment": 1.0})
effect = im.estimate_effect(dt_baseline, dt_intervention)
Contributing
See the Contributing Guide to get started.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aimz-0.10.0.tar.gz.
File metadata
- Download URL: aimz-0.10.0.tar.gz
- Upload date:
- Size: 48.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fe394052ad451653ce94d6c4626eea083051f1c1f8c73c922c4ebfd7cf3c581f
|
|
| MD5 |
94a4e76a586a6d50525135803cb1585b
|
|
| BLAKE2b-256 |
bf2ed2650a093f3208305ccd7bfb99f162882d9910963b28e7310c9f34ee6d9c
|
Provenance
The following attestation bundles were made for aimz-0.10.0.tar.gz:
Publisher:
publish.yaml on markean/aimz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
aimz-0.10.0.tar.gz -
Subject digest:
fe394052ad451653ce94d6c4626eea083051f1c1f8c73c922c4ebfd7cf3c581f - Sigstore transparency entry: 1335121463
- Sigstore integration time:
-
Permalink:
markean/aimz@27c084a08b13f88d866ff5c1b4385d2dd6967c93 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/markean
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yaml@27c084a08b13f88d866ff5c1b4385d2dd6967c93 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file aimz-0.10.0-py3-none-any.whl.
File metadata
- Download URL: aimz-0.10.0-py3-none-any.whl
- Upload date:
- Size: 52.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
979cbe20cea55861456eeb4855270201362e94c3e9abc8192423c8d8a7ddd88c
|
|
| MD5 |
e65e3a3f3b86a786d244a35f22721b8e
|
|
| BLAKE2b-256 |
3fa17a87ec79d3c33a3cd2acbdaa85dd0861284cc78409046f77834e23b008c4
|
Provenance
The following attestation bundles were made for aimz-0.10.0-py3-none-any.whl:
Publisher:
publish.yaml on markean/aimz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
aimz-0.10.0-py3-none-any.whl -
Subject digest:
979cbe20cea55861456eeb4855270201362e94c3e9abc8192423c8d8a7ddd88c - Sigstore transparency entry: 1335121578
- Sigstore integration time:
-
Permalink:
markean/aimz@27c084a08b13f88d866ff5c1b4385d2dd6967c93 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/markean
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yaml@27c084a08b13f88d866ff5c1b4385d2dd6967c93 -
Trigger Event:
workflow_dispatch
-
Statement type: