Skip to content

Change LeptonID

The list of lines for which the NN cut is made available is the following:|

MuonNN Cut BW division Electron NN Cut BW division
DiMuonDisplacedLine 0.1 Yes Hlt1TrackElectronMVA 0.7 Yes
DiMuonHighMassLine 0.1 Yes DisplacedDielectronLine 0.7 Yes
DiMuonNoIPLine 0.95 No LowMassDielectronNoIPLine 0.95 Yes
DiMuonDrellYanLine Chi2Corr cuts No LowMassDielectronDisplacedLine 0.8 Yes
TrackMuonMVA 0.1 Yes
Hlt1SMOG2DisplacedDiMuonLine Chi2Corr No
Hlt1SMOG2JpsiToMuMuTapLine Chi2Corr No
Hlt1SMOG2SingleMuon Chi2Corr No
DiMuonDisplacedSoftPTLine 0.8 No

(Then actually all lines cutting on isElectron are changed since the MR also changes the defition of isElectron to be NN based > 0.6)

I have set different muonNN cuts following the logic that was chosen to select Chi2Corr cuts. These cuts are a bit more aggressive than Chi2Corr but hopefully it will help recover more efficiency as they should allow for much softer pT cuts. Then for some specific lines some more stringent cuts are chosen, these are especifically the Dark Photon lines.

This MR showcases an example to change the LeptonID based on the NN operators:

  • Electrons: Define isElectron based on the NN setting a cut similarly efficient but reducing background twice as much:
NN
MB:
Hlt1DiElectronDisplaced:            21/ 10000, (  423.00 +/-    35.37) kHz
jpsiee:
Hlt1DiElectronDisplaced:           2346// 10000, (10035.00 +/-   141.54) kHz


EoP
MB:
Hlt1DiElectronDisplaced:             47/ 10000, (  141.00 +/-    20.52) kHz
jpsiee:
Hlt1DiElectronDisplaced:           2291/ 10000, ( 6873.00 +/-   126.08) kHz

ROC curves (A bit shaky because the fits are a bit unstable...)

p_T \in [500,800] MeV p_T \in [800,1200] MeV
roc-0-1000000000000-500-800 roc-0-100000000-800-1200
p_T \in [1200,2500] MeV p_T \in [2500,4000] MeV
roc-0-100000000-1200-2500 roc-0-100000000-2500-4000
p \in [3000,6000] MeV p \in [6000,12000] MeV
roc-3000-6000-00-5000000000 roc-6000-12000-00-5000000000
p \in [12000,20000] MeV p > 20000 MeV
roc-12000-20000-00-5000000000 roc-20000-1000000000000-00-5000000000

Features data(top) simulation (bottom): (slight cut on the NN to cleanup the electron background)

EoP EoP3x3 delta_barycenter
electron_probe0 electron_probe1 electron_probe2
EoP EoP3x3 delta_barycenter
dispersion_x dispersion_y dispersion_xy
electron_probe3 electron_probe4 electron_probe5
dispersion_x dispersion_y dispersion_xy
  • Muons: Go line by line and modify the Chi2Corr cut > 1.8 to loose cut of 0.1 which improves the background reduction also by 50% at the same efficiency point. In this example I modified the DiMuonMassLine which shows these numbers for the Ks2MuMu as signal and MB as background. We see that we x10 lower rate on background, lowering the PT cut down to 0 MeV while keeping 50% more of the low PT muons.
NN
MB:
Hlt1DiMuonDisplaced:      9/ 10000, (   27.00 +/-     9.00) kHz
ks2mumu:
Hlt1DiMuonDisplaced:    222/ 10000, (  666.00 +/-    44.20) kHz

Chi2Corr and PT cut at 500 MeV
MB:
Hlt1DiMuonDisplaced:               91/ 10000, (  273.00 +/-    28.49) kHz
ks2mumu:
Hlt1DiMuonDisplaced:              147/ 10000, (  441.00 +/-    36.10) kHz

ROC curves (pion rejection:

p_T \in [100,500] MeV p_T \in [500,1000] MeV p_T \in [1000,2000] MeV
roc-0-1000000-100-500 roc-0-1000000-500-1000 roc-0-1000000-1000-2000
p \in [3000,7000] MeV p \in [7000,12000 MeV p > 12000 MeV
roc-3000-7000-00-5000000000 roc-7000-12000-00-5000000000 roc-12000-10000000-00-5000000000

ROC curves (proton rejection, for this type of background the NN does not improve):

p_T \in [500,1000] MeV p_T \in [1000,2000] MeV
roc-0-1000000-500-1000 roc-0-1000000-1000-2000
p \in [3000,7000] MeV p \in [7000,12000 MeV p > 12000 MeV
roc-3000-7000-00-5000000000 roc-7000-12000-00-5000000000 roc-12000-10000000-00-5000000000

Features data(top; muon vs proton)(mid; muon vs pion); simulation (bottom; actually trained on protons!):

chi2coor chi2uncorr dtx
muon_probe0 muon_probe1 muon_probe2
muonpion_probe0 muonpion_probe1 muonpion_probe2
chi2corr chi2uncorr dtx
dty dty_velo
muon_probe3 muon_probe4
muonpion_probe3 muonpion_probe4
dty dty_velo
Goes with: lhcb-datapkg/ParamFiles!128 (merged) (NN models update)

Edit: I Have updated the roc curves, I'm refining the J/psi model, that's why they changed (are better).

Edited by Adrian Casais Vidal

Merge request reports

Loading