TMVA::DataLoader loader("dataset");
loader.AddVariable("var1");
loader.AddVariable("var2");
loader.AddVariable("var3");
loader.AddVariable("var4");
// Load the data file
TFile* inputFile = TFile::Open("https://raw.githubusercontent.com/iml-wg/tmvatutorials/master/inputdata.root");
// Get signal and background data from input file
TTree *tsignal = (TTree*) inputFile->Get("Sig");
TTree *tbackground = (TTree*) inputFile->Get("Bkg");
// Register this data in the dataloader
loader.AddSignalTree(tsignal);
loader.AddBackgroundTree(tbackground);
loader.PrepareTrainingAndTestTree("",
"nTrain_Signal=1000:nTrain_Background=1000:SplitMode=Random:NormMode=NumEvents:!V");
DataSetInfo : [dataset] : Added class "Signal" : Add Tree Sig of type Signal with 6000 events DataSetInfo : [dataset] : Added class "Background" : Add Tree Bkg of type Background with 6000 events : Dataset[dataset] : Class index : 0 name : Signal : Dataset[dataset] : Class index : 1 name : Background
// Book boosted decision tree method
TMVA::CrossValidation cv(&loader);
cv.BookMethod(TMVA::Types::kBDT, "BDT",
"NTrees=10:MinNodeSize=2.5%:MaxDepth=2:nCuts=20");
// Run cross-validation
cv.Evaluate();
// Print results
TMVA::CrossValidationResult results = cv.GetResults();
results.Print();
: Evaluate method: BDT : Evaluation done. <HEADER> CrossValidation : ==== Results ==== : Fold 0 ROC-Int : 0.8732 : Fold 1 ROC-Int : 0.8589 : Fold 2 ROC-Int : 0.8592 : Fold 3 ROC-Int : 0.8614 : Fold 4 ROC-Int : 0.8567 : ------------------------ : Average ROC-Int : 0.8619 : Std-Dev ROC-Int : 0.0065