Point Cloud Library (PCL)  1.14.0-dev
List of all members | Public Member Functions
pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex > Class Template Reference

Statistics estimator for regression trees which optimizes variance. More...

#include <pcl/ml/regression_variance_stats_estimator.h>

+ Inheritance diagram for pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >:
+ Collaboration diagram for pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >:

Public Member Functions

 RegressionVarianceStatsEstimator (BranchEstimator *branch_estimator)
 Constructor. More...
 
std::size_t getNumOfBranches () const
 Returns the number of branches the corresponding tree has. More...
 
LabelDataType getLabelOfNode (NodeType &node) const
 Returns the label of the specified node. More...
 
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
 Computes the information gain obtained by the specified threshold. More...
 
void computeBranchIndices (std::vector< float > &results, std::vector< unsigned char > &flags, const float threshold, std::vector< unsigned char > &branch_indices) const
 Computes the branch indices for all supplied results. More...
 
void computeBranchIndex (const float result, const unsigned char flag, const float threshold, unsigned char &branch_index) const
 Computes the branch index for the specified result. More...
 
void computeAndSetNodeStats (DataSet &data_set, std::vector< ExampleIndex > &examples, std::vector< LabelDataType > &label_data, NodeType &node) const
 Computes and sets the statistics for a node. More...
 
void generateCodeForBranchIndexComputation (NodeType &node, std::ostream &stream) const
 Generates code for branch index computation. More...
 
void generateCodeForOutput (NodeType &node, std::ostream &stream) const
 Generates code for label output. More...
 
- Public Member Functions inherited from pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >
virtual ~StatsEstimator ()=default
 Destructor. More...
 

Detailed Description

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

Statistics estimator for regression trees which optimizes variance.

Definition at line 123 of file regression_variance_stats_estimator.h.

Constructor & Destructor Documentation

◆ RegressionVarianceStatsEstimator()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >
pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::RegressionVarianceStatsEstimator ( BranchEstimator branch_estimator)
inline

Constructor.

Definition at line 127 of file regression_variance_stats_estimator.h.

Member Function Documentation

◆ computeAndSetNodeStats()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >
void pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeAndSetNodeStats ( DataSet &  data_set,
std::vector< ExampleIndex > &  examples,
std::vector< LabelDataType > &  label_data,
NodeType &  node 
) const
inlinevirtual

Computes and sets the statistics for a node.

Parameters
[in]data_setthe data set which is evaluated
[in]examplesthe examples which define which parts of the data set are use for evaluation
[in]label_datathe label_data corresponding to the examples
[out]nodethe destination node for the statistics

Implements pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Definition at line 270 of file regression_variance_stats_estimator.h.

◆ computeBranchIndex()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >
void pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeBranchIndex ( const float  result,
const unsigned char  flag,
const float  threshold,
unsigned char &  branch_index 
) const
inlinevirtual

Computes the branch index for the specified result.

Parameters
[in]resultthe result the branch index will be computed for
[in]flagthe flag corresponding to the specified result
[in]thresholdthe threshold used to compute the branch index
[out]branch_indexthe destination for the computed branch index

Implements pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Definition at line 252 of file regression_variance_stats_estimator.h.

◆ computeBranchIndices()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >
void pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeBranchIndices ( std::vector< float > &  results,
std::vector< unsigned char > &  flags,
const float  threshold,
std::vector< unsigned char > &  branch_indices 
) const
inlinevirtual

Computes the branch indices for all supplied results.

Parameters
[in]resultsthe results the branch indices will be computed for
[in]flagsthe flags corresponding to the specified results
[in]thresholdthe threshold used to compute the branch indices
[out]branch_indicesthe destination for the computed branch indices

Implements pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Definition at line 227 of file regression_variance_stats_estimator.h.

◆ computeInformationGain()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >
float pcl::RegressionVarianceStatsEstimator< 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
inlinevirtual

Computes the information gain obtained by the specified threshold.

Parameters
[in]data_setthe data set corresponding to the supplied result data
[in]examplesthe examples used for extracting the supplied result data
[in]label_datathe label data corresponding to the specified examples
[in]resultsthe results computed using the specified examples
[in]flagsthe flags corresponding to the results
[in]thresholdthe threshold for which the information gain is computed

Implements pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Definition at line 159 of file regression_variance_stats_estimator.h.

◆ generateCodeForBranchIndexComputation()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >
void pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::generateCodeForBranchIndexComputation ( NodeType &  node,
std::ostream &  stream 
) const
inlinevirtual

Generates code for branch index computation.

Parameters
[in]nodethe node for which code is generated
[out]streamthe destination for the generated code

Implements pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Definition at line 302 of file regression_variance_stats_estimator.h.

◆ generateCodeForOutput()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >
void pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::generateCodeForOutput ( NodeType &  node,
std::ostream &  stream 
) const
inlinevirtual

Generates code for label output.

Parameters
[in]nodethe node for which code is generated
[out]streamthe destination for the generated code

Implements pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Definition at line 314 of file regression_variance_stats_estimator.h.

◆ getLabelOfNode()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >
LabelDataType pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::getLabelOfNode ( NodeType &  node) const
inlinevirtual

Returns the label of the specified node.

Parameters
[in]nodethe node which label is returned

Implements pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Definition at line 144 of file regression_variance_stats_estimator.h.

◆ getNumOfBranches()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >
std::size_t pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::getNumOfBranches ( ) const
inlinevirtual

Returns the number of branches the corresponding tree has.

Implements pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Definition at line 133 of file regression_variance_stats_estimator.h.


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