40#ifndef ROOT_TMVA_Factory
41#define ROOT_TMVA_Factory
73 class DataInputHandler;
78 class VariableTransformBase;
97 virtual const char*
GetName()
const {
return "Factory"; }
183 TH1F*
GetImportance(
const int nbits,std::vector<Double_t> importances,std::vector<TString> varNames);
#define ClassDef(name, id)
Describe directory structure in memory.
A ROOT file is a suite of consecutive data records (TKey instances) with a well defined format.
A Graph is a graphics object made of two arrays X and Y with npoints each.
1-D histogram with a float per channel (see TH1 documentation)}
Class to perform cross validation, splitting the dataloader into folds.
Class that contains all the data information.
This is the main MVA steering class.
void PrintHelpMessage(const TString &datasetname, const TString &methodTitle="") const
Print predefined help message of classifier.
Double_t GetROCIntegral(DataLoader *loader, TString theMethodName, UInt_t iClass=0)
Calculate the integral of the ROC curve, also known as the area under curve (AUC),...
Bool_t fSilentFile
enable to calculate ROC values
Bool_t fCorrelations
verbosity level, controls granularity of logging
TString fOptions
list of transformations on default DataSet
std::vector< IMethod * > MVector
void TrainAllMethods()
Iterates through all booked methods and calls training.
Bool_t Verbose(void) const
void WriteDataInformation(DataSetInfo &fDataSetInfo)
MethodBase * BookMethod(DataLoader *loader, TString theMethodName, TString methodTitle, TString theOption="")
Book a classifier or regression method.
Factory(TString theJobName, TFile *theTargetFile, TString theOption="")
Standard constructor.
void TestAllMethods()
Evaluates all booked methods on the testing data and adds the output to the Results in the corresponi...
void TrainAllMethodsForClassification(void)
Bool_t fVerbose
list of transformations to test
void EvaluateAllMethods(void)
Iterates over all MVAs that have been booked, and calls their evaluation methods.
TH1F * EvaluateImportanceRandom(DataLoader *loader, UInt_t nseeds, Types::EMVA theMethod, TString methodTitle, const char *theOption="")
TH1F * GetImportance(const int nbits, std::vector< Double_t > importances, std::vector< TString > varNames)
Bool_t fROC
enable to calculate corelations
void EvaluateAllVariables(DataLoader *loader, TString options="")
Iterates over all MVA input variables and evaluates them.
TDirectory * RootBaseDir()
TString fVerboseLevel
verbose mode
TH1F * EvaluateImportance(DataLoader *loader, VIType vitype, Types::EMVA theMethod, TString methodTitle, const char *theOption="")
Evaluate Variable Importance.
void OptimizeAllMethodsForRegression(TString fomType="ROCIntegral", TString fitType="FitGA")
virtual const char * GetName() const
Returns name of object.
std::map< TString, MVector * > fMethodsMap
void SetInputTreesFromEventAssignTrees()
virtual ~Factory()
Destructor.
TGraph * GetROCCurve(DataLoader *loader, TString theMethodName, Bool_t setTitles=kTRUE, UInt_t iClass=0)
Argument iClass specifies the class to generate the ROC curve in a multiclass setting.
virtual void MakeClass(const TString &datasetname, const TString &methodTitle="") const
Bool_t IsModelPersistence()
MethodBase * BookMethodWeightfile(DataLoader *dataloader, TMVA::Types::EMVA methodType, const TString &weightfile)
Adds an already constructed method to be managed by this factory.
Bool_t fModelPersistence
the training type
std::map< TString, Double_t > OptimizeAllMethods(TString fomType="ROCIntegral", TString fitType="FitGA")
Iterates through all booked methods and sees if they use parameter tuning and if so.
void OptimizeAllMethodsForClassification(TString fomType="ROCIntegral", TString fitType="FitGA")
ROCCurve * GetROC(DataLoader *loader, TString theMethodName, UInt_t iClass=0, Types::ETreeType type=Types::kTesting)
Private method to generate a ROCCurve instance for a given method.
TH1F * EvaluateImportanceShort(DataLoader *loader, Types::EMVA theMethod, TString methodTitle, const char *theOption="")
Types::EAnalysisType fAnalysisType
jobname, used as extension in weight file names
TString fJobName
used in contructor wihtout file
Bool_t HasMethod(const TString &datasetname, const TString &title) const
Checks whether a given method name is defined for a given dataset.
MethodBase * BookMethod(DataLoader *, TMVA::Types::EMVA, TString, TString, TMVA::Types::EMVA, TString)
void TrainAllMethodsForRegression(void)
TH1F * EvaluateImportanceAll(DataLoader *loader, Types::EMVA theMethod, TString methodTitle, const char *theOption="")
void SetVerbose(Bool_t v=kTRUE)
std::vector< TMVA::VariableTransformBase * > fDefaultTrfs
ROOT output file.
IMethod * GetMethod(const TString &datasetname, const TString &title) const
Returns pointer to MVA that corresponds to given method title.
void DeleteAllMethods(void)
Delete methods.
TString fTransformations
option string given by construction (presently only "V")
void Greetings()
Print welcome message.
TMultiGraph * GetROCCurveAsMultiGraph(DataLoader *loader, UInt_t iClass)
Generate a collection of graphs, for all methods for a given class.
Interface for all concrete MVA method implementations.
Virtual base Class for all MVA method.
A TMultiGraph is a collection of TGraph (or derived) objects.
A TTree object has a header with a name and a title.
Abstract ClassifierFactory template that handles arbitrary types.