pyhf: pure-Python implementation of HistFactory with tensors and automatic differentiation
Matthew Feickert, Lukas Heinrich, Giordon Stark

TL;DR
pyhf is a Python implementation of the HistFactory statistical model that leverages modern tensor libraries and auto-differentiation for flexible, efficient, and GPU-accelerated high-energy physics data analysis outside of ROOT.
Contribution
It introduces a pure-Python, tensor-compatible implementation of HistFactory with JSON serialization, enabling broader and more efficient statistical analysis in high-energy physics.
Findings
Supports TensorFlow, PyTorch, JAX for auto-differentiation and GPU use
Published 23 probability models from ATLAS analyses on HEPData
Enables analysis outside of ROOT framework
Abstract
The HistFactory p.d.f. template is per-se independent of its implementation in ROOT and it is useful to be able to run statistical analysis outside of the ROOT, RooFit, RooStats framework. pyhf is a pure-Python implementation of that statistical model for multi-bin histogram-based analysis and its interval estimation is based on the asymptotic formulas of "Asymptotic formulae for likelihood-based tests of new physics". pyhf supports modern computational graph libraries such as TensorFlow, PyTorch, and JAX in order to make use of features such as auto-differentiation and GPU acceleration. In addition, pyhf's JSON serialization specification for HistFactory models has been used to publish 23 full probability models from published ATLAS collaboration analyses to HEPData.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
