Skip to main content

Laplace approximations in JAX.

Project description

Laplax Logo


Python 3.11+ Test Coverage Status

What is laplax?

The laplax package aims to provide a performant, minimal, and practical implementation of Laplace approximation techniques in jax. This package is designed to support a wide range of scientific libraries, initially focusing on compatibility with popular neural network libraries such as equinox, flax.linen, and flax.nnx. Our goal is to create a flexible tool for both practical applications and research, enabling rapid iteration and comparison of new approaches.

Design Philosophy

The development of laplax is guided by the following principles:

  • Minimal Dependencies: The package only depends on jax, ensuring compatibility and ease of integration.

  • Matrix-Vector Product Focus: The core of our implementation revolves around efficient matrix-vector products. By passing around callables, we maintain a loose coupling between components, allowing for easy interaction with various other packages, including linear operator libraries in jax.

  • Performance and Practicality: We prioritize a performant and minimal implementation that serves practical needs. The package offers a simple API for basic use cases while primarily serving as a reference implementation for researchers to compare new methods or iterate quickly over experiments.

  • PyTree-Centric Structure: Internally, the package is structured around PyTrees. This design choice allows us to defer materialization until necessary, optimizing performance and memory usage.

Roadmap and Contributions

We're developing this package in public, and discussions about the roadmap and feature priorities are structured in the Issues section. If you're interested in contributing or want to see what's planned for the future, please check them out.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

laplax-0.0.1.tar.gz (58.3 kB view details)

Uploaded Source

Built Distribution

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

laplax-0.0.1-py3-none-any.whl (70.3 kB view details)

Uploaded Python 3

File details

Details for the file laplax-0.0.1.tar.gz.

File metadata

  • Download URL: laplax-0.0.1.tar.gz
  • Upload date:
  • Size: 58.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.11

File hashes

Hashes for laplax-0.0.1.tar.gz
Algorithm Hash digest
SHA256 1bfb1c21b2321a23a2c3c5c5b87218585c5f4a42ab609197329895346e43c795
MD5 518ff4545953da72b1105b93fdff757a
BLAKE2b-256 b0f70f41df33933301316ed6698ba191f95d9adccf7b63ecb94f33b8e021af3b

See more details on using hashes here.

File details

Details for the file laplax-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: laplax-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 70.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.11

File hashes

Hashes for laplax-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3086e3b71aaf90568a6175b1d0d1ac407dbc323fc6f663e98a2087e17b6eefef
MD5 73bfefc3a812f231c46e5eac8a9432d1
BLAKE2b-256 399046293eaa1b7fb48b1b8494e47b8784dae10d6d2f43db3e458e77a43a52df

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