Skip to main content

Bayesian Inference with JAX

Project description

Bayinx: Bayesian Inference with JAX

Bayinx is an embedded probabilistic programming language in Python, powered by JAX. It is heavily inspired by and aims to have feature parity with Stan, but extends the types of objects you can work with and focuses on normalizing flows variational inference for sampling.

Installation

Bayinx requires Python 3.12+, JAX, and a few extra libraries in the JAX ecosystem. The easiest way to get started is by installing from PyPi using your favourite python package manager. For example with uv:

# Ensure you are in your project environment
uv add bayinx

This installs the bare-bones version of Bayinx, however if you need additional functionality like GPU support, there are a couple of dependency groups:

# Ensure you are in your project environment
uv add 'bayinx[cuda]' # Installs Bayinx with CUDA support

Documentation

Documentation is available at: https://toddpocuca.github.io/bayinx.

Roadmap

  • Allow shape definitions to include expressions (e.g., shape = 'n_obs + 1' will evaluate to the correct specification).
  • Implement SALSA https://arxiv.org/abs/2002.10597.
  • Nodes carry bounds for their support (i.e., node.obj ∈ [node._lb, node._ub]) which are used to check if inputs to distributions are valid (e.g., a node inputted as the scale of a normal dist must have node._lb >= 0).

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

bayinx-0.8.0.tar.gz (701.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bayinx-0.8.0-py3-none-any.whl (78.7 kB view details)

Uploaded Python 3

File details

Details for the file bayinx-0.8.0.tar.gz.

File metadata

  • Download URL: bayinx-0.8.0.tar.gz
  • Upload date:
  • Size: 701.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bayinx-0.8.0.tar.gz
Algorithm Hash digest
SHA256 57f774bc293d308b03fe77bd018fb5ecefa33a8d06807a32fc2c164f598aff8e
MD5 8d13de0cc8f8771a30c43084eb04fbd4
BLAKE2b-256 30cfff65b1fbecb5cacc4a80fa692e9c5344055d2738d7def5be6b6f50fd12da

See more details on using hashes here.

File details

Details for the file bayinx-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: bayinx-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 78.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bayinx-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b40a1b3bb20a16f7d855456e89982cf5110ddde9ae0041f59fcf2f138a7d0952
MD5 80f4d6de5815f8ee1539ec1b46b299bd
BLAKE2b-256 2d619275d8e9e996d937a97d939bb66a760311d8845d96d2059e9b48dd748a49

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page