CGaussianKernel Class Reference

Inheritance diagram for CGaussianKernel:

Inheritance graph
[legend]

List of all members.

Public Member Functions

 CGaussianKernel (int32_t size, float64_t width)
 CGaussianKernel (CRealFeatures *l, CRealFeatures *r, float64_t width, int32_t size=10)
virtual ~CGaussianKernel ()
virtual bool init (CFeatures *l, CFeatures *r)
virtual bool load_init (FILE *src)
virtual bool save_init (FILE *dest)
virtual EKernelType get_kernel_type ()
virtual const char * get_name ()

Protected Member Functions

virtual float64_t compute (int32_t idx_a, int32_t idx_b)

Protected Attributes

float64_t width


Detailed Description

The well known Gaussian kernel (swiss army knife for SVMs) on dense real valued features is computed as

\[ k({\bf x},{\bf x'})= exp(-\frac{||{\bf x}-{\bf x'}||^2}{\tau}) \]

where $\tau$ is the kernel width.

Definition at line 27 of file GaussianKernel.h.


Constructor & Destructor Documentation

CGaussianKernel::CGaussianKernel ( int32_t  size,
float64_t  width 
)

constructor

Parameters:
size cache size
width width

Definition at line 17 of file GaussianKernel.cpp.

CGaussianKernel::CGaussianKernel ( CRealFeatures l,
CRealFeatures r,
float64_t  width,
int32_t  size = 10 
)

constructor

Parameters:
l features of left-hand side
r features of right-hand side
width width
size cache size

Definition at line 22 of file GaussianKernel.cpp.

CGaussianKernel::~CGaussianKernel (  )  [virtual]

Definition at line 29 of file GaussianKernel.cpp.


Member Function Documentation

float64_t CGaussianKernel::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

Parameters:
idx_a index a
idx_b index b
Returns:
computed kernel function at indices a,b

Implements CKernel.

Reimplemented in CGaussianShiftKernel.

Definition at line 49 of file GaussianKernel.cpp.

virtual EKernelType CGaussianKernel::get_kernel_type (  )  [virtual]

return what type of kernel we are

Returns:
kernel type GAUSSIAN

Implements CKernel.

Reimplemented in CGaussianShiftKernel.

Definition at line 75 of file GaussianKernel.h.

virtual const char* CGaussianKernel::get_name (  )  [virtual]

return the kernel's name

Returns:
name Gaussian

Implements CKernel.

Reimplemented in CGaussianShiftKernel.

Definition at line 81 of file GaussianKernel.h.

bool CGaussianKernel::init ( CFeatures l,
CFeatures r 
) [virtual]

initialize kernel

Parameters:
l features of left-hand side
r features of right-hand side
Returns:
if initializing was successful

Reimplemented from CSimpleKernel< float64_t >.

Definition at line 33 of file GaussianKernel.cpp.

bool CGaussianKernel::load_init ( FILE *  src  )  [virtual]

load kernel init_data

Parameters:
src file to load from
Returns:
if loading was successful

Implements CKernel.

Definition at line 39 of file GaussianKernel.cpp.

bool CGaussianKernel::save_init ( FILE *  dest  )  [virtual]

save kernel init_data

Parameters:
dest file to save to
Returns:
if saving was successful

Implements CKernel.

Definition at line 44 of file GaussianKernel.cpp.


Member Data Documentation

width

Definition at line 96 of file GaussianKernel.h.


The documentation for this class was generated from the following files:

SHOGUN Machine Learning Toolbox - Documentation