pytorch-inferno

PyTorch implementation of inference aware neural optimisation (de Castro and Dorigo, 2018 https://www.sciencedirect.com/science/article/pii/S0010465519301948)

https://github.com/gilesstrong/pytorch_inferno

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 10 DOI reference(s) in README
  • Academic publication links
    Links to: sciencedirect.com, zenodo.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.7%) to scientific vocabulary

Keywords

inferno likelihood-free-inference neural-networks pytorch statistical-inference

Keywords from Contributors

interactive mesh interpretability profiles distribution sequences generic projection standardization optim
Last synced: 6 months ago · JSON representation

Repository

PyTorch implementation of inference aware neural optimisation (de Castro and Dorigo, 2018 https://www.sciencedirect.com/science/article/pii/S0010465519301948)

Basic Info
Statistics
  • Stars: 4
  • Watchers: 2
  • Forks: 1
  • Open Issues: 3
  • Releases: 5
Topics
inferno likelihood-free-inference neural-networks pytorch statistical-inference
Created over 5 years ago · Last pushed almost 3 years ago
Metadata Files
Readme Changelog Contributing License Citation

README.md

Title

pypi pytorch_inferno version pytorch_inferno python compatibility pytorch_inferno license CI DOI

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 a presentation of the package, check out my talk at PyHEP 2021: https://www.youtube.com/watch?v=copNcyHnHBs (slides here: https://github.com/GilesStrong/talkpyhep21pytorch_inferno)

For a deeper 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

For a talk and tutorial on PyTorch INFERNO, please see https://github.com/GilesStrong/talkpyhep21pytorch_inferno, and https://youtu.be/5aWAxvdrszw?t=13543 for the YouTube recording.

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 title

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, pytorchinferno, Zenodo (Mar. 2021), http://doi.org/10.5281/zenodo.4597140, Note: Please check https://github.com/GilesStrong/pytorchinferno/graphs/contributors for the full list of contributors

@misc{giles_chatham_strong_2021_5040810,   author = {Giles Chatham Strong},   title = {pytorch\_inferno},   month = jun,   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}, }

Owner

  • Login: GilesStrong
  • Kind: user
  • Location: Shibuya, Tokyo, Japan

Doctor of physics | Researcher at Braid Technologies. Previously: Deep-learning approaches for high-energy particle physics at CERN's CMS experiment.

GitHub Events

Total
Last Year

Committers

Last synced: 8 months ago

All Time
  • Total Commits: 107
  • Total Committers: 3
  • Avg Commits per committer: 35.667
  • Development Distribution Score (DDS): 0.093
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
GilesStrong g****g@o****m 97
dependabot[bot] 4****] 9
Cloud User c****s@i****l 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 0
  • Total pull requests: 20
  • Average time to close issues: N/A
  • Average time to close pull requests: 13 days
  • Total issue authors: 0
  • Total pull request authors: 3
  • Average comments per issue: 0
  • Average comments per pull request: 0.15
  • Merged pull requests: 16
  • Bot issues: 0
  • Bot pull requests: 13
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
  • dependabot[bot] (13)
  • GilesStrong (6)
  • llayer (1)
Top Labels
Issue Labels
Pull Request Labels
dependencies (13)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 17 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 4
  • Total maintainers: 1
pypi.org: pytorch-inferno

PyTorch Implementation of INFERNO

  • Versions: 4
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 17 Last month
Rankings
Dependent packages count: 10.1%
Dependent repos count: 21.6%
Forks count: 22.6%
Stargazers count: 23.1%
Average: 25.5%
Downloads: 50.2%
Maintainers (1)
Last synced: 6 months ago

Dependencies

docs/Gemfile rubygems
  • github-pages >= 0 development
  • jekyll >= 3.7
  • kramdown >= 2.3.0
  • nokogiri < 1.13.7
docs/Gemfile.lock rubygems
  • activesupport 6.0.3.2
  • addressable 2.8.0
  • coffee-script 2.4.1
  • coffee-script-source 1.11.1
  • colorator 1.1.0
  • commonmarker 0.17.13
  • concurrent-ruby 1.1.7
  • dnsruby 1.61.4
  • em-websocket 0.5.1
  • ethon 0.12.0
  • eventmachine 1.2.7
  • execjs 2.7.0
  • faraday 1.0.1
  • ffi 1.13.1
  • forwardable-extended 2.6.0
  • gemoji 3.0.1
  • github-pages 207
  • github-pages-health-check 1.16.1
  • html-pipeline 2.14.0
  • http_parser.rb 0.6.0
  • i18n 0.9.5
  • jekyll 3.9.0
  • jekyll-avatar 0.7.0
  • jekyll-coffeescript 1.1.1
  • jekyll-commonmark 1.3.1
  • jekyll-commonmark-ghpages 0.1.6
  • jekyll-default-layout 0.1.4
  • jekyll-feed 0.13.0
  • jekyll-gist 1.5.0
  • jekyll-github-metadata 2.13.0
  • jekyll-mentions 1.5.1
  • jekyll-optional-front-matter 0.3.2
  • jekyll-paginate 1.1.0
  • jekyll-readme-index 0.3.0
  • jekyll-redirect-from 0.15.0
  • jekyll-relative-links 0.6.1
  • jekyll-remote-theme 0.4.1
  • jekyll-sass-converter 1.5.2
  • jekyll-seo-tag 2.6.1
  • jekyll-sitemap 1.4.0
  • jekyll-swiss 1.0.0
  • jekyll-theme-architect 0.1.1
  • jekyll-theme-cayman 0.1.1
  • jekyll-theme-dinky 0.1.1
  • jekyll-theme-hacker 0.1.1
  • jekyll-theme-leap-day 0.1.1
  • jekyll-theme-merlot 0.1.1
  • jekyll-theme-midnight 0.1.1
  • jekyll-theme-minimal 0.1.1
  • jekyll-theme-modernist 0.1.1
  • jekyll-theme-primer 0.5.4
  • jekyll-theme-slate 0.1.1
  • jekyll-theme-tactile 0.1.1
  • jekyll-theme-time-machine 0.1.1
  • jekyll-titles-from-headings 0.5.3
  • jekyll-watch 2.2.1
  • jemoji 0.11.1
  • kramdown 2.3.0
  • kramdown-parser-gfm 1.1.0
  • liquid 4.0.3
  • listen 3.2.1
  • mercenary 0.3.6
  • mini_portile2 2.8.0
  • minima 2.5.1
  • minitest 5.14.1
  • multipart-post 2.1.1
  • nokogiri 1.13.6
  • octokit 4.18.0
  • pathutil 0.16.2
  • public_suffix 3.1.1
  • racc 1.6.0
  • rb-fsevent 0.10.4
  • rb-inotify 0.10.1
  • rexml 3.2.5
  • rouge 3.19.0
  • ruby-enum 0.8.0
  • rubyzip 2.3.0
  • safe_yaml 1.0.5
  • sass 3.7.4
  • sass-listen 4.0.0
  • sawyer 0.8.2
  • simpleidn 0.1.1
  • terminal-table 1.8.0
  • thread_safe 0.3.6
  • typhoeus 1.4.0
  • tzinfo 1.2.7
  • unf 0.1.4
  • unf_ext 0.0.7.7
  • unicode-display_width 1.7.0
  • zeitwerk 2.4.0
.github/workflows/main.yml actions
  • actions/checkout v1 composite
  • actions/setup-python v1 composite
docker-compose.yml docker
setup.py pypi