Rejection Sampling with Autodifferentiation (RSA) arXiv:2411.02194
Combining Monte Carlo accept-reject sampling, statistical reweighting, and modern differential programming libraries into a single algorithmic framework facilitates the efficient and differentiable exploration of single- or multi-dimensional parameter spaces within an arbitrary probabilistic model. To showcase this framework, termed Rejection Sampling with Autodifferentiation (RSA), we consider the Lund string model of hadronization and perform an automated two-parameter fit using hierarchical (pseudo-)datasets generated from hadronizing quark-antiquark strings. We also emphasize the compatibility and efficacy of the tuning framework with binned, unbinned, and machine-learning-based observables. For more details on the method and the presented example, see the documentation as well as the accompanying preprint "Rejection Sampling with Autodifferentiation - Case Study: Fitting a Hadronization Model".
The repo is partitioned into two directories:
-
This
data/
directory includes all of the necessary scripts for alteringpythia8312
1 and generating hadronization datasets compatible with post-hoc reweighting. For more details see./data/README.md
.
For immediate use withsrc/RSA_tuner.py
,src/lund_weight.py
, etc, a pre-processed dataset containing 10,000 events can be downloaded from https://zenodo.org/records/14289503. -
The
src/
directory contains the main elements for RSA-based parameter estimation. See./src/README.md
for more details.