A generic classifier interface.
A classifier takes as input CLabels. Later subclasses may specialize the classifier to require labels and a kernel or labels and (real-valued) features.
A classifier needs to override the train() function for training, the function classify_example() (optionally classify() to predict on the whole set of examples) and the load and save routines.
在文件Classifier.h第88行定义。
公有成员 | |
CClassifier () | |
virtual | ~CClassifier () |
virtual bool | train (CFeatures *data=NULL) |
virtual CLabels * | classify ()=0 |
virtual CLabels * | classify (CFeatures *data)=0 |
virtual float64_t | classify_example (int32_t num) |
virtual bool | load (FILE *srcfile) |
virtual bool | save (FILE *dstfile) |
virtual void | set_labels (CLabels *lab) |
virtual CLabels * | get_labels () |
virtual float64_t | get_label (int32_t i) |
void | set_max_train_time (float64_t t) |
float64_t | get_max_train_time () |
virtual EClassifierType | get_classifier_type () |
void | set_solver_type (ESolverType st) |
ESolverType | get_solver_type () |
保护属性 | |
float64_t | max_train_time |
CLabels * | labels |
ESolverType | solver_type |
CClassifier | ( | ) |
constructor
在文件Classifier.cpp第22行定义。
~CClassifier | ( | ) | [virtual] |
在文件Classifier.cpp第27行定义。
virtual CLabels* classify | ( | ) | [pure virtual] |
classify objects using the currently set features
在CKernelMachine、CKNN、CLinearClassifier、CPluginEstimate、CMultiClassSVM、CWDSVMOcas、CHierarchical、CKMeans及CKRR内被实现。
classify objects
data | (test)data to be classified |
在CKernelMachine、CKNN、CLinearClassifier、CPluginEstimate、CWDSVMOcas、CHierarchical、CKMeans及CKRR内被实现。
virtual float64_t classify_example | ( | int32_t | num ) | [virtual] |
classify one example
abstract base method
num | which example to classify |
被CKernelMachine、CKernelPerceptron、CKNN、CLinearClassifier、CPluginEstimate、CMultiClassSVM、CScatterSVM、CWDSVMOcas及CKRR重载。
在文件Classifier.h第129行定义。
virtual EClassifierType get_classifier_type | ( | ) | [virtual] |
get classifier type
被CKernelPerceptron、CKNN、CLDA、CLPBoost、CLPM、CMKLClassification、CMKLMultiClass、CMKLOneClass、CPerceptron、CSubGradientLPM、CCPLEXSVM、CGMNPSVM、CGNPPSVM、CGPBTSVM、CLaRank、CLibLinear、CLibSVM、CLibSVMMultiClass、CLibSVMOneClass、CMPDSVM、CScatterSVM、CSubGradientSVM、CSVMLin、CSVMOcas、CSVMSGD、CWDSVMOcas、CHierarchical、CKMeans、CKRR、CLibSVR及CMKLRegression重载。
在文件Classifier.h第199行定义。
virtual float64_t get_label | ( | int32_t | i ) | [virtual] |
get one specific label
i | index of label to get |
在文件Classifier.h第175行定义。
virtual CLabels* get_labels | ( | ) | [virtual] |
float64_t get_max_train_time | ( | ) |
ESolverType get_solver_type | ( | ) |
virtual bool load | ( | FILE * | srcfile ) | [virtual] |
load Classifier from file
abstract base method
srcfile | file to load from |
被CKernelPerceptron、CKNN、CLinearClassifier、CMultiClassSVM、CSVM、CHierarchical、CKMeans及CKRR重载。
在文件Classifier.h第142行定义。
virtual bool save | ( | FILE * | dstfile ) | [virtual] |
save Classifier to file
abstract base method
dstfile | file to save to |
被CKernelPerceptron、CKNN、CLinearClassifier、CMultiClassSVM、CSVM、CHierarchical、CKMeans及CKRR重载。
在文件Classifier.h第151行定义。
virtual void set_labels | ( | CLabels * | lab ) | [virtual] |
void set_max_train_time | ( | float64_t | t ) |
void set_solver_type | ( | ESolverType | st ) |
virtual bool train | ( | CFeatures * | data = NULL ) |
[virtual] |
train classifier
data | training data (parameter can be avoided if distance or kernel-based classifiers are used and distance/kernels are initialized with train data) |
被CKernelPerceptron、CKNN、CLDA、CLPBoost、CLPM、CMKL、CMKLMultiClass、CPerceptron、CPluginEstimate、CSubGradientLPM、CCPLEXSVM、CGMNPSVM、CGNPPSVM、CGPBTSVM、CLaRank、CLibLinear、CLibSVM、CLibSVMMultiClass、CLibSVMOneClass、CMPDSVM、CScatterSVM、CSubGradientSVM、CSVMLin、CSVMOcas、CSVMSGD、CWDSVMOcas、CHierarchical、CKMeans、CKRR及CLibSVR重载。
在文件Classifier.h第103行定义。
labels
在文件Classifier.h第237行定义。
float64_t max_train_time [protected] |
maximum training time
在文件Classifier.h第234行定义。
ESolverType solver_type [protected] |