12#ifndef ROOT_TMVA_CROSS_EVALUATION
13#define ROOT_TMVA_CROSS_EVALUATION
82 std::map<UInt_t, Float_t>
fROCs;
142 const std::vector<CrossValidationResult> &
GetResults()
const;
unsigned int UInt_t
Unsigned integer 4 bytes (unsigned int).
bool Bool_t
Boolean (0=false, 1=true) (bool).
double Double_t
Double 8 bytes.
float Float_t
Float 4 bytes (float).
#define ClassDefOverride(name, id)
A file, usually with extension .root, that stores data and code in the form of serialized objects in ...
CrossValidationFoldResult(UInt_t iFold)
CrossValidationFoldResult()
std::vector< Double_t > fSeps
std::vector< Double_t > fEff01s
CrossValidationResult(UInt_t numFolds)
std::vector< Double_t > GetTrainEff10Values() const
std::vector< Double_t > fTrainEff30s
std::shared_ptr< TMultiGraph > fROCCurves
std::vector< Double_t > GetTrainEff30Values() const
std::vector< Double_t > fSigs
friend class CrossValidation
std::vector< Double_t > fEff30s
void Fill(CrossValidationFoldResult const &fr)
Float_t GetROCStandardDeviation() const
std::vector< Double_t > fEff10s
std::vector< Double_t > fTrainEff01s
std::vector< Double_t > GetEff10Values() const
std::map< UInt_t, Float_t > fROCs
std::vector< Double_t > fTrainEff10s
std::vector< Double_t > GetTrainEff01Values() const
Float_t GetROCAverage() const
std::vector< Double_t > fEffAreas
std::vector< Double_t > GetEff01Values() const
TCanvas * DrawAvgROCCurve(Bool_t drawFolds=kFALSE, TString title="") const
std::vector< Double_t > GetSigValues() const
TMultiGraph * GetROCCurves(Bool_t fLegend=kTRUE)
TGraph * GetAvgROCCurve(UInt_t numSamples=100) const
Generates a multigraph that contains an average ROC Curve.
std::map< UInt_t, Float_t > GetROCValues() const
std::vector< Double_t > GetEffAreaValues() const
std::vector< Double_t > GetSepValues() const
std::vector< Double_t > GetEff30Values() const
void SetNumFolds(UInt_t i)
const std::vector< CrossValidationResult > & GetResults() const
std::vector< CrossValidationResult > fResults
!
std::unique_ptr< Factory > fFoldFactory
CrossValidation(TString jobName, TMVA::DataLoader *dataloader, TString options)
Bool_t fFoldStatus
! If true: dataset is prepared
std::unique_ptr< CvSplitKFolds > fSplit
void ParseOptions() override
options parser
Types::EAnalysisType fAnalysisType
Bool_t fFoldFileOutput
! If true: generate output file for each fold
TString fCvFactoryOptions
void SetSplitExpr(TString splitExpr)
TString fOutputFactoryOptions
std::unique_ptr< Factory > fFactory
void Evaluate() override
Does training, test set evaluation and performance evaluation of using cross-evalution.
UInt_t fNumFolds
! Number of folds to prepare
TString fOutputEnsembling
! How to combine output of individual folds
UInt_t fNumWorkerProcs
! Number of processes to use for fold evaluation. (Default, no parallel evaluation)
CrossValidationFoldResult ProcessFold(UInt_t iFold, const OptionMap &methodInfo)
Evaluates each fold in turn.
Envelope(const TString &name, DataLoader *dataloader=nullptr, TFile *file=nullptr, const TString options="")
Constructor for the initialization of Envelopes, differents Envelopes may needs differents constructo...
This is the main MVA steering class.
class to storage options for the differents methods
std::vector< Float_t > EventOutputs_t
std::vector< std::vector< Float_t > > EventOutputsMulticlass_t
std::vector< Event * > EventCollection_t
std::vector< Bool_t > EventTypes_t
create variable transformations