mlpack
Static Public Member Functions | List of all members
mlpack::tree::InformationGain Class Reference

The standard information gain criterion, used for calculating gain in decision trees. More...

#include <information_gain.hpp>

Static Public Member Functions

template<bool UseWeights, typename CountType >
static double EvaluatePtr (const CountType *counts, const size_t countLength, const CountType totalCount)
 Evaluate the information gain given a vector of class weight counts.
 
template<bool UseWeights>
static double Evaluate (const arma::Row< size_t > &labels, const size_t numClasses, const arma::Row< double > &weights)
 Given a set of labels, calculate the information gain of those labels. More...
 
static double Range (const size_t numClasses)
 Return the range of the information gain for the given number of classes. More...
 

Detailed Description

The standard information gain criterion, used for calculating gain in decision trees.

Member Function Documentation

◆ Evaluate()

template<bool UseWeights>
static double mlpack::tree::InformationGain::Evaluate ( const arma::Row< size_t > &  labels,
const size_t  numClasses,
const arma::Row< double > &  weights 
)
inlinestatic

Given a set of labels, calculate the information gain of those labels.

Note that it is possible that due to floating-point representation issues, it is possible that the gain returned can be very slightly greater than 0! Thus, if you are checking for a perfect fit, be sure to use 'gain >= 0.0' not 'gain == 0.0'.

Parameters
labelsLabels of the dataset.
numClassesNumber of classes in the dataset.
weightsWeights associated with labels.

◆ Range()

static double mlpack::tree::InformationGain::Range ( const size_t  numClasses)
inlinestatic

Return the range of the information gain for the given number of classes.

(That is, the difference between the maximum possible value and the minimum possible value.)

Parameters
numClassesNumber of classes in the dataset.

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