Point Cloud Library (PCL) 1.12.0
|
Trainer for decision trees. More...
#include <pcl/ml/dt/decision_tree_trainer.h>
Public Member Functions | |
DecisionTreeTrainer () | |
Constructor. | |
virtual | ~DecisionTreeTrainer () |
Destructor. | |
void | setFeatureHandler (pcl::FeatureHandler< FeatureType, DataSet, ExampleIndex > &feature_handler) |
Sets the feature handler used to create and evaluate features. | |
void | setStatsEstimator (pcl::StatsEstimator< LabelType, NodeType, DataSet, ExampleIndex > &stats_estimator) |
Sets the object for estimating the statistics for tree nodes. | |
void | setMaxTreeDepth (const std::size_t max_tree_depth) |
Sets the maximum depth of the learned tree. | |
void | setNumOfFeatures (const std::size_t num_of_features) |
Sets the number of features used to find optimal decision features. | |
void | setNumOfThresholds (const std::size_t num_of_threshold) |
Sets the number of thresholds tested for finding the optimal decision threshold on the feature responses. | |
void | setTrainingDataSet (DataSet &data_set) |
Sets the input data set used for training. | |
void | setExamples (std::vector< ExampleIndex > &examples) |
Example indices that specify the data used for training. | |
void | setLabelData (std::vector< LabelType > &label_data) |
Sets the label data corresponding to the example data. | |
void | setMinExamplesForSplit (std::size_t n) |
Sets the minimum number of examples to continue growing a tree. | |
void | setThresholds (std::vector< float > &thres) |
Specify the thresholds to be used when evaluating features. | |
void | setDecisionTreeDataProvider (typename pcl::DecisionTreeTrainerDataProvider< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::Ptr &dtdp) |
Specify the data provider. | |
void | setRandomFeaturesAtSplitNode (bool b) |
Specify if the features are randomly generated at each split node. | |
void | train (DecisionTree< NodeType > &tree) |
Trains a decision tree using the set training data and settings. | |
Protected Member Functions | |
void | trainDecisionTreeNode (std::vector< FeatureType > &features, std::vector< ExampleIndex > &examples, std::vector< LabelType > &label_data, std::size_t max_depth, NodeType &node) |
Trains a decision tree node from the specified features, label data, and examples. | |
Static Protected Member Functions | |
static void | createThresholdsUniform (const std::size_t num_of_thresholds, std::vector< float > &values, std::vector< float > &thresholds) |
Creates uniformely distrebuted thresholds over the range of the supplied values. | |
Trainer for decision trees.
Definition at line 56 of file decision_tree_trainer.h.
pcl::DecisionTreeTrainer< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::DecisionTreeTrainer | ( | ) |
Constructor.
Definition at line 47 of file decision_tree_trainer.hpp.
|
virtual |
Destructor.
Definition at line 66 of file decision_tree_trainer.hpp.
|
staticprotected |
Creates uniformely distrebuted thresholds over the range of the supplied values.
[in] | num_of_thresholds | the number of thresholds to create |
[in] | values | the values for estimating the expected value range |
[out] | thresholds | the resulting thresholds |
Definition at line 277 of file decision_tree_trainer.hpp.
References pcl::ConstCloudIterator< PointT >::ConstCloudIterator().
|
inline |
Specify the data provider.
[in] | dtdp | the data provider that should implement getDatasetAndLabels() function |
Definition at line 174 of file decision_tree_trainer.h.
|
inline |
Example indices that specify the data used for training.
[in] | examples | the examples |
Definition at line 133 of file decision_tree_trainer.h.
|
inline |
Sets the feature handler used to create and evaluate features.
[in] | feature_handler | the feature handler |
Definition at line 70 of file decision_tree_trainer.h.
|
inline |
Sets the label data corresponding to the example data.
[in] | label_data | the label data |
Definition at line 143 of file decision_tree_trainer.h.
|
inline |
Sets the maximum depth of the learned tree.
[in] | max_tree_depth | maximum depth of the learned tree |
Definition at line 92 of file decision_tree_trainer.h.
|
inline |
Sets the minimum number of examples to continue growing a tree.
[in] | n | number of examples |
Definition at line 153 of file decision_tree_trainer.h.
|
inline |
Sets the number of features used to find optimal decision features.
[in] | num_of_features | the number of features |
Definition at line 102 of file decision_tree_trainer.h.
|
inline |
Sets the number of thresholds tested for finding the optimal decision threshold on the feature responses.
[in] | num_of_threshold | the number of thresholds |
Definition at line 113 of file decision_tree_trainer.h.
|
inline |
Specify if the features are randomly generated at each split node.
[in] | b | do it or not |
Definition at line 189 of file decision_tree_trainer.h.
|
inline |
Sets the object for estimating the statistics for tree nodes.
[in] | stats_estimator | the statistics estimator |
Definition at line 81 of file decision_tree_trainer.h.
|
inline |
Specify the thresholds to be used when evaluating features.
[in] | thres | the threshold values |
Definition at line 163 of file decision_tree_trainer.h.
|
inline |
Sets the input data set used for training.
[in] | data_set | the data set used for training |
Definition at line 123 of file decision_tree_trainer.h.
void pcl::DecisionTreeTrainer< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::train | ( | pcl::DecisionTree< NodeType > & | tree | ) |
Trains a decision tree using the set training data and settings.
[out] | tree | destination for the trained tree |
Definition at line 76 of file decision_tree_trainer.hpp.
References pcl::ConstCloudIterator< PointT >::ConstCloudIterator().
|
protected |
Trains a decision tree node from the specified features, label data, and examples.
[in] | features | the feature pool used for training |
[in] | examples | the examples used for training |
[in] | label_data | the label data corresponding to the examples |
[in] | max_depth | the maximum depth of the remaining tree |
[out] | node | the resulting node |
Definition at line 112 of file decision_tree_trainer.hpp.
References pcl::ConstCloudIterator< PointT >::ConstCloudIterator(), and pcl::ConstCloudIterator< PointT >::size().