# Gaussian Ansatz (v0.0.1)
[](https://github.com/rikab/GaussianAnsatz)
<!-- [](https://doi.org/10.5281/zenodo.7689890) -->
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)](https://arxiv.org/abs/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)](https://arxiv.org/abs/2205.03413)
## Dependencies
To use the `Gaussian Ansatz`, the following packages must be installed as prerequisites:
- [Tensorflow](https://github.com/tensorflow/tensorflow): A standard tensor operation library.
- [Energyflow](https://energyflow.network/): A suite of particle physics tools, including Energy Flow Networks and Particle FLow Networks
- Standard python packages: [numpy](https://numpy.org/), [scipy](https://scipy.org/), [matplotlib](https://matplotlib.org/)
## 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)](https://arxiv.org/abs/2205.03413)
Bugs, Fixes, Ideas, or Questions? Contact me at rikab@mit.edu
Raw data
{
"_id": null,
"home_page": "",
"name": "gaussianansatz",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "",
"keywords": "frequentist inference,jet physics,uncertainty estimation",
"author": "",
"author_email": "Rikab Gambhir <rikab@mit.edu>",
"download_url": "https://files.pythonhosted.org/packages/41/a5/4919677df37b3c17ba48812f2d76dcb200520f7358adc80237a96bd2297f/gaussianansatz-0.0.1.tar.gz",
"platform": null,
"description": "# Gaussian Ansatz (v0.0.1)\n\n[](https://github.com/rikab/GaussianAnsatz)\n<!-- [](https://doi.org/10.5281/zenodo.7689890) -->\n\n\nThe `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)](https://arxiv.org/abs/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.\n\n\n\n\n## Installation\n\n### From PyPI\n\nIn your Python environment run\n\n```\npython -m pip install GaussianAnsatz\n```\n\n### From this repository locally\n\nIn your Python environment from the top level of this repository run\n\n```\npython -m pip install .\n```\n\n### From GitHub\n\nIn your Python environment run\n\n```\npython -m pip install \"GaussianAnsatz @ git+https://github.com/rikab/GaussianAnsatz.git\"\n```\n\n## Example Usage\n\nFor 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.\n\nAdditional, 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)](https://arxiv.org/abs/2205.03413)\n\n## Dependencies\n\nTo use the `Gaussian Ansatz`, the following packages must be installed as prerequisites:\n\n- [Tensorflow](https://github.com/tensorflow/tensorflow): A standard tensor operation library.\n- [Energyflow](https://energyflow.network/): A suite of particle physics tools, including Energy Flow Networks and Particle FLow Networks\n- Standard python packages: [numpy](https://numpy.org/), [scipy](https://scipy.org/), [matplotlib](https://matplotlib.org/)\n\n## Citation\n\nIf you use the `Gaussian Ansatz`, please cite both the corresponding paper, \"Learning Uncertainties the Frequentist Way: Calibration and Correlation in High Energy Physics\"?:\n\n\n\n @article{Gambhir:2022gua,\n author = \"Gambhir, Rikab and Nachman, Benjamin and Thaler, Jesse\",\n title = \"{Learning Uncertainties the Frequentist Way: Calibration and Correlation in High Energy Physics}\",\n eprint = \"2205.03413\",\n archivePrefix = \"arXiv\",\n primaryClass = \"hep-ph\",\n reportNumber = \"MIT-CTP 5431\",\n doi = \"10.1103/PhysRevLett.129.082001\",\n journal = \"Phys. Rev. Lett.\",\n volume = \"129\",\n number = \"8\",\n pages = \"082001\",\n year = \"2022\"\n}\n\n\n## Changelog\n\n- v0.0.1: 17 April 2023. Now pip-installable!\n- v0.0.0: 6 May 2022. Public release.\n\nBased on the work in [\"Learning Uncertainties the Frequentist Way: Calibration and Correlation in High Energy Physics\" (arxiv:2205.03413)](https://arxiv.org/abs/2205.03413)\n\nBugs, Fixes, Ideas, or Questions? Contact me at rikab@mit.edu\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Tensorflow package for building neural networks capable of frequentist inference and uncertainty estimation",
"version": "0.0.1",
"split_keywords": [
"frequentist inference",
"jet physics",
"uncertainty estimation"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "3054462faab8592fa9d9e30117a4fb100482847b919b071752b772a7efcfb26b",
"md5": "571c33122b03f89555ea748912a2d2bc",
"sha256": "69d16b12718098556905081079647ad3550ddebe2dd7534f426a178d79330c9e"
},
"downloads": -1,
"filename": "gaussianansatz-0.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "571c33122b03f89555ea748912a2d2bc",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 11693,
"upload_time": "2023-04-17T20:13:00",
"upload_time_iso_8601": "2023-04-17T20:13:00.451459Z",
"url": "https://files.pythonhosted.org/packages/30/54/462faab8592fa9d9e30117a4fb100482847b919b071752b772a7efcfb26b/gaussianansatz-0.0.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "41a54919677df37b3c17ba48812f2d76dcb200520f7358adc80237a96bd2297f",
"md5": "b12e8c5efbc1a192abde6a70722edd0d",
"sha256": "52117a78f32d9f6ac0e95dcbdc6a013191994adfe9d5274e000ae9e3f2db8d09"
},
"downloads": -1,
"filename": "gaussianansatz-0.0.1.tar.gz",
"has_sig": false,
"md5_digest": "b12e8c5efbc1a192abde6a70722edd0d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 12239,
"upload_time": "2023-04-17T20:13:02",
"upload_time_iso_8601": "2023-04-17T20:13:02.916907Z",
"url": "https://files.pythonhosted.org/packages/41/a5/4919677df37b3c17ba48812f2d76dcb200520f7358adc80237a96bd2297f/gaussianansatz-0.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-04-17 20:13:02",
"github": false,
"gitlab": false,
"bitbucket": false,
"lcname": "gaussianansatz"
}