#include <binarymulticlassificationsplitter.h>
Collaboration diagram for CLUS::BinaryMultiClassificationSplitter:
Public Member Functions | |
BinaryMultiClassificationSplitter (const Vector< int > &DDomainSize, int CsplitDim, int NoDatasets, DiscretePermutationTransformation &DiscreteTransformer, ContinuousLinearTransformation &ContinuousTransformer) | |
~BinaryMultiClassificationSplitter (void) | |
void | setNodeID (int ID) |
bool | GotNoData (void) |
int | GetCSplitDim (void) |
int | GetDSplitDim (void) |
int | GetNoDatasets (void) |
const Vector< int > & | GetDDomainSize (void) |
double | getLabeledCount (int attribute, int dataSetIndex, bool b) |
DiscretePermutationTransformation & | GetDiscreteTransformer (void) |
ContinuousLinearTransformation & | GetContinuousTransformer (void) |
void | InitializeSplitStatistics (void) |
Initializes the datastructures used in split variable selection. | |
int | ChooseBranch (const int *Dvars, const double *Cvars) |
Choose a branch. | |
void | UpdateSplitStatistics (const int *Dvars, const double *Cvars, int classLabel, int datasetNo) |
Update split stats with new data. | |
bool | labeledMeansSignificant (int attribute, int dataSetIndex) |
bool | negMeanLessThanPos (int attribute, int dataSetIndex) |
bool | hasContinuousData (int attribute, int dataSetIndex) |
void | DeleteTemporaryStatistics (void) |
bool | ComputeSplitVariable (list< int > &attList) |
Computes the split variable. | |
Permutation | ComputeDiscreteShift (bool label, int attribute, int datasetIndex) |
void | AddDiscreteShiftStatistics (int SplitAttribute, double weight, Vector< BinomialStatistics > &statistics) |
void | ComputeCenter (void) |
double | getLabeledCenter (int attribute, int dataSetIndex, bool b) |
double | getLabeledCenterVariance (int attribute, int dataSetIndex, bool b) |
double | getVariance (int attribute, int dataSetIndex) |
double | getSplitVariance (int attribute, int dataSetIndex) |
For continuous attributes only. | |
double | getTentativeSplitPoint (int attribute, int dataSetIndex) |
For continuous attributes not chosen as split attribute at current node. | |
double | getTentativeCenter (int attribute, int dataSetIndex) |
void | ComputeSplitPoint (void) |
int | ComputeClassLabel (void) |
double | getContinuousShift (int attribute, int dataSetIndex) |
bool | MoreSplits (int min_no_datapoints, int nodeID) |
void | SaveToStream (ostream &out, bool isLeaf) |
Private Attributes | |
int | dsplitDim |
number of discrete split variables | |
int | csplitDim |
number of continuous split variables | |
int | id |
id of owner node | |
bool | noWeighting |
int | noDatasets |
const Vector< int > & | dDomainSize |
int | SplitVariable |
indicates on what variable this node splits on | |
double | splitPoint |
Vector< int > | SeparatingSet |
The list of values for the left child for the separating variable if the split is not oblique. | |
DiscretePermutationTransformation & | discreteTransformer |
ContinuousLinearTransformation & | continuousTransformer |
Vector< Vector< BinomialStatistics > > | discreteStatistics |
Statistics for split decision. | |
Vector< Vector< NormalStatistics > > | continuousStatistics |
Vector< Vector< Permutation > > | discreteShifts |
one per attribute | |
Vector< Vector< double > > | continuousShifts |
one per attribute | |
Vector< int > | examplesSeen |
Vector< int > | examples0Seen |
int | count |
statistics for class label determination | |
int | countC0 |
|
Definition at line 96 of file binarymulticlassificationsplitter.h. |
|
Definition at line 108 of file binarymulticlassificationsplitter.h. |
|
Definition at line 429 of file binarymulticlassificationsplitter.h. |
|
Choose a branch.
Definition at line 201 of file binarymulticlassificationsplitter.h. |
|
Definition at line 451 of file binarymulticlassificationsplitter.h. |
|
Definition at line 576 of file binarymulticlassificationsplitter.h. Referenced by SaveToStream(). |
|
Definition at line 421 of file binarymulticlassificationsplitter.h. |
|
Definition at line 538 of file binarymulticlassificationsplitter.h. |
|
Computes the split variable. If the variable needs a shift (doesn't have one already) add the variable to the attList
Definition at line 307 of file binarymulticlassificationsplitter.h. |
|
Definition at line 295 of file binarymulticlassificationsplitter.h. |
|
Definition at line 584 of file binarymulticlassificationsplitter.h. |
|
Definition at line 153 of file binarymulticlassificationsplitter.h. |
|
Definition at line 120 of file binarymulticlassificationsplitter.h. |
|
Definition at line 135 of file binarymulticlassificationsplitter.h. |
|
Definition at line 148 of file binarymulticlassificationsplitter.h. |
|
Definition at line 125 of file binarymulticlassificationsplitter.h. |
|
Definition at line 492 of file binarymulticlassificationsplitter.h. |
|
Definition at line 497 of file binarymulticlassificationsplitter.h. |
|
Definition at line 140 of file binarymulticlassificationsplitter.h. |
|
Definition at line 130 of file binarymulticlassificationsplitter.h. |
|
For continuous attributes only.
Definition at line 511 of file binarymulticlassificationsplitter.h. |
|
Definition at line 532 of file binarymulticlassificationsplitter.h. |
|
For continuous attributes not chosen as split attribute at current node.
Definition at line 522 of file binarymulticlassificationsplitter.h. |
|
Definition at line 502 of file binarymulticlassificationsplitter.h. |
|
Definition at line 115 of file binarymulticlassificationsplitter.h. |
|
Definition at line 290 of file binarymulticlassificationsplitter.h. |
|
Initializes the datastructures used in split variable selection.
Definition at line 159 of file binarymulticlassificationsplitter.h. |
|
Definition at line 280 of file binarymulticlassificationsplitter.h. |
|
Definition at line 589 of file binarymulticlassificationsplitter.h. |
|
Definition at line 285 of file binarymulticlassificationsplitter.h. |
|
Definition at line 595 of file binarymulticlassificationsplitter.h. |
|
Definition at line 110 of file binarymulticlassificationsplitter.h. |
|
Update split stats with new data.
Definition at line 249 of file binarymulticlassificationsplitter.h. |
|
one per attribute
Definition at line 86 of file binarymulticlassificationsplitter.h. Referenced by BinaryMultiClassificationSplitter(). |
|
|
Definition at line 73 of file binarymulticlassificationsplitter.h. Referenced by BinaryMultiClassificationSplitter(), ComputeCenter(), ComputeSplitPoint(), ComputeSplitVariable(), getContinuousShift(), GetContinuousTransformer(), InitializeSplitStatistics(), and UpdateSplitStatistics(). |
|
statistics for class label determination
Definition at line 92 of file binarymulticlassificationsplitter.h. Referenced by ComputeClassLabel(), ComputeSplitVariable(), GotNoData(), InitializeSplitStatistics(), MoreSplits(), and UpdateSplitStatistics(). |
|
Definition at line 93 of file binarymulticlassificationsplitter.h. Referenced by ComputeClassLabel(), ComputeSplitVariable(), InitializeSplitStatistics(), MoreSplits(), and UpdateSplitStatistics(). |
|
number of continuous split variables
Definition at line 50 of file binarymulticlassificationsplitter.h. Referenced by BinaryMultiClassificationSplitter(), ComputeSplitVariable(), GetCSplitDim(), InitializeSplitStatistics(), and UpdateSplitStatistics(). |
|
Definition at line 59 of file binarymulticlassificationsplitter.h. Referenced by BinaryMultiClassificationSplitter(), GetDDomainSize(), and InitializeSplitStatistics(). |
|
one per attribute
Definition at line 83 of file binarymulticlassificationsplitter.h. Referenced by BinaryMultiClassificationSplitter(). |
|
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 79 of file binarymulticlassificationsplitter.h. Referenced by AddDiscreteShiftStatistics(), BinaryMultiClassificationSplitter(), ComputeCenter(), ComputeDiscreteShift(), ComputeSplitPoint(), ComputeSplitVariable(), InitializeSplitStatistics(), and UpdateSplitStatistics(). |
|
Definition at line 72 of file binarymulticlassificationsplitter.h. Referenced by BinaryMultiClassificationSplitter(), ComputeCenter(), ComputeSplitPoint(), ComputeSplitVariable(), GetDiscreteTransformer(), InitializeSplitStatistics(), and UpdateSplitStatistics(). |
|
number of discrete split variables
Definition at line 47 of file binarymulticlassificationsplitter.h. Referenced by BinaryMultiClassificationSplitter(), ComputeSplitVariable(), GetDSplitDim(), InitializeSplitStatistics(), and UpdateSplitStatistics(). |
|
Definition at line 89 of file binarymulticlassificationsplitter.h. Referenced by BinaryMultiClassificationSplitter(), and UpdateSplitStatistics(). |
|
Definition at line 88 of file binarymulticlassificationsplitter.h. Referenced by BinaryMultiClassificationSplitter(), and UpdateSplitStatistics(). |
|
id of owner node
Definition at line 53 of file binarymulticlassificationsplitter.h. Referenced by ComputeSplitVariable(), and setNodeID(). |
|
Definition at line 57 of file binarymulticlassificationsplitter.h. Referenced by BinaryMultiClassificationSplitter(), ComputeCenter(), ComputeSplitPoint(), ComputeSplitVariable(), GetNoDatasets(), InitializeSplitStatistics(), and SaveToStream(). |
|
Definition at line 55 of file binarymulticlassificationsplitter.h. Referenced by BinaryMultiClassificationSplitter(), and getSplitVariance(). |
|
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 70 of file binarymulticlassificationsplitter.h. Referenced by ChooseBranch(), ComputeCenter(), ComputeSplitPoint(), MoreSplits(), and SaveToStream(). |
|
Definition at line 65 of file binarymulticlassificationsplitter.h. Referenced by ChooseBranch(), ComputeCenter(), ComputeSplitPoint(), and SaveToStream(). |
|
indicates on what variable this node splits on
Definition at line 62 of file binarymulticlassificationsplitter.h. Referenced by ChooseBranch(), ComputeCenter(), ComputeSplitPoint(), ComputeSplitVariable(), MoreSplits(), and SaveToStream(). |