Theory (QCD, QED) allows us to compute the observable values \(\mathcal{O}_n\) from the PDF space.
Why does a given flavor look like this in a given \(x\) region? Which datasets are responsible for this behavior?
Black-box systems are a recurrent interpretability issue in modern DL. We can take inspiration from the methods developed there to solve the interpretability problem of PDFs.
XAI answer : What's the impact of one feature on the output of the model ?
Game theory: average marginal contribution of player \(i\) across all coalitions \(S\).
\[ \phi_i = \sum_{S \subseteq N \setminus \{i\}} \frac{|S|! \, (|N| - |S| - 1)!}{|N|!} \left[ v(S \cup \{i\}) - v(S) \right] \]Cost \(\sim 2^N\): intractable for high dimensional attribution.
SHAP buys tractability by assuming feature independence, known to distort HEP results when features are correlated.
Take a determined PDF set as given, each flavor is a player. Blind to how it was fitted.
Load trained PDFs from n3fit.
\(\Delta^\pm_j(x_\mu)\) = 68% CI bounds of the replicas → calibrated to the PDF uncertainty, comparable across flavors.
Flavors join the perturbation one at a time, in a random order.
For each possible \(S\), we ask what \(g\) adds to the \(\chi^2\) at the moment it walks in.
blue perturbed flavor · grey non-perturbed flavor · g perturbed flavor \(g\)
\(8! = 40320\) orders, but only 128 distinct \(S\).
Correlations between flavors come from the sum rules:
Flavors in \(S\) get the bump; the others have their normalization \(A_i\) readjusted so the rules still hold.
Depends on the \(x\) region (local perturbation) and on the dataset (\(\chi^2\)).
Replay the whole game on each replica \(f^k\):
\[ \phi_i^{(k)}=\phi_i(f^k), \qquad \bar\phi_i = \frac{1}{N_{\text{rep}}}\sum_k \phi_i^{(k)}, \qquad \sigma^2_{\phi_i}=\frac{1}{N_{\text{rep}}-1}\sum_k\left(\phi_i^{(k)}-\bar\phi_i\right)^2. \]50 log-spaced \(x_\mu\), central NNPDF4.0, flavor basis.
One row misbehaves: the gluon dips to zero twice.
We infer the gluon from how data change with \(Q^2\)
(scaling violations)
At \(N=2\), momentum conservation creates a non-evolving mode
No evolution = little signal to constrain the gluon
Mellin mapping: \(N_0=2 \;\mapsto\; x\approx0.07\)
The non-evolving mode lands at the dip
Contact : raphael.bonnet-guerrini@unimi.it
This work was supported by the European Union's Horizon Europe research and innovation programme under the Marie Sklodowska-Curie grant agreement No 101168829, Challenging AI with Challenges from Physics: How to solve fundamental problems in Physics by AI and vice versa (AIPHY).
DYE906 / DYE866, for a few \(x_\mu\)
# INPUT: observables, mu,sigma,amplitude, n_samples, n_flavors = n
# OUTPUT: shapley_vals[], baseline_chi2, cache
baseline_chi2 = evaluate_chi2(observables, flavor_subset=[]) # v({})
cache = {} # map subset -> v(S)
all_subsets = power_set(0..n-1) # exclude full-set if desired
for i in 0..n-1:
SV = 0
for S in all_subsets:
if i in S: continue
# v(S)
if S not in cache:
cache[S] = evaluate_chi2(observables, flavor_subset=list(S), mu,sigma,amplitude, n_samples)
vS = cache[S]
# v(S ∪ {i})
S_with = S ∪ {i}
if S_with not in cache:
cache[S_with] = evaluate_chi2(observables, flavor_subset=list(S_with), mu,sigma,amplitude, n_samples)
vSw = cache[S_with]
Δ = vSw - vS # marginal contribution
s = |S|
w = factorial(s) * factorial(n - s - 1) / factorial(n)
SV += w * Δ
shapley_vals[i] = SV
# RETURN: shapley_vals, baseline_chi2, evaluated_coalitions=|cache|
# COMPLEXITY: time ~ O(n · 2^n · cost_eval), space ~ O(2^n) (memoized)