mlpack
a scalable c++ machine learning library
docs
mlpack: mlpack::kernel::PolynomialKernel Class Reference

mlpack::kernel::PolynomialKernel Class Reference

The simple polynomial kernel. More...

List of all members.

Public Member Functions

 PolynomialKernel (const double degree=2.0, const double offset=0.0)
 Construct the Polynomial Kernel with the given offset and degree.
double & Degree ()
 Modify the degree of the polynomial.
const double & Degree () const
 Get the degree of the polynomial.
template<typename VecType >
double Evaluate (const VecType &a, const VecType &b) const
 Simple evaluation of the dot product.
const double & Offset () const
 Get the offset of the dot product of the arguments.
double & Offset ()
 Modify the offset of the dot product of the arguments.

Private Attributes

double degree
 The degree of the polynomial.
double offset
 The offset of the dot product of the arguments.

Detailed Description

The simple polynomial kernel.

For any two vectors $ x $, $ y $, $ degree $ and $ offset $,

\[ K(x, y) = (x^T * y + offset) ^ {degree}. \]

Definition at line 38 of file polynomial_kernel.hpp.


Constructor & Destructor Documentation

mlpack::kernel::PolynomialKernel::PolynomialKernel ( const double  degree = 2.0,
const double  offset = 0.0 
) [inline]

Construct the Polynomial Kernel with the given offset and degree.

If the arguments are omitted, the default degree is 2 and the default offset is 0.

Parameters:
offset Offset of the dot product of the arguments.
degree Degree of the polynomial.

Definition at line 48 of file polynomial_kernel.hpp.


Member Function Documentation

const double& mlpack::kernel::PolynomialKernel::Degree (  )  const [inline]

Get the degree of the polynomial.

Definition at line 69 of file polynomial_kernel.hpp.

References degree.

double& mlpack::kernel::PolynomialKernel::Degree (  )  [inline]

Modify the degree of the polynomial.

Definition at line 71 of file polynomial_kernel.hpp.

References degree.

template<typename VecType >
double mlpack::kernel::PolynomialKernel::Evaluate ( const VecType &  a,
const VecType &  b 
) const [inline]

Simple evaluation of the dot product.

This evaluation uses Armadillo's dot() function.

Template Parameters:
VecType Type of vector (should be arma::vec or arma::spvec).
Parameters:
a First vector.
b Second vector.
Returns:
K(a, b).

Definition at line 63 of file polynomial_kernel.hpp.

References degree, and offset.

double& mlpack::kernel::PolynomialKernel::Offset (  )  [inline]

Modify the offset of the dot product of the arguments.

Definition at line 76 of file polynomial_kernel.hpp.

References offset.

const double& mlpack::kernel::PolynomialKernel::Offset (  )  const [inline]

Get the offset of the dot product of the arguments.

Definition at line 74 of file polynomial_kernel.hpp.

References offset.


Member Data Documentation

The degree of the polynomial.

Definition at line 80 of file polynomial_kernel.hpp.

Referenced by Degree(), and Evaluate().

The offset of the dot product of the arguments.

Definition at line 82 of file polynomial_kernel.hpp.

Referenced by Evaluate(), and Offset().


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