Logo ROOT   6.18/05
Reference Guide
HyperParameterOptimisation.h
Go to the documentation of this file.
1// @(#)root/tmva $Id$
2// Author: Omar Zapata, Thomas James Stevenson.
3
4
5#ifndef ROOT_TMVA_HyperParameterOptimisation
6#define ROOT_TMVA_HyperParameterOptimisation
7
8
9#include "TString.h"
10
11#include "TMultiGraph.h"
12
13#include "TMVA/IMethod.h"
14#include "TMVA/Configurable.h"
15#include "TMVA/Types.h"
16#include "TMVA/DataSet.h"
17#include "TMVA/Event.h"
18#include <TMVA/Results.h>
19
20#include <TMVA/Factory.h>
21
22#include <TMVA/DataLoader.h>
23
24#include <TMVA/Envelope.h>
25
26namespace TMVA {
27
29 {
31 private:
33 std::vector<Float_t> fROCs;
34 std::vector<Double_t> fSigs;
35 std::vector<Double_t> fSeps;
36 std::vector<Double_t> fEff01s;
37 std::vector<Double_t> fEff10s;
38 std::vector<Double_t> fEff30s;
39 std::vector<Double_t> fEffAreas;
40 std::vector<Double_t> fTrainEff01s;
41 std::vector<Double_t> fTrainEff10s;
42 std::vector<Double_t> fTrainEff30s;
43 std::shared_ptr<TMultiGraph> fROCCurves;
45
46 public:
49
50 std::vector<std::map<TString,Double_t> > fFoldParameters;
51
52 std::vector<Float_t> GetROCValues(){return fROCs;}
55
56 void Print() const ;
57// TCanvas* Draw(const TString name="HyperParameterOptimisation") const;
58
59 std::vector<Double_t> GetSigValues(){return fSigs;}
60 std::vector<Double_t> GetSepValues(){return fSeps;}
61 std::vector<Double_t> GetEff01Values(){return fEff01s;}
62 std::vector<Double_t> GetEff10Values(){return fEff10s;}
63 std::vector<Double_t> GetEff30Values(){return fEff30s;}
64 std::vector<Double_t> GetEffAreaValues(){return fEffAreas;}
65 std::vector<Double_t> GetTrainEff01Values(){return fTrainEff01s;}
66 std::vector<Double_t> GetTrainEff10Values(){return fTrainEff10s;}
67 std::vector<Double_t> GetTrainEff30Values(){return fTrainEff30s;}
68
69 };
70
72 public:
73
76
77 void SetFitter(TString fitType){fFitType=fitType;}
79
80
81 //Figure of Merit (FOM) default Separation
82 void SetFOMType(TString ftype){fFomType=ftype;}
84
85 void SetNumFolds(UInt_t folds);
87
88 virtual void Evaluate();
90
91
92 private:
98 std::unique_ptr<Factory> fClassifier; //!
99
100 public:
102 };
103}
104
105
106#endif
107
108
109
unsigned int UInt_t
Definition: RtypesCore.h:42
bool Bool_t
Definition: RtypesCore.h:59
float Float_t
Definition: RtypesCore.h:53
const Bool_t kTRUE
Definition: RtypesCore.h:87
#define ClassDef(name, id)
Definition: Rtypes.h:326
Abstract base class for all high level ml algorithms, you can book ml methods like BDT,...
Definition: Envelope.h:44
TMultiGraph * GetROCCurves(Bool_t fLegend=kTRUE)
std::vector< std::map< TString, Double_t > > fFoldParameters
virtual void Evaluate()
Virtual method to be implemented with your algorithm.
HyperParameterOptimisation(DataLoader *dataloader)
const HyperParameterOptimisationResult & GetResults() const
HyperParameterOptimisationResult fResults
A TMultiGraph is a collection of TGraph (or derived) objects.
Definition: TMultiGraph.h:35
Basic string class.
Definition: TString.h:131
create variable transformations