MuonID NN and ElectronIDNN optimisation. Use of constant memory in general for LipschitzNN instances
Adds a new LipschitzNN operator to run on the DiMuonNoIPLine
. It helps lower the rate of the line by 20% by also getting 5% better signal efficiency using J/\psi \to \mu^+\mu^-
simulation as signal proxy and protons coming from minimum bias. (It closes !1413 (closed)).
The main comments that were already arisen in that MR are now fixed.
It uses 12 input features:
- Chi2Corr
- Chi2Uncorr
- Timing of M3
- Delta time of M3
- Residuals in x/y of the SciFi extrapollation and the Muon hit position
- Difference between SciFi and MUON slopes
- Crossing of the hits
Figures of the new features can be found:
Performance as function of p_T
:
It also adds new weights for the electronIDNN
kernel. The changes are describe in ( !1487 (closed)) which should be closed. I'm also dividing by the ECAL size, removing the secondary peaks in the distributions.
Features of electron operator:
- EoP following selective matching of ECAL cells
- EoP using 3x3 clusters
\Delta_b = \frac{x_{\mathrm{SciFi}} -\frac{1}{\epsilon_T} \sum \epsilon_i x_i}{\mathrm{CellSize}}
\mathcal{S}_{xx}=\frac{\sum (x_i^2\epsilon-x^2_b)}{\epsilon_T\mathrm{CellSize}}
\mathcal{S}_{yy}=\frac{\sum (y_i^2\epsilon-y^2_b)}{\epsilon_T\mathrm{CellSize}}
\mathcal{S}_{xy}=\frac{\sum (x_iy_i\epsilon-x_by_b)}{\epsilon_T\mathrm{CellSize}}
The electron features look as follows for signal J/\psi \to e^+ e^-
as signal proxy and pions and kaons as background proxies:
The two changes combined results in a faster sequence thanks to the optimisations in the NN sizes and also thanks to the usage of __constant__
memory.
The aim is to be able to use this configuration as soon as possible, targetting nominally the June technical stop.
Overall it improves the performance of the sequence by 1% despite adding a new operator.
goes with lhcb-datapkg/ParamFiles!101 (merged)