Using TMVA to distinguish photons
I tried using ROOT's TMVA to test several multivariate tools to distinguish photons from non-photons, based on the preshower energies.
The variables used for the MVA were the preshower1 energy divided by the tower energy, and the preshower2 energy divided by the tower energy. Note: the TMVA was setup as
TMVA::Factory *factory = new TMVA::Factory( "TMVAnalysis", outputFile, Form("V:!Silent:Color", gROOT->IsBatch()?"!":"") ); factory->AddVariable( "ePre1/eTow", 'F' ); factory->AddVariable( "ePre2/eTow", 'F' ); factory->PrepareTrainingAndTestTree( TCut(""), "SplitMode=Random:NormMode=EqualNumEvents:!V" ); factory->BookMethod( TMVA::Types::kBDT, "BDT", "!H:!V:NTrees=100:BoostType=AdaBoost:SeparationType=GiniIndex:nCuts=20:PruneMethod=CostComplexity:PruneStrength=1.5" ); factory->BookMethod( TMVA::Types::kMLP, "MLP", "!H:V:!Normalise:NeuronType=tanh:NCycles=200:HiddenLayers=N+1,N:TestRate=5" );
While other methods were tried in the TMVA, the MLP and BDT seemed to have the best results.
The various options considered in the following table are
- MLP: a multi-layer perceptron (neural network)
- BDT: a boosted decision tree
- Cut A: cut on "ePre1/eTow*1000"
- Cut B: cut on "(ePre1-ePre2)/(ePre1+ePre2)"
- Cut C: cut on "(ePre2-ePre1)/eTow < thres"
- Cut D: combine cuts A, B, and C
Cuts were adjusted to either accept only 30% of the background or 10% of the background. In both cases, the percentage photons accepted are reported in the following table
Method | Sig. Eff @ 10% Bkg | Sig. Eff. @ 30% Bkg |
---|---|---|
MLP | 73.8% | 88.3% |
BDT | 73.5% | 86.8% |
Cut A | 73.5% | 87.3% |
Cut B | 62.7% | 76.7% |
Cut C | 40.5% | 67.5% |
Cut D | 47.1% | 71.5% |
The data used was the 8 set 1 files, i.e. eta = 1.5 and phi = 0, and at 8 different pT values, generated via the "Micky Mouse" generator. See this email for more details.
Conclusions
It seems a simple cut, i.e. cut A, is comparable to the fancy MVA results. Thus, the simpler method is preferable. Note, the preshower 1 energy is the most useful in distinguishing between photons and other particles.
- sgliske's blog
- Login or register to post comments