27#ifndef ROOT_TMVA_MethodDT
28#define ROOT_TMVA_MethodDT
63 void Train(
void )
override;
101 void Init(
void )
override;
int Int_t
Signed integer 4 bytes (int).
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)
Class that contains all the data information.
Implementation of a Decision Tree.
MethodBase(const TString &jobName, Types::EMVA methodType, const TString &methodTitle, DataSetInfo &dsi, const TString &theOption="")
standard constructor
void ReadWeightsFromStream(std::istream &) override=0
Class for boosting a TMVA method.
UInt_t fMaxDepth
max depth
Bool_t fAutomatic
use user given prune strength or automatically determined one using a validation sample
Float_t fMinNodeSize
min percentage of training events in node
virtual ~MethodDT(void)
destructor
MethodDT(const TString &jobName, const TString &methodTitle, DataSetInfo &theData, const TString &theOption="")
the standard constructor for just an ordinar "decision trees"
void DeclareOptions() override
Define the options (their key words) that can be set in the option string.
Bool_t fUsePoissonNvars
fUseNvars is used as a poisson mean, and the actual value of useNvars is at each step drawn form that...
Int_t fUseNvars
the number of variables used in the randomised tree splitting
void ProcessOptions() override
the option string is decoded, for available options see "DeclareOptions"
void Init(void) override
common initialisation with defaults for the DT-Method
Double_t TestTreeQuality(DecisionTree *dt)
SeparationBase * fSepType
the separation used in node splitting
DecisionTree::EPruneMethod fPruneMethod
method used for pruning
Double_t fErrorFraction
ntuple var: misclassification error fraction
static const Int_t fgDebugLevel
debug level determining some printout/control plots etc.
Double_t fDeltaPruneStrength
step size in pruning, is adjusted according to experience of previous trees
Bool_t fUseYesNoLeaf
use sig or bkg classification in leave nodes or sig/bkg
void ReadWeightsFromXML(void *wghtnode) override
const Ranking * CreateRanking() override
Double_t fNodePurityLimit
purity limit for sig/bkg nodes
TString fSepTypeS
the separation (option string) used in node splitting
TString fMinNodeSizeS
string containing min percentage of training events in node
std::vector< Double_t > fVariableImportance
the relative importance of the different variables
void GetHelpMessage() const override
Double_t GetMvaValue(Double_t *err=nullptr, Double_t *errUpper=nullptr) override
returns MVA value
Double_t PruneTree()
prune the decision tree if requested (good for individual trees that are best grown out,...
void DeclareCompatibilityOptions() override
options that are used ONLY for the READER to ensure backward compatibility
void ReadWeightsFromStream(std::istream &istr) override
Int_t GetNNodesBeforePruning()
Bool_t fRandomisedTrees
choose a random subset of possible cut variables at each node during training
DecisionTree * fTree
the decision tree
std::vector< Event * > fEventSample
the training events
Double_t GetPruneStrength()
void AddWeightsXMLTo(void *parent) const override
void Train(void) override
Bool_t HasAnalysisType(Types::EAnalysisType type, UInt_t numberClasses, UInt_t numberTargets) override
FDA can handle classification with 2 classes and regression with one regression-target.
Bool_t fPruneBeforeBoost
ancient variable, only needed for "CompatibilityOptions"
void SetMinNodeSize(Double_t sizeInPercent)
Int_t fNCuts
grid used in cut applied in node splitting
Double_t fPruneStrength
a parameter to set the "amount" of pruning..needs to be adjusted
TString fPruneMethodS
prune method option String
Int_t fMinNodeEvents
min number of events in node
Ranking for variables in method (implementation).
An interface to calculate the "SeparationGain" for different separation criteria used in various trai...
create variable transformations