31 #ifndef GRT_CLUSTER_TREE_HEADER
32 #define GRT_CLUSTER_TREE_HEADER
34 #include "../../CoreModules/Clusterer.h"
35 #include "../../CoreAlgorithms/Tree/Tree.h"
54 ClusterTree(
const UINT numSplittingSteps=100,
const UINT minNumSamplesPerNode=5,
const UINT maxDepth=10,
const bool removeFeaturesAtEachSpilt =
false,
const UINT trainingMode = BEST_ITERATIVE_SPILT,
const bool useScaling=
false,
const double minRMSErrorPerNode = 0.01);
101 virtual bool predict_(VectorDouble &inputVector);
109 virtual bool clear();
116 virtual bool print()
const;
182 double minRMSErrorPerNode;
185 bool computeBestSpilt(
const MatrixDouble &trainingData,
const vector< UINT > &features, UINT &featureIndex,
double &threshold,
double &minError );
186 bool computeBestSpiltBestIterativeSpilt(
const MatrixDouble &trainingData,
const vector< UINT > &features, UINT &featureIndex,
double &threshold,
double &minError );
187 bool computeBestSpiltBestRandomSpilt(
const MatrixDouble &trainingData,
const vector< UINT > &features, UINT &featureIndex,
double &threshold,
double &minError );
195 #endif //GRT_CLUSTER_TREE_HEADER
virtual bool train_(MatrixDouble &trainingData)
virtual bool saveModelToFile(string filename) const
virtual bool loadModelFromFile(fstream &file)
virtual bool saveModelToFile(fstream &file) const
virtual bool loadModelFromFile(string filename)
virtual ~ClusterTree(void)
ClusterTreeNode * deepCopyTree() const
ClusterTree(const UINT numSplittingSteps=100, const UINT minNumSamplesPerNode=5, const UINT maxDepth=10, const bool removeFeaturesAtEachSpilt=false, const UINT trainingMode=BEST_ITERATIVE_SPILT, const bool useScaling=false, const double minRMSErrorPerNode=0.01)
virtual bool train(ClassificationData trainingData)
virtual bool deepCopyFrom(const Clusterer *cluster)
ClusterTree & operator=(const ClusterTree &rhs)
UINT getPredictedClusterLabel() const
This file implements a ClusterTreeNode, which is a specific type of node used for a ClusterTree...
virtual bool predict(VectorDouble inputVector)
bool setMinRMSErrorPerNode(const double minRMSErrorPerNode)
virtual bool print() const
const ClusterTreeNode * getTree() const
double getMinRMSErrorPerNode() const
virtual bool predict_(VectorDouble &inputVector)