home»research»kml»reference»gaussian

gaussian<T>

Description

Gaussian<T> is a Kernel. Specifically, it is a Mercer Kernel. If k is an object of class gaussian<T>, and u and v are objects of class T, then k(u,v) returns

eqn_lifz

where eqn_1w3t is the width of the kernel. Figure 1 shows a Gaussian kernel.

eqn_sw2seqn_08m4

Figure 1: A two dimensional (left) and three-dimensional (right) plot of a single Gaussian kernel located at the origin.

The Gaussian kernel is a good choice for a great deal of applications, although sometimes it is remarked as being overused [1].

Example

std::vector< double > u(10); 
std::vector< double > v(10); 
gaussian< std::vector< double > > kernel(1.0); 
std::cout << kernel( u, v ) << std::endl; 

Definition

Defined in the KML header <kml/gaussian.hpp>.

Template Parameters

Parameter Description Default
T The gaussian argument type

Model of

Mercer Kernel

Type requirements

T must be a vector type or a numeric type; distance_squared<T> should evaluate.

Members

Member Where defined Description
gaussian() Default Constructible The default constructor
result_type Input value The type of the result: input_value<T>

Notes

See also

Mercer Kernel, linear, hermitian, polynomial, sigmoid

References

[1]

Bernhard Schölkopf and Alexander Smola. Learning with Kernels. Adaptive Computation and Machine Learning. The MIT Press, Cambridge, Massachusetts, USA, 2002. ISBN 0-262-19475-9.
http://www.learning-with-kernels.org