Class LPBoost trains a linear classifier called Linear Programming Machine, i.e. a SVM using a
norm regularizer.
It solves the following optimization problem using Boosting on the input features:
Note that currently CPLEX is required to solve this problem. This implementation is faster than solving the linear program directly in CPLEX (as was done in CLPM).

公有成员 | |
| CLPBoost () | |
| virtual | ~CLPBoost () |
| virtual bool | train (CFeatures *data=NULL) |
| virtual EClassifierType | get_classifier_type () |
| bool | init (int32_t num_vec) |
| void | cleanup () |
| virtual void | set_features (CDotFeatures *feat) |
| void | set_C (float64_t c_neg, float64_t c_pos) |
| float64_t | get_C1 () |
| float64_t | get_C2 () |
| void | set_bias_enabled (bool enable_bias) |
| bool | get_bias_enabled () |
| void | set_epsilon (float64_t eps) |
| float64_t | get_epsilon () |
| float64_t | find_max_violator (int32_t &max_dim) |
| virtual const char * | get_name () const |
保护属性 | |
| float64_t | C1 |
| float64_t | C2 |
| bool | use_bias |
| float64_t | epsilon |
| float64_t * | u |
| CDynamicArray< int32_t > * | dim |
| int32_t | num_sfeat |
| int32_t | num_svec |
| TSparse< float64_t > * | sfeat |
| CLPBoost | ( | ) |
在文件LPBoost.cpp第25行定义。
| ~CLPBoost | ( | ) | [virtual] |
在文件LPBoost.cpp第36行定义。
| void cleanup | ( | ) |
在文件LPBoost.cpp第57行定义。
| float64_t find_max_violator | ( | int32_t & | max_dim | ) |
在文件LPBoost.cpp第69行定义。
| virtual EClassifierType get_classifier_type | ( | ) | [virtual] |
| bool init | ( | int32_t | num_vec | ) |
在文件LPBoost.cpp第41行定义。
| virtual void set_features | ( | CDotFeatures * | feat | ) | [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) |
重载CClassifier。
在文件LPBoost.cpp第104行定义。
CDynamicArray<int32_t>* dim [protected] |