Class LibSVR, performs support vector regression using LibSVM.
The SVR solution can be expressed as
where and
are determined in training, i.e. using a pre-specified kernel, a given tube-epsilon for the epsilon insensitive loss, the follwoing quadratic problem is minimized (using sequential minimal decomposition (SMO))
Note that the SV regression problem is reduced to the standard SV classification problem by introducing artificial labels which leads to the epsilon insensitive loss constraints *
with and
Definition at line 51 of file LibSVR.h.
Public Member Functions | |
CLibSVR () | |
CLibSVR (float64_t C, float64_t epsilon, CKernel *k, CLabels *lab) | |
virtual | ~CLibSVR () |
virtual EClassifierType | get_classifier_type () |
virtual const char * | get_name () const |
Protected Member Functions | |
virtual bool | train_machine (CFeatures *data=NULL) |
Protected Attributes | |
svm_problem | problem |
svm_parameter | param |
struct svm_model * | model |
CLibSVR | ( | ) |
default constructor
Definition at line 16 of file LibSVR.cpp.
constructor
C | constant C | |
epsilon | tube epsilon | |
k | kernel | |
lab | labels |
Definition at line 22 of file LibSVR.cpp.
~CLibSVR | ( | ) | [virtual] |
Definition at line 33 of file LibSVR.cpp.
virtual EClassifierType get_classifier_type | ( | ) | [virtual] |
virtual const char* get_name | ( | void | ) | const [virtual] |
bool train_machine | ( | CFeatures * | data = NULL |
) | [protected, virtual] |
train regression
data | training data (parameter can be avoided if distance or kernel-based regressor are used and distance/kernels are initialized with train data) |
Reimplemented from CMachine.
Definition at line 38 of file LibSVR.cpp.