Loading...
Searching...
No Matches
pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex > Class Template Referenceabstract

Class interface for gathering statistics for decision tree learning. More...

`#include <pcl/ml/stats_estimator.h>`

Inheritance diagram for pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >:

## Public Member Functions

virtual | ~StatsEstimator ()=default
| Destructor.
virtual std::size_t | getNumOfBranches () const =0
| Returns the number of branches a node can have (e.g.
virtual void | computeAndSetNodeStats (DataSet &data_set, std::vector< ExampleIndex > &examples, std::vector< LabelDataType > &label_data, NodeType &node) const =0
| Computes and sets the statistics for a node.
virtual LabelDataType | getLabelOfNode (NodeType &node) const =0
| Returns the label of the specified node.
virtual float | computeInformationGain (DataSet &data_set, std::vector< ExampleIndex > &examples, std::vector< LabelDataType > &label_data, std::vector< float > &results, std::vector< unsigned char > &flags, const float threshold) const =0
| Computes the information gain obtained by the specified threshold on the supplied feature evaluation results.
virtual void | computeBranchIndices (std::vector< float > &results, std::vector< unsigned char > &flags, const float threshold, std::vector< unsigned char > &branch_indices) const =0
| Computes the branch indices obtained by the specified threshold on the supplied feature evaluation results.
virtual void | computeBranchIndex (const float result, const unsigned char flag, const float threshold, unsigned char &branch_index) const =0
| Computes the branch indices obtained by the specified threshold on the supplied feature evaluation results.
virtual void | generateCodeForBranchIndexComputation (NodeType &node, std::ostream &stream) const =0
| Generates code for computing the branch indices for the specified node and writes it to the specified stream.
virtual void | generateCodeForOutput (NodeType &node, std::ostream &stream) const =0
| Generates code for computing the output for the specified node and writes it to the specified stream.

## Detailed Description

template<class LabelDataType, class NodeType, class DataSet, class ExampleIndex>
class pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >

Class interface for gathering statistics for decision tree learning.

Definition at line 49 of file stats_estimator.h.

## Constructor & Destructor Documentation

## ~StatsEstimator()

template<class LabelDataType, class NodeType, class DataSet, class ExampleIndex>

virtual pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::~StatsEstimator | ( |  | ) |

virtual default

Destructor.

## Member Function Documentation

## computeAndSetNodeStats()

template<class LabelDataType, class NodeType, class DataSet, class ExampleIndex>

virtual void pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeAndSetNodeStats | ( | DataSet & | data_set,
|  | std::vector< ExampleIndex > & | examples,
|  | std::vector< LabelDataType > & | label_data,
|  | NodeType & | node ) const

pure virtual

Computes and sets the statistics for a node.

Parameters

  [in] | data_set | the data set used for training
  [in] | examples | the examples used for computing the statistics for the specified node
  [in] | label_data | the labels corresponding to the examples
  [out] | node | The destination node for the statistics

Implemented in pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >, and pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

## computeBranchIndex()

template<class LabelDataType, class NodeType, class DataSet, class ExampleIndex>

virtual void pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeBranchIndex | ( | const float | result,
|  | const unsigned char | flag,
|  | const float | threshold,
|  | unsigned char & | branch_index ) const

pure virtual

Computes the branch indices obtained by the specified threshold on the supplied feature evaluation results.

Parameters

  [in] | result | the result obtained from the feature evaluation
  [in] | flag | the flag obtained together with the result
  [in] | threshold | the threshold which is used to compute the branch index
  [out] | branch_index | the destination for the computed branch index

Implemented in pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >, and pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Referenced by pcl::DecisionTreeEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::evaluate(), pcl::DecisionTreeEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::evaluate(), pcl::DecisionTreeEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::evaluateAndAdd(), and pcl::DecisionTreeEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::getNodes().

## computeBranchIndices()

template<class LabelDataType, class NodeType, class DataSet, class ExampleIndex>

virtual void pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeBranchIndices | ( | std::vector< float > & | results,
|  | std::vector< unsigned char > & | flags,
|  | const float | threshold,
|  | std::vector< unsigned char > & | branch_indices ) const

pure virtual

Computes the branch indices obtained by the specified threshold on the supplied feature evaluation results.

Parameters

  [in] | results | the results obtained from the feature evaluation
  [in] | flags | the flags obtained together with the results.
  [in] | threshold | the threshold which is used to compute the branch indices
  [out] | branch_indices | the destination for the computed branch indices.

Implemented in pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >, and pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Referenced by pcl::FernEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::evaluate(), pcl::FernEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::evaluateAndAdd(), and pcl::FernEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::getNodes().

## computeInformationGain()

template<class LabelDataType, class NodeType, class DataSet, class ExampleIndex>

virtual float pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeInformationGain | ( | DataSet & | data_set,
|  | std::vector< ExampleIndex > & | examples,
|  | std::vector< LabelDataType > & | label_data,
|  | std::vector< float > & | results,
|  | std::vector< unsigned char > & | flags,
|  | const float | threshold ) const

pure virtual

Computes the information gain obtained by the specified threshold on the supplied feature evaluation results.

Parameters

  [in] | data_set | the data set used for extracting the supplied result values.
  [in] | examples | the examples used to extract the supplied result values
  [in] | label_data | the labels corresponding to the examples
  [in] | results | the results obtained from the feature evaluation
  [in] | flags | the flags obtained together with the results
  [in] | threshold | the threshold which is used to compute the information gain

Implemented in pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >, and pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

## generateCodeForBranchIndexComputation()

template<class LabelDataType, class NodeType, class DataSet, class ExampleIndex>

virtual void pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::generateCodeForBranchIndexComputation | ( | NodeType & | node,
|  | std::ostream & | stream ) const

pure virtual

Generates code for computing the branch indices for the specified node and writes it to the specified stream.

Parameters

  [in] | node | the node for which the branch index estimation code is generated
  [out] | stream | the destination for the code

Implemented in pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >, and pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

## generateCodeForOutput()

template<class LabelDataType, class NodeType, class DataSet, class ExampleIndex>

virtual void pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::generateCodeForOutput | ( | NodeType & | node,
|  | std::ostream & | stream ) const

pure virtual

Generates code for computing the output for the specified node and writes it to the specified stream.

Parameters

  [in] | node | the node for which the output estimation code is generated
  [out] | stream | the destination for the code

Implemented in pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >, and pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

## getLabelOfNode()

template<class LabelDataType, class NodeType, class DataSet, class ExampleIndex>

virtual LabelDataType pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::getLabelOfNode | ( | NodeType & | node | ) | const

pure virtual

Returns the label of the specified node.

Parameters

  [in] | node | The node from which the label is extracted

Implemented in pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >, and pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Referenced by pcl::DecisionTreeEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::evaluate(), pcl::FernEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::evaluate(), pcl::DecisionTreeEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::evaluateAndAdd(), and pcl::FernEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::evaluateAndAdd().

## getNumOfBranches()

template<class LabelDataType, class NodeType, class DataSet, class ExampleIndex>

virtual std::size_t pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::getNumOfBranches | ( |  | ) | const

pure virtual

Returns the number of branches a node can have (e.g.

a binary tree has 2).

Implemented in pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >, and pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Referenced by pcl::FernEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::evaluate(), pcl::FernEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::evaluateAndAdd(), and pcl::FernEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::getNodes().

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

- pcl/ml/stats_estimator.h