Computes the standard linear kernel on CDotFeatures.
Formally, it computes
Definition at line 33 of file LinearKernel.h.
Public Member Functions | |
CLinearKernel () | |
CLinearKernel (CDotFeatures *l, CDotFeatures *r) | |
virtual | ~CLinearKernel () |
virtual bool | init (CFeatures *l, CFeatures *r) |
virtual void | cleanup () |
virtual EKernelType | get_kernel_type () |
virtual const char * | get_name () const |
virtual bool | init_optimization (int32_t num_suppvec, int32_t *sv_idx, float64_t *alphas) |
virtual bool | init_optimization (CKernelMachine *km) |
virtual bool | delete_optimization () |
virtual float64_t | compute_optimized (int32_t idx) |
virtual void | clear_normal () |
virtual void | add_to_normal (int32_t idx, float64_t weight) |
const float64_t * | get_normal (int32_t &len) |
void | get_w (float64_t **dst_w, int32_t *dst_dims) |
void | set_w (float64_t *src_w, int32_t src_w_dim) |
Protected Attributes | |
float64_t * | normal |
int32_t | normal_length |
CLinearKernel | ( | ) |
constructor
Definition at line 20 of file LinearKernel.cpp.
CLinearKernel | ( | CDotFeatures * | l, | |
CDotFeatures * | r | |||
) |
constructor
l | features of left-hand side | |
r | features of right-hand side |
Definition at line 26 of file LinearKernel.cpp.
~CLinearKernel | ( | ) | [virtual] |
Definition at line 33 of file LinearKernel.cpp.
void add_to_normal | ( | int32_t | idx, | |
float64_t | weight | |||
) | [virtual] |
add to normal vector
idx | where to add | |
weight | what to add |
Reimplemented from CKernel.
Definition at line 66 of file LinearKernel.cpp.
void cleanup | ( | ) | [virtual] |
void clear_normal | ( | ) | [virtual] |
float64_t compute_optimized | ( | int32_t | idx | ) | [virtual] |
compute optimized
idx | index to compute |
Reimplemented from CKernel.
Definition at line 108 of file LinearKernel.cpp.
bool delete_optimization | ( | ) | [virtual] |
delete optimization
Reimplemented from CKernel.
Definition at line 98 of file LinearKernel.cpp.
virtual EKernelType get_kernel_type | ( | ) | [virtual] |
return what type of kernel we are
Implements CDotKernel.
Definition at line 64 of file LinearKernel.h.
virtual const char* get_name | ( | void | ) | const [virtual] |
return the kernel's name
Reimplemented from CDotKernel.
Definition at line 70 of file LinearKernel.h.
const float64_t* get_normal | ( | int32_t & | len | ) |
get normal
len | where length of normal vector will be stored |
Definition at line 116 of file LinearKernel.h.
void get_w | ( | float64_t ** | dst_w, | |
int32_t * | dst_dims | |||
) |
get normal vector (swig compatible)
dst_w | store w in this argument | |
dst_dims | dimension of w |
Definition at line 135 of file LinearKernel.h.
initialize kernel
l | features of left-hand side | |
r | features of right-hand side |
Reimplemented from CDotKernel.
Definition at line 38 of file LinearKernel.cpp.
bool init_optimization | ( | int32_t | num_suppvec, | |
int32_t * | sv_idx, | |||
float64_t * | alphas | |||
) | [virtual] |
optimizable kernel, i.e. precompute normal vector and as phi(x) = x do scalar product in input space
num_suppvec | number of support vectors | |
sv_idx | support vector index | |
alphas | alphas |
Reimplemented from CKernel.
Definition at line 73 of file LinearKernel.cpp.
bool init_optimization | ( | CKernelMachine * | km | ) | [virtual] |
void set_w | ( | float64_t * | src_w, | |
int32_t | src_w_dim | |||
) |
set normal vector (swig compatible)
src_w | new w | |
src_w_dim | dimension of new w - must fit dim of lhs |
Definition at line 151 of file LinearKernel.h.
normal vector (used in case of optimized kernel)
Definition at line 160 of file LinearKernel.h.
int32_t normal_length [protected] |
length of normal vector
Definition at line 162 of file LinearKernel.h.