mlpack
master
|
The standard Laplacian kernel. More...
Public Member Functions | |
LaplacianKernel () | |
Default constructor; sets bandwidth to 1.0. More... | |
LaplacianKernel (double bandwidth) | |
Construct the Laplacian kernel with a custom bandwidth. More... | |
double | Bandwidth () const |
Get the bandwidth. More... | |
double & | Bandwidth () |
Modify the bandwidth. More... | |
template<typename VecTypeA , typename VecTypeB > | |
double | Evaluate (const VecTypeA &a, const VecTypeB &b) const |
Evaluation of the Laplacian kernel. More... | |
double | Evaluate (const double t) const |
Evaluation of the Laplacian kernel given the distance between two points. More... | |
double | Gradient (const double t) const |
Evaluation of the gradient of the Laplacian kernel given the distance between two points. More... | |
template<typename Archive > | |
void | Serialize (Archive &ar, const unsigned int) |
Serialize the kernel. More... | |
Private Attributes | |
double | bandwidth |
Kernel bandwidth. More... | |
The standard Laplacian kernel.
Given two vectors ,
, and a bandwidth
(set in the constructor),
The implementation is all in the header file because it is so simple.
Definition at line 30 of file laplacian_kernel.hpp.
|
inline |
Default constructor; sets bandwidth to 1.0.
Definition at line 36 of file laplacian_kernel.hpp.
|
inline |
Construct the Laplacian kernel with a custom bandwidth.
bandwidth | The bandwidth of the kernel ( ![]() |
Definition at line 44 of file laplacian_kernel.hpp.
|
inline |
|
inline |
|
inline |
Evaluation of the Laplacian kernel.
This could be generalized to use any distance metric, not the Euclidean distance, but for now, the Euclidean distance is used.
VecTypeA | Type of first vector (likely arma::vec or arma::sp_vec). |
VecTypeB | Type of second vector (arma::vec / arma::sp_vec). |
a | First vector. |
b | Second vector. |
Definition at line 61 of file laplacian_kernel.hpp.
References bandwidth, and mlpack::metric::LMetric< TPower, TTakeRoot >::Evaluate().
|
inline |
Evaluation of the Laplacian kernel given the distance between two points.
t | The distance between the two points the kernel should be evaluated on. |
Definition at line 75 of file laplacian_kernel.hpp.
References bandwidth.
|
inline |
Evaluation of the gradient of the Laplacian kernel given the distance between two points.
t | The distance between the two points the kernel should be evaluated on. |
Definition at line 90 of file laplacian_kernel.hpp.
References bandwidth.
|
inline |
Serialize the kernel.
Definition at line 101 of file laplacian_kernel.hpp.
References bandwidth, and mlpack::data::CreateNVP().
|
private |
Kernel bandwidth.
Definition at line 108 of file laplacian_kernel.hpp.
Referenced by Bandwidth(), Evaluate(), Gradient(), and Serialize().