10 #include <boost/foreach.hpp>
41 : mva_(pset.getParameter<std::string>(
"computerName"),
42 pset.getParameter<std::string>(
"dbLabel"),
43 pset.getParameter<edm::
ParameterSet>(
"discriminantOptions")),
44 signalSrc_(pset.getParameter<edm::InputTag>(
"signalSrc")),
45 backgroundSrc_(pset.getParameter<edm::InputTag>(
"backgroundSrc")) {
48 if (pset.
exists(
"signalWeights")) {
64 reco::tau::castView<reco::PFTauRefVector>(taus);
69 helper->
train(tau, isSignal, weight);
85 bool signalExists =
true;
94 bool backgroundExists =
true;
98 backgroundExists =
false;
100 backgroundExists =
false;
112 uploadTrainingData(&
mva_, signal, signalWeights,
true);
113 if (backgroundExists)
114 uploadTrainingData(&
mva_, background, backgroundWeights,
false);
T getParameter(std::string const &) const
void setEvent(const edm::Event &evt, const edm::EventSetup &es)
edm::InputTag signalWeightsSrc_
#define DEFINE_FWK_MODULE(type)
bool exists(std::string const ¶meterName) const
checks if a parameter exists
edm::InputTag backgroundSrc_
RecoTauMVATrainer(const edm::ParameterSet &pset)
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
virtual ~RecoTauMVATrainer()
virtual void analyze(const edm::Event &evt, const edm::EventSetup &es)
void train(const PFTauRef &tau, bool target, double weight=1.0) const
reco::tau::RecoTauMVAHelper mva_
edm::InputTag backgroundWeightsSrc_