Returns a program options description for all available options.
127 {
128 po::options_description description("FastBDT options");
129 description.add_options()
130 (
"nTrees", po::value<unsigned int>(&
m_nTrees),
"Number of trees in the forest. Reasonable values are between 10 and 1000")
131 (
"nLevels", po::value<unsigned int>(&
m_nLevels)->notifier(check_bounds<unsigned int>(0, 20,
"nLevels")),
132 "Depth d of trees. The last layer of the tree will contain 2^d bins. Maximum is 20. Reasonable values are 2 and 6.")
133 (
"shrinkage", po::value<double>(&
m_shrinkage)->notifier(check_bounds<double>(0.0, 1.0,
"shrinkage")),
134 "Shrinkage of the boosting algorithm. Reasonable values are between 0.01 and 1.0.")
135 (
"nCutLevels", po::value<unsigned int>(&
m_nCuts)->notifier(check_bounds<unsigned int>(0, 20,
"nCutLevels")),
136 "Number of cut levels N per feature. 2^N Bins will be used per feature. Reasonable values are between 6 and 12.")
137#if FastBDT_VERSION_MAJOR >= 5
138 ("individualNCutLevels", po::value<std::vector<unsigned int>>(&m_individual_nCuts)->multitoken()->notifier(
139 check_bounds_vector<unsigned int>(0, 20, "individualNCutLevels")),
140 "Number of cut levels N per feature. 2^N Bins will be used per feature. Reasonable values are between 6 and 12. One value per feature (including spectators) should be provided, if parameter is not set the global value specified by nCutLevels is used for all features.")
141 ("sPlot", po::value<bool>(&m_sPlot),
142 "Since in sPlot each event enters twice, this option modifies the sampling algorithm so that the matching signal and background events are selected together.")
143 ("flatnessLoss", po::value<double>(&m_flatnessLoss),
144 "Activate Flatness Loss, all spectator variables are assumed to be variables in which the signal and background efficiency should be flat. negative values deactivates flatness loss.")
145 ("purityTransformation", po::value<bool>(&m_purityTransformation),
146 "Activates purity transformation on all features: Add the purity transformed of all features in addition to the training. This will double the number of features and slow down the inference considerably")
147 ("individualPurityTransformation", po::value<std::vector<bool>>(&m_individualPurityTransformation)->multitoken(),
148 "Activates purity transformation for each feature: Vector of boolean values which decide if the purity transformed of the feature should be added in addition to this training.")
149#endif
150 (
"randRatio", po::value<double>(&
m_randRatio)->notifier(check_bounds<double>(0.0, 1.0001,
"randRatio")),
151 "Fraction of the data sampled each training iteration. Reasonable values are between 0.1 and 1.0.");
152 return description;
153 }
double m_randRatio
Fraction of data to use in the stochastic training.
double m_shrinkage
Shrinkage during the boosting step.
unsigned int m_nLevels
Depth of tree.
unsigned int m_nCuts
Number of cut Levels = log_2(Number of Cuts)
unsigned int m_nTrees
Number of trees.