SHOGUN
v1.1.0
|
Multiple Kernel Learning for regression.
Performs support vector regression while learning kernel weights at the same time. Makes only sense if multiple kernels are used.
Definition at line 25 of file MKLRegression.h.
Protected Member Functions | |
virtual void | init_training () |
virtual EClassifierType | get_classifier_type () |
virtual float64_t | compute_mkl_dual_objective () |
![]() | |
virtual bool | train_machine (CFeatures *data=NULL) |
void | perform_mkl_step (float64_t *beta, float64_t *old_beta, int num_kernels, int32_t *label, int32_t *active2dnum, float64_t *a, float64_t *lin, float64_t *sumw, int32_t &inner_iters) |
float64_t | compute_optimal_betas_via_cplex (float64_t *beta, const float64_t *old_beta, int32_t num_kernels, const float64_t *sumw, float64_t suma, int32_t &inner_iters) |
float64_t | compute_optimal_betas_via_glpk (float64_t *beta, const float64_t *old_beta, int num_kernels, const float64_t *sumw, float64_t suma, int32_t &inner_iters) |
float64_t | compute_optimal_betas_elasticnet (float64_t *beta, const float64_t *old_beta, const int32_t num_kernels, const float64_t *sumw, const float64_t suma, const float64_t mkl_objective) |
void | elasticnet_transform (float64_t *beta, float64_t lmd, int32_t len) |
void | elasticnet_dual (float64_t *ff, float64_t *gg, float64_t *hh, const float64_t &del, const float64_t *nm, int32_t len, const float64_t &lambda) |
float64_t | compute_optimal_betas_directly (float64_t *beta, const float64_t *old_beta, const int32_t num_kernels, const float64_t *sumw, const float64_t suma, const float64_t mkl_objective) |
float64_t | compute_optimal_betas_block_norm (float64_t *beta, const float64_t *old_beta, const int32_t num_kernels, const float64_t *sumw, const float64_t suma, const float64_t mkl_objective) |
float64_t | compute_optimal_betas_newton (float64_t *beta, const float64_t *old_beta, int32_t num_kernels, const float64_t *sumw, float64_t suma, float64_t mkl_objective) |
virtual bool | converged () |
void | init_solver () |
bool | init_cplex () |
void | set_qnorm_constraints (float64_t *beta, int32_t num_kernels) |
bool | cleanup_cplex () |
bool | init_glpk () |
bool | cleanup_glpk () |
bool | check_lpx_status (LPX *lp) |
![]() | |
virtual float64_t * | get_linear_term_array () |
![]() | |
virtual void | store_model_features () |
Additional Inherited Members | |
![]() | |
static bool | perform_mkl_step_helper (CMKL *mkl, const float64_t *sumw, const float64_t suma) |
![]() | |
SGIO * | io |
Parallel * | parallel |
Version * | version |
Parameter * | m_parameters |
Parameter * | m_model_selection_parameters |
![]() | |
CSVM * | svm |
float64_t | C_mkl |
float64_t | mkl_norm |
float64_t | ent_lambda |
float64_t | mkl_block_norm |
float64_t * | beta_local |
int32_t | mkl_iterations |
float64_t | mkl_epsilon |
bool | interleaved_optimization |
float64_t * | W |
float64_t | w_gap |
float64_t | rho |
CTime | training_time_clock |
CPXENVptr | env |
CPXLPptr | lp_cplex |
LPX * | lp_glpk |
bool | lp_initialized |
CMKLRegression | ( | CSVM * | s = NULL | ) |
Constructor
s | SVM to use as constraint generator in MKL SILP |
Definition at line 7 of file MKLRegression.cpp.
|
virtual |
Destructor
Definition at line 18 of file MKLRegression.cpp.
|
protectedvirtual |
compute mkl dual objective
Reimplemented from CMKL.
Definition at line 35 of file MKLRegression.cpp.
|
virtual |
compute beta independent term from objective, e.g., in 2-class MKL sum_i alpha_i etc
Implements CMKL.
Definition at line 22 of file MKLRegression.cpp.
|
protectedvirtual |
get classifier type
Reimplemented from CMachine.
Definition at line 53 of file MKLRegression.h.
|
protectedvirtual |
check run before starting training (to e.g. check if labeling is two-class labeling in classification case
Implements CMKL.
Definition at line 41 of file MKLRegression.cpp.