Belle II Software  release-08-01-10
FastBDTOptions Class Reference

Options for the FANN MVA method. More...

#include <FastBDT.h>

Inheritance diagram for FastBDTOptions:
Collaboration diagram for FastBDTOptions:

Public Member Functions

virtual void load (const boost::property_tree::ptree &pt) override
 Load mechanism to load Options from a xml tree. More...
 
virtual void save (boost::property_tree::ptree &pt) const override
 Save mechanism to store Options in a xml tree. More...
 
virtual po::options_description getDescription () override
 Returns a program options description for all available options.
 
virtual std::string getMethod () const override
 Return method name.
 

Public Attributes

unsigned int m_nTrees = 200
 Number of trees.
 
unsigned int m_nCuts = 8
 Number of cut Levels = log_2(Number of Cuts)
 
unsigned int m_nLevels = 3
 Depth of tree.
 
double m_shrinkage = 0.1
 Shrinkage during the boosting step.
 
double m_randRatio = 0.5
 Fraction of data to use in the stochastic training.
 

Detailed Description

Options for the FANN MVA method.

Definition at line 53 of file FastBDT.h.

Member Function Documentation

◆ load()

void load ( const boost::property_tree::ptree &  pt)
overridevirtual

Load mechanism to load Options from a xml tree.

Parameters
ptxml tree

Implements Options.

Definition at line 53 of file FastBDT.cc.

54  {
55  int version = pt.get<int>("FastBDT_version");
56 #if FastBDT_VERSION_MAJOR >= 5
57  if (version != 1 and version != 2) {
58  B2ERROR("Unknown weightfile version " << std::to_string(version));
59  throw std::runtime_error("Unknown weightfile version " + std::to_string(version));
60  }
61 #else
62  if (version != 1) {
63  B2ERROR("Unknown weightfile version " << std::to_string(version));
64  throw std::runtime_error("Unknown weightfile version " + std::to_string(version));
65  }
66 #endif
67  m_nTrees = pt.get<int>("FastBDT_nTrees");
68  m_nCuts = pt.get<int>("FastBDT_nCuts");
69  m_nLevels = pt.get<int>("FastBDT_nLevels");
70  m_shrinkage = pt.get<double>("FastBDT_shrinkage");
71  m_randRatio = pt.get<double>("FastBDT_randRatio");
72 
73 #if FastBDT_VERSION_MAJOR >= 5
74  if (version > 1) {
75 
76  m_flatnessLoss = pt.get<double>("FastBDT_flatnessLoss");
77  m_sPlot = pt.get<bool>("FastBDT_sPlot");
78 
79  unsigned int numberOfIndividualNCuts = pt.get<unsigned int>("FastBDT_number_individual_nCuts", 0);
80  m_individual_nCuts.resize(numberOfIndividualNCuts);
81  for (unsigned int i = 0; i < numberOfIndividualNCuts; ++i) {
82  m_individual_nCuts[i] = pt.get<unsigned int>(std::string("FastBDT_individual_nCuts") + std::to_string(i));
83  }
84 
85  m_purityTransformation = pt.get<bool>("FastBDT_purityTransformation");
86  unsigned int numberOfIndividualPurityTransformation = pt.get<unsigned int>("FastBDT_number_individualPurityTransformation", 0);
87  m_individualPurityTransformation.resize(numberOfIndividualPurityTransformation);
88  for (unsigned int i = 0; i < numberOfIndividualPurityTransformation; ++i) {
89  m_individualPurityTransformation[i] = pt.get<bool>(std::string("FastBDT_individualPurityTransformation") + std::to_string(i));
90  }
91 
92  } else {
93  m_flatnessLoss = -1.0;
94  m_sPlot = false;
95  }
96 #endif
97  }
double m_randRatio
Fraction of data to use in the stochastic training.
Definition: FastBDT.h:82
double m_shrinkage
Shrinkage during the boosting step.
Definition: FastBDT.h:81
unsigned int m_nLevels
Depth of tree.
Definition: FastBDT.h:80
unsigned int m_nCuts
Number of cut Levels = log_2(Number of Cuts)
Definition: FastBDT.h:79
unsigned int m_nTrees
Number of trees.
Definition: FastBDT.h:78

◆ save()

void save ( boost::property_tree::ptree &  pt) const
overridevirtual

Save mechanism to store Options in a xml tree.

Parameters
ptxml tree

Implements Options.

Definition at line 99 of file FastBDT.cc.


The documentation for this class was generated from the following files: