PyTorch Implementation of INFERNO
Project description
Title
PyTorch INFERNO
Documentation: https://gilesstrong.github.io/pytorch_inferno/
This package provides a PyTorch implementation of INFERNO (de Castro and Dorigo, 2018), along with a minimal high-level wrapper for training and applying PyTorch models, and running statistical inference of parameters of interest in the presence of nuisance parameters. INFERNO is implemented in the form of a callback, allowing it to be dropped in and swapped out with heavy rewriting of code.
For an overview of the package, a breakdown of the INFERNO algorithm, and an introduction to parameter inference in HEP, I have written a 5-post blog series: https://gilesstrong.github.io/website/statistics/hep/inferno/2020/12/04/inferno-1.html
The authors' Tensorflow 1 code may be found here: https://github.com/pablodecm/paper-inferno And Lukas Layer's Tenforflow 2 version may be found here: https://github.com/llayer/inferno
User install
pip install pytorch_inferno
Developer install
[install torch>=1.7 according to CUDA version]
pip install nbdev fastcore numpy pandas fastprogress matplotlib>=3.0.0 seaborn scipy
git clone git@github.com:GilesStrong/pytorch_inferno.git
cd pytorch_inferno
pip install -e .
nbdev_install_git_hooks
Overview
Library developed and testing in nbs
directory.
Experiments run in experiments
directory.
Use nbdev_build_lib
to export code to library located in pytorch_inferno
. This overwrites any changes in pytorch_inferno
, i.e. only edit the notebooks.
Results
This package has been tested against the paper problem and reproduces its results within uncertainty
Reference
If you have used this implementation of INFERNO in your analysis work and wish to cite it, the preferred reference is: Giles C. Strong, pytorch_inferno, Zenodo (Mar. 2021), http://doi.org/10.5281/zenodo.4597140, Note: Please check https://github.com/GilesStrong/pytorch_inferno/graphs/contributors for the full list of contributors
@misc{giles_chatham_strong_2021_4597140,
author = {Giles Chatham Strong},
title = {LUMIN},
month = mar,
year = 2021,
note = {{Please check https://github.com/GilesStrong/pytorch_inferno/graphs/contributors for the full list of contributors}},
doi = {10.5281/zenodo.4597140},
url = {https://doi.org/10.5281/zenodo.4597140}
}
The INFERNO algorithm should also be cited:
@article{DECASTRO2019170,
title = {INFERNO: Inference-Aware Neural Optimisation},
journal = {Computer Physics Communications},
volume = {244},
pages = {170-179},
year = {2019},
issn = {0010-4655},
doi = {https://doi.org/10.1016/j.cpc.2019.06.007},
url = {https://www.sciencedirect.com/science/article/pii/S0010465519301948},
author = {Pablo {de Castro} and Tommaso Dorigo},
}
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
Built Distribution
File details
Details for the file pytorch_inferno-0.2.2.tar.gz
.
File metadata
- Download URL: pytorch_inferno-0.2.2.tar.gz
- Upload date:
- Size: 21.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.4.2 requests/2.24.0 setuptools/39.1.0 requests-toolbelt/0.9.1 tqdm/4.28.1 CPython/3.6.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a4ca0d35b115c23e77a9da17c76d938bce03e9c1e8c0256f3baf6b491fad81db |
|
MD5 | 827093e4c97b4fd2f582775310a073ff |
|
BLAKE2b-256 | 24498b99e968a8750666322903c1b94d237f6e70968e31c4043e4bba3d76cb92 |
File details
Details for the file pytorch_inferno-0.2.2-py3-none-any.whl
.
File metadata
- Download URL: pytorch_inferno-0.2.2-py3-none-any.whl
- Upload date:
- Size: 21.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.4.2 requests/2.24.0 setuptools/39.1.0 requests-toolbelt/0.9.1 tqdm/4.28.1 CPython/3.6.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 94ac1501a1d143e6117663f05c81e6076df3a58e78ff7d1f3cd0a1302984990b |
|
MD5 | de318a99da44415c43fea45894d5aa78 |
|
BLAKE2b-256 | f1230d418bbbe3521ef83a313c8c04a151920aceabe92f9154ad9567d434d496 |