31 #ifndef ROOT_TMVA_LossFunction 32 #define ROOT_TMVA_LossFunction 87 fNumPoolThreads = GetNumThreadsInPool();
94 virtual Double_t CalculateNetLoss(std::vector<LossFunctionEventInfo>& evs) = 0;
95 virtual Double_t CalculateMeanLoss(std::vector<LossFunctionEventInfo>& evs) = 0;
98 virtual Int_t Id() = 0;
154 virtual void Init(std::map<const TMVA::Event*, LossFunctionEventInfo>& evinfomap, std::vector<double>& boostWeights) = 0;
155 virtual void SetTargets(std::vector<const TMVA::Event*>& evs, std::map< const TMVA::Event*, LossFunctionEventInfo >& evinfomap) = 0;
157 virtual Double_t Fit(std::vector<LossFunctionEventInfo>& evs) = 0;
174 Double_t CalculateNetLoss(std::vector<LossFunctionEventInfo>& evs);
175 Double_t CalculateMeanLoss(std::vector<LossFunctionEventInfo>& evs);
182 void Init(std::vector<LossFunctionEventInfo>& evs);
183 Double_t CalculateQuantile(std::vector<LossFunctionEventInfo>& evs,
Double_t whichQuantile,
Double_t sumOfWeights,
bool abs);
184 Double_t CalculateSumOfWeights(std::vector<LossFunctionEventInfo>& evs);
185 void SetTransitionPoint(std::vector<LossFunctionEventInfo>& evs);
186 void SetSumOfWeights(std::vector<LossFunctionEventInfo>& evs);
208 void Init(std::map<const TMVA::Event*, LossFunctionEventInfo>& evinfomap, std::vector<double>& boostWeights);
209 void SetTargets(std::vector<const TMVA::Event*>& evs, std::map< const TMVA::Event*, LossFunctionEventInfo >& evinfomap);
211 Double_t Fit(std::vector<LossFunctionEventInfo>& evs);
229 Double_t CalculateNetLoss(std::vector<LossFunctionEventInfo>& evs);
230 Double_t CalculateMeanLoss(std::vector<LossFunctionEventInfo>& evs);
250 void Init(std::map<const TMVA::Event*, LossFunctionEventInfo>& evinfomap, std::vector<double>& boostWeights);
251 void SetTargets(std::vector<const TMVA::Event*>& evs, std::map< const TMVA::Event*, LossFunctionEventInfo >& evinfomap);
253 Double_t Fit(std::vector<LossFunctionEventInfo>& evs);
268 Double_t CalculateNetLoss(std::vector<LossFunctionEventInfo>& evs);
269 Double_t CalculateMeanLoss(std::vector<LossFunctionEventInfo>& evs);
289 void Init(std::map<const TMVA::Event*, LossFunctionEventInfo>& evinfomap, std::vector<double>& boostWeights);
290 void SetTargets(std::vector<const TMVA::Event*>& evs, std::map< const TMVA::Event*, LossFunctionEventInfo >& evinfomap);
292 Double_t Fit(std::vector<LossFunctionEventInfo>& evs);
UInt_t GetImplicitMTPoolSize()
Returns the size of the pool used for implicit multi-threading.
UInt_t GetNumThreadsInPool()
~LeastSquaresLossFunction()
Absolute Deviation BDT Loss Function.
Least Squares Loss Function.
~LeastSquaresLossFunctionBDT()
Absolute Deviation Loss Function.
void Init(TClassEdit::TInterpreterLookupHelper *helper)
Least Squares BDT Loss Function.
~AbsoluteDeviationLossFunction()
LeastSquaresLossFunction()
~AbsoluteDeviationLossFunctionBDT()
AbsoluteDeviationLossFunction()
HuberLossFunctionBDT(Double_t quantile)
TFitResultPtr Fit(FitObject *h1, TF1 *f1, Foption_t &option, const ROOT::Math::MinimizerOptions &moption, const char *goption, ROOT::Fit::DataRange &range)
you should not use this method at all Int_t Int_t Double_t Double_t Double_t e
LossFunctionEventInfo(Double_t trueValue_, Double_t predictedValue_, Double_t weight_)
Double_t fTransitionPoint
Abstract ClassifierFactory template that handles arbitrary types.
LeastSquaresLossFunctionBDT()
AbsoluteDeviationLossFunctionBDT()
virtual ~LossFunctionBDT()