Skip to main content

Tensorflow package for building neural networks capable of frequentist inference and uncertainty estimation

Project description

Gaussian Ansatz (v0.0.1)

GitHub Project

The Gaussian Ansatz is a machine learning framework for performing frequentist inference, complete with local uncertainty estimation, as described in "Learning Uncertainties the Frequentist Way: Calibration and Correlation in High Energy Physics" (arxiv:2205.03413). These models can be used to quickly estimate local resolutions of an inference $z$ given a measurement $x$, even if $x$ is very high-dimensional.

Installation

From PyPI

In your Python environment run

python -m pip install GaussianAnsatz

From this repository locally

In your Python environment from the top level of this repository run

python -m pip install .

From GitHub

In your Python environment run

python -m pip install "GaussianAnsatz @ git+https://github.com/rikab/GaussianAnsatz.git"

Example Usage

For an example of how to use the Gaussian Ansatz, see the notebook examples/minimal_working_example.ipynb. This notebook contains example code for loading data, using pre-built DNN Gaussian Ansatz, pre-training and training, and extracting inferences with uncertainty estimates.

Additional, more complicated examples can be found in the JEC subfolder. The files here correspond exactly to the jet energy studies, as described in "Learning Uncertainties the Frequentist Way: Calibration and Correlation in High Energy Physics" (arxiv:2205.03413)

Dependencies

To use the Gaussian Ansatz, the following packages must be installed as prerequisites:

  • Tensorflow: A standard tensor operation library.
  • Energyflow: A suite of particle physics tools, including Energy Flow Networks and Particle FLow Networks
  • Standard python packages: numpy, scipy, matplotlib

Citation

If you use the Gaussian Ansatz, please cite both the corresponding paper, "Learning Uncertainties the Frequentist Way: Calibration and Correlation in High Energy Physics"?:

@article{Gambhir:2022gua,
author = "Gambhir, Rikab and Nachman, Benjamin and Thaler, Jesse",
title = "{Learning Uncertainties the Frequentist Way: Calibration and Correlation in High Energy Physics}",
eprint = "2205.03413",
archivePrefix = "arXiv",
primaryClass = "hep-ph",
reportNumber = "MIT-CTP 5431",
doi = "10.1103/PhysRevLett.129.082001",
journal = "Phys. Rev. Lett.",
volume = "129",
number = "8",
pages = "082001",
year = "2022"

}

Changelog

  • v0.0.1: 17 April 2023. Now pip-installable!
  • v0.0.0: 6 May 2022. Public release.

Based on the work in "Learning Uncertainties the Frequentist Way: Calibration and Correlation in High Energy Physics" (arxiv:2205.03413)

Bugs, Fixes, Ideas, or Questions? Contact me at rikab@mit.edu

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

gaussianansatz-0.0.1.tar.gz (12.2 kB view details)

Uploaded Source

Built Distribution

gaussianansatz-0.0.1-py3-none-any.whl (11.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: gaussianansatz-0.0.1.tar.gz
  • Upload date:
  • Size: 12.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.3

File hashes

Hashes for gaussianansatz-0.0.1.tar.gz
Algorithm Hash digest
SHA256 52117a78f32d9f6ac0e95dcbdc6a013191994adfe9d5274e000ae9e3f2db8d09
MD5 b12e8c5efbc1a192abde6a70722edd0d
BLAKE2b-256 41a54919677df37b3c17ba48812f2d76dcb200520f7358adc80237a96bd2297f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for gaussianansatz-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 69d16b12718098556905081079647ad3550ddebe2dd7534f426a178d79330c9e
MD5 571c33122b03f89555ea748912a2d2bc
BLAKE2b-256 3054462faab8592fa9d9e30117a4fb100482847b919b071752b772a7efcfb26b

See more details on using hashes here.

Supported by

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