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< BinomialStatistics > discreteStatistics
 Statistics for split decision.

Vector< NormalStatistics > continuousStatistics
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