#include <binarysplitter.h>
Inheritance diagram for CLUS::BinarySplitter:

Public Member Functions | |
| BinarySplitter () | |
| BinarySplitter (const Vector< int > &DDomainSize, int CsplitDim, int RegDim) | |
| BinarySplitter (BinarySplitter &aux) | |
| int | GetRegDim (void) |
| int | GetCSplitDim (void) |
| int | GetDSplitDim (void) |
| const Vector< int > & | GetDDomainSize (void) |
| int | ChooseBranch (const int *Dvars, const double *Cvars) |
| Decides what branch to choose. | |
| double | ProbabilityFirstBranch (const int *Dvars, const double *Cvars) |
| Computes probability to take first branch. | |
| void | InitializeSplitStatistics (void) |
| Initializes the data structures used in split variable selection. | |
| void | UpdateSplitStatistics (const int *Dvars, const double *Cvars, double p1, double p2) |
| Updates the necessary statistics for split variable selection. | |
| int | ComputeSplitVariable (int type) |
| Decides on a split variable and frees the data structures used in split selection. | |
| bool | MoreSplits (int branch, int Min_no_datapoints) |
| Ask if it is worth doing more splits in the future. | |
| void | DeleteTemporaryStatistics (void) |
| Cleans up all the unnecessary statistics after the decision has been made. | |
| void | SaveToStream (ostream &out) |
| ~BinarySplitter (void) | |
Protected Attributes | |
| int | dsplitDim |
| the number of discrete split variables (nonregressers) | |
| int | csplitDim |
| the number of continuous split variables (nonregressoers) | |
| int | regDim |
| the number of regressors | |
| const Vector< int > & | dDomainSize |
| list of discrete domain sizes | |
| int | SplitVariable |
| Indicates on what variable this node splits on. | |
| Vector< double > | SeparatingHyperplane |
| Contains the coeficients of the hyperplane that separates the 2 distributions in the input space. | |
| Vector< double > | splitSetProbability |
| Contains the probability for a value to be in the left partition. | |
Specifies the interface
Definition at line 48 of file binarysplitter.h.
|
|
Definition at line 76 of file binarysplitter.h. |
|
||||||||||||||||
|
Definition at line 79 of file binarysplitter.h. |
|
|
Definition at line 85 of file binarysplitter.h. |
|
|
Definition at line 175 of file binarysplitter.h. |
|
||||||||||||
|
Decides what branch to choose.
Reimplemented in CLUS::BinaryObliqueSplitter. Definition at line 111 of file binarysplitter.h. Referenced by ProbabilityFirstBranch(). |
|
|
Decides on a split variable and frees the data structures used in split selection.
Reimplemented in CLUS::BinaryObliqueSplitter. Definition at line 134 of file binarysplitter.h. |
|
|
Cleans up all the unnecessary statistics after the decision has been made.
Reimplemented in CLUS::BinaryObliqueSplitter. Definition at line 146 of file binarysplitter.h. |
|
|
Definition at line 95 of file binarysplitter.h. |
|
|
Definition at line 105 of file binarysplitter.h. |
|
|
Definition at line 100 of file binarysplitter.h. |
|
|
Definition at line 91 of file binarysplitter.h. |
|
|
Initializes the data structures used in split variable selection.
Reimplemented in CLUS::BinaryObliqueSplitter. Definition at line 125 of file binarysplitter.h. |
|
||||||||||||
|
Ask if it is worth doing more splits in the future.
Reimplemented in CLUS::BinaryObliqueSplitter. Definition at line 140 of file binarysplitter.h. |
|
||||||||||||
|
Computes probability to take first branch. Need this to accomodate probabilistic splitters Definition at line 116 of file binarysplitter.h. |
|
|
Definition at line 149 of file binarysplitter.h. |
|
||||||||||||||||||||
|
Updates the necessary statistics for split variable selection.
Definition at line 129 of file binarysplitter.h. |
|
|
the number of continuous split variables (nonregressoers)
Definition at line 55 of file binarysplitter.h. Referenced by BinarySplitter(), GetCSplitDim(), CLUS::BinaryObliqueSplitter::InitializeSplitStatistics(), and CLUS::BinaryObliqueSplitter::ProbabilityLeftPrivate(). |
|
|
list of discrete domain sizes
Definition at line 61 of file binarysplitter.h. Referenced by BinarySplitter(), GetDDomainSize(), and CLUS::BinaryObliqueSplitter::InitializeSplitStatistics(). |
|
|
the number of discrete split variables (nonregressers)
Definition at line 52 of file binarysplitter.h. Referenced by BinarySplitter(), CLUS::BinaryObliqueSplitter::ComputeSplitVariable(), GetDSplitDim(), CLUS::BinaryObliqueSplitter::InitializeSplitStatistics(), and CLUS::BinaryObliqueSplitter::UpdateSplitStatistics(). |
|
|
the number of regressors
Definition at line 58 of file binarysplitter.h. Referenced by BinarySplitter(), GetRegDim(), CLUS::BinaryObliqueSplitter::InitializeSplitStatistics(), and CLUS::BinaryObliqueSplitter::ProbabilityLeftPrivate(). |
|
|
Contains the coeficients of the hyperplane that separates the 2 distributions in the input space. This is an oblique split Definition at line 69 of file binarysplitter.h. Referenced by BinarySplitter(), CLUS::BinaryObliqueSplitter::ComputeSplitVariable(), CLUS::BinaryObliqueSplitter::ProbabilityLeftPrivate(), and SaveToStream(). |
|
|
Contains the probability for a value to be in the left partition. In traditional classifiers is set to 1.0 or 0.0 Definition at line 73 of file binarysplitter.h. Referenced by BinarySplitter(), CLUS::BinaryObliqueSplitter::ComputeSplitVariable(), CLUS::BinaryObliqueSplitter::ProbabilityLeftPrivate(), and SaveToStream(). |
|
|
Indicates on what variable this node splits on. If -1 we have an oblique split. Definition at line 65 of file binarysplitter.h. Referenced by CLUS::BinaryObliqueSplitter::ComputeSplitVariable(), CLUS::BinaryObliqueSplitter::ProbabilityLeftPrivate(), and SaveToStream(). |
1.3.2