Main Page | Namespace List | Class Hierarchy | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages

CLUS::SimpleBinarySplitter Class Reference

Splitter for decision trees. More...

#include <simplebinarysplitter.h>


Public Member Functions

 SimpleBinarySplitter (const Vector< int > &DDomainSize, int CsplitDim)
 ~SimpleBinarySplitter (void)
int GetCSplitDim (void)
int GetDSplitDim (void)
const Vector< int > & GetDDomainSize (void)
void InitializeSplitStatistics (void)
 Initializes the datastructures used in split variable selection.

int ChooseBranch (const int *Dvars, const double *Cvars)
 0 is left and 1 right

void UpdateSplitStatistics (const int *Dvars, const double *Cvars, int classLabel)
bool ComputeSplitVariable (void)
int ComputeClassLabel (void)
bool MoreSplits (int minMass, int nodeId)
void SaveToStream (ostream &out)

Protected Attributes

int dsplitDim
 the number of discrete and continuous split variables

int csplitDim
 the number of discrete and continuous split variables

const Vector< int > & dDomainSize
 List of discrete domain sizes.

int SplitVariable
 Indicates on what variable this node splits on.

double splitPoint
 split point if continuous variable is split variable

Vector< int > SeparatingSet
 The list of values for the left child for the separating variable if the split is not oblique.

Vector< BinomialStatisticsdiscreteStatistics
 Statistics for split decision.

Vector< NormalStatisticscontinuousStatistics
int count
 statistics for class label determination

int countC0


Detailed Description

Splitter for decision trees.

Definition at line 45 of file simplebinarysplitter.h.


Constructor & Destructor Documentation

CLUS::SimpleBinarySplitter::SimpleBinarySplitter const Vector< int > &  DDomainSize,
int  CsplitDim
[inline]
 

Definition at line 77 of file simplebinarysplitter.h.

CLUS::SimpleBinarySplitter::~SimpleBinarySplitter void   )  [inline]
 

Definition at line 82 of file simplebinarysplitter.h.


Member Function Documentation

int CLUS::SimpleBinarySplitter::ChooseBranch const int *  Dvars,
const double *  Cvars
[inline]
 

0 is left and 1 right

Definition at line 114 of file simplebinarysplitter.h.

int CLUS::SimpleBinarySplitter::ComputeClassLabel void   )  [inline]
 

Definition at line 237 of file simplebinarysplitter.h.

bool CLUS::SimpleBinarySplitter::ComputeSplitVariable void   )  [inline]
 

Definition at line 167 of file simplebinarysplitter.h.

int CLUS::SimpleBinarySplitter::GetCSplitDim void   )  [inline]
 

Definition at line 85 of file simplebinarysplitter.h.

const Vector<int>& CLUS::SimpleBinarySplitter::GetDDomainSize void   )  [inline]
 

Definition at line 93 of file simplebinarysplitter.h.

int CLUS::SimpleBinarySplitter::GetDSplitDim void   )  [inline]
 

Definition at line 89 of file simplebinarysplitter.h.

void CLUS::SimpleBinarySplitter::InitializeSplitStatistics void   )  [inline]
 

Initializes the datastructures used in split variable selection.

Definition at line 99 of file simplebinarysplitter.h.

bool CLUS::SimpleBinarySplitter::MoreSplits int  minMass,
int  nodeId
[inline]
 

Definition at line 245 of file simplebinarysplitter.h.

void CLUS::SimpleBinarySplitter::SaveToStream ostream &  out  )  [inline]
 

Definition at line 250 of file simplebinarysplitter.h.

void CLUS::SimpleBinarySplitter::UpdateSplitStatistics const int *  Dvars,
const double *  Cvars,
int  classLabel
[inline]
 

Definition at line 137 of file simplebinarysplitter.h.


Field Documentation

Vector<NormalStatistics> CLUS::SimpleBinarySplitter::continuousStatistics [protected]
 

Definition at line 71 of file simplebinarysplitter.h.

Referenced by ComputeSplitVariable(), InitializeSplitStatistics(), and UpdateSplitStatistics().

int CLUS::SimpleBinarySplitter::count [protected]
 

statistics for class label determination

Definition at line 74 of file simplebinarysplitter.h.

Referenced by ComputeClassLabel(), ComputeSplitVariable(), InitializeSplitStatistics(), MoreSplits(), SaveToStream(), and UpdateSplitStatistics().

int CLUS::SimpleBinarySplitter::countC0 [protected]
 

Definition at line 75 of file simplebinarysplitter.h.

Referenced by ComputeClassLabel(), ComputeSplitVariable(), InitializeSplitStatistics(), MoreSplits(), and UpdateSplitStatistics().

int CLUS::SimpleBinarySplitter::csplitDim [protected]
 

the number of discrete and continuous split variables

Definition at line 49 of file simplebinarysplitter.h.

Referenced by ComputeSplitVariable(), GetCSplitDim(), InitializeSplitStatistics(), SimpleBinarySplitter(), and UpdateSplitStatistics().

const Vector<int>& CLUS::SimpleBinarySplitter::dDomainSize [protected]
 

List of discrete domain sizes.

Definition at line 53 of file simplebinarysplitter.h.

Referenced by GetDDomainSize(), InitializeSplitStatistics(), and SimpleBinarySplitter().

Vector<BinomialStatistics> CLUS::SimpleBinarySplitter::discreteStatistics [protected]
 

Statistics for split decision.

One for each attributeXdataset If an attribute already has the shift determined keep statistics about all datasets in the location for the first dataset

Definition at line 70 of file simplebinarysplitter.h.

Referenced by ComputeSplitVariable(), InitializeSplitStatistics(), and UpdateSplitStatistics().

int CLUS::SimpleBinarySplitter::dsplitDim [protected]
 

the number of discrete and continuous split variables

Definition at line 49 of file simplebinarysplitter.h.

Referenced by ComputeSplitVariable(), GetDSplitDim(), InitializeSplitStatistics(), SimpleBinarySplitter(), and UpdateSplitStatistics().

Vector<int> CLUS::SimpleBinarySplitter::SeparatingSet [protected]
 

The list of values for the left child for the separating variable if the split is not oblique.

Contains values in order so that binary search can be used.

Definition at line 64 of file simplebinarysplitter.h.

Referenced by ChooseBranch(), ComputeSplitVariable(), and SaveToStream().

double CLUS::SimpleBinarySplitter::splitPoint [protected]
 

split point if continuous variable is split variable

Definition at line 59 of file simplebinarysplitter.h.

Referenced by ChooseBranch(), ComputeSplitVariable(), and SaveToStream().

int CLUS::SimpleBinarySplitter::SplitVariable [protected]
 

Indicates on what variable this node splits on.

Definition at line 56 of file simplebinarysplitter.h.

Referenced by ChooseBranch(), ComputeSplitVariable(), and SaveToStream().


The documentation for this class was generated from the following file:
Generated on Mon Jul 21 16:57:52 2003 for SECRET by doxygen 1.3.2