Skip to main content

The laplace package facilitates the application of Laplace approximations for entire neural networks, subnetworks of neural networks, or just their last layer. The package enables posterior approximations, marginal-likelihood estimation, and various posterior predictive computations.

There is also a corresponding paper, Laplace Redux — Effortless Bayesian Deep Learning, which introduces the library, provides an introduction to the Laplace approximation, reviews its use in deep learning, and empirically demonstrates its versatility and competitiveness. Please consider referring to the paper when using our library:

@inproceedings{laplace2021,
  title={Laplace Redux--Effortless {B}ayesian Deep Learning},
  author={Erik Daxberger and Agustinus Kristiadi and Alexander Immer
          and Runa Eschenhagen and Matthias Bauer and Philipp Hennig},
  booktitle={{N}eur{IPS}},
  year={2021}
}

The code to reproduce the experiments in the paper is also publicly available; it provides examples of how to use our library for predictive uncertainty quantification, model selection, and continual learning.

Installation

To install laplace with pip, run the following:

pip install laplace-torch

Additionally, if you want to use the asdfghjkl backend, please install it via:

pip install git+https://git@github.com/wiseodd/asdl@asdfghjkl

Simple usage

In the following example, a pre-trained model is loaded, then the Laplace approximation is fit to the training data (using a diagonal Hessian approximation over all parameters), and the prior precision is optimized with cross-validation "gridsearch". After that, the resulting LA is used for prediction with the "probit" predictive for classification.

from laplace import Laplace

# Pre-trained model
model = load_map_model()

# User-specified LA flavor
la = Laplace(model, "classification",
             subset_of_weights="all",
             hessian_structure="diag")
la.fit(train_loader)
la.optimize_prior_precision(
    method="gridsearch",
    pred_type="glm",
    link_approx="probit",
    val_loader=val_loader
)

# User-specified predictive approx.
pred = la(x, pred_type="glm", link_approx="probit")

Contributing

Pull requests are very welcome. Please follow the guidelines in https://aleximmer.github.io/Laplace/devs_guide

Metadata

Release files for laplace-torch 0.2.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for laplace-torch 0.2.2.1
File Size Uploaded Provenance Actions
laplace_torch-0.2.2.1.tar.gz 127.1 kB Without provenance Details for laplace_torch-0.2.2.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for laplace-torch 0.2.2.1
File Interpreter ABI Platform Actions
laplace_torch-0.2.2.1-py3-none-any.whl Python 3 none any Details for laplace_torch-0.2.2.1-py3-none-any.whl

Total release size: 131.0 kB

Release files / laplace_torch-0.2.2.1.tar.gz

Download URL laplace_torch-0.2.2.1.tar.gz
Size 127.1 kB
Tags Source
SHA-256 checksum
How to use checksums
90b9725ac032b23a7d2e1a15698f86b1a8eff9b1714dc9f4e59d73e096ebd1a2
BLAKE2b-256 checksum
How to use checksums
b2545108070b39f3f643c732cbf76eb00bca6f681b11e3b15adc0e5171e1e056
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via pdm/2.20.0.post1 CPython/3.9.19 Darwin/24.1.0

Release files / laplace_torch-0.2.2.1-py3-none-any.whl

Download URL laplace_torch-0.2.2.1-py3-none-any.whl
Size 4.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b285fb0036ff7c788564a8a0dd3ad6bb5508ab9847f4ea998355c615d52d81a5
BLAKE2b-256 checksum
How to use checksums
048da9d18ac8465d1542161defe8c2efd7e3c354329dde0ee10e0dcc4b14017a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via pdm/2.20.0.post1 CPython/3.9.19 Darwin/24.1.0

Security for laplace-torch 0.2.2.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page