Computes the standard linear kernel on sparse real valued features.
Formally, it computes
Definition at line 29 of file SparseLinearKernel.h.

Public Member Functions | |
| CSparseLinearKernel () | |
| CSparseLinearKernel (CSparseFeatures< float64_t > *l, CSparseFeatures< float64_t > *r) | |
| virtual | ~CSparseLinearKernel () |
| 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 | 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) |
Protected Member Functions | |
| virtual float64_t | compute (int32_t idx_a, int32_t idx_b) |
Protected Attributes | |
| float64_t * | normal |
| int32_t | normal_length |
constructor
Definition at line 20 of file SparseLinearKernel.cpp.
| CSparseLinearKernel | ( | CSparseFeatures< float64_t > * | l, | |
| CSparseFeatures< float64_t > * | r | |||
| ) |
constructor
| l | features of left-hand side | |
| r | features of right-hand side |
Definition at line 26 of file SparseLinearKernel.cpp.
| ~CSparseLinearKernel | ( | ) | [virtual] |
Definition at line 34 of file SparseLinearKernel.cpp.
| void add_to_normal | ( | int32_t | idx, | |
| float64_t | weight | |||
| ) | [virtual] |
add to normal
| idx | where to add | |
| weight | what to add |
Reimplemented from CKernel.
Definition at line 65 of file SparseLinearKernel.cpp.
| void cleanup | ( | ) | [virtual] |
| void clear_normal | ( | ) | [virtual] |
| float64_t compute | ( | int32_t | idx_a, | |
| int32_t | idx_b | |||
| ) | [protected, virtual] |
compute kernel function for features a and b idx_{a,b} denote the index of the feature vectors in the corresponding feature object
| idx_a | index a | |
| idx_b | index b |
Implements CKernel.
Definition at line 72 of file SparseLinearKernel.cpp.
| float64_t compute_optimized | ( | int32_t | idx | ) | [virtual] |
compute optimized
| idx | index to compute |
Reimplemented from CKernel.
Definition at line 115 of file SparseLinearKernel.cpp.
| bool delete_optimization | ( | ) | [virtual] |
delete optimization
Reimplemented from CKernel.
Definition at line 105 of file SparseLinearKernel.cpp.
| virtual EKernelType get_kernel_type | ( | ) | [virtual] |
return what type of kernel we are
Implements CKernel.
Definition at line 61 of file SparseLinearKernel.h.
| virtual const char* get_name | ( | ) | const [virtual] |
return the kernel's name
Implements CSGObject.
Definition at line 67 of file SparseLinearKernel.h.
| const float64_t* get_normal | ( | int32_t & | len | ) |
get normal
| len | length of normal vector will be stored here |
Definition at line 108 of file SparseLinearKernel.h.
initialize kernel
| l | features of left-hand side | |
| r | features of right-hand side |
Reimplemented from CSparseKernel< float64_t >.
Definition at line 39 of file SparseLinearKernel.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 93 of file SparseLinearKernel.cpp.
normal vector (used in case of optimized kernel)
Definition at line 127 of file SparseLinearKernel.h.
int32_t normal_length [protected] |
length of normal vector
Definition at line 129 of file SparseLinearKernel.h.