RBFKernel Class Reference

Definition of the RBF Gaussian kernel. More...

#include <KernelFunction.h>

Inheritance diagram for RBFKernel:

KernelFunction Model

List of all members.

Public Member Functions

 RBFKernel (double gamma)
 ~RBFKernel ()
double eval (const Array< double > &x1, const Array< double > &x2) const
 Evaluates the kernel function on a const object.
double evalDerivative (const Array< double > &x1, const Array< double > &x2, Array< double > &derivative) const
 Evaluates the kernel function and computes its derivatives w.r.t.
bool isFeasible ()
 check whether the parameters define a feasible model
double getSigma ()
void setSigma (double sigma)


Detailed Description

Definition of the RBF Gaussian kernel.

A special but very important type of kernel is the Gaussian normal distribution density kernel

\[ exp(-\gamma \|x_1 - x_2\|^2) \]

It has a single parameter $\gamma > 0$ controlling the kernel width $\sigma = \sqrt{2 / \gamma}$.

Examples:

CrossValidation.cpp, KernelOptimization.cpp, KM.cpp, KNN.cpp, McSvm.cpp, SvmApproximationExample.cpp, SVMclassification-gnuplot.cpp, SVMclassification.cpp, SVMregression-gnuplot.cpp, and SVMregression.cpp.

Definition at line 170 of file KernelFunction.h.


Constructor & Destructor Documentation

RBFKernel::RBFKernel ( double  gamma  ) 

Definition at line 182 of file KernelFunction.cpp.

References Model::parameter.

RBFKernel::~RBFKernel (  ) 

Definition at line 188 of file KernelFunction.cpp.


Member Function Documentation

double RBFKernel::eval ( const Array< double > &  x1,
const Array< double > &  x2 
) const [virtual]

Evaluates the kernel function on a const object.

Implements KernelFunction.

Definition at line 193 of file KernelFunction.cpp.

References i, and Model::parameter.

double RBFKernel::evalDerivative ( const Array< double > &  x1,
const Array< double > &  x2,
Array< double > &  derivative 
) const [virtual]

Evaluates the kernel function and computes its derivatives w.r.t.

the kernel parameters.

Reimplemented from KernelFunction.

Definition at line 209 of file KernelFunction.cpp.

References i, and Model::parameter.

double RBFKernel::getSigma (  ) 

Definition at line 233 of file KernelFunction.cpp.

References Model::getParameter().

bool RBFKernel::isFeasible (  )  [virtual]

check whether the parameters define a feasible model

The default implementation returns true, that is, every parameter configuration is considered feasible and unconstrained optimization is applicable. It is the Optimizer's responsibility to check the isFeasible() flag.

Returns:
true if the model is feasible, false otherwise
Author:
T. Glasmachers
Date:
2006

Reimplemented from Model.

Definition at line 228 of file KernelFunction.cpp.

References Model::parameter.

void RBFKernel::setSigma ( double  sigma  ) 

Definition at line 238 of file KernelFunction.cpp.

References Model::setParameter().


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