|
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. |
) specified in the constructor. 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. |
) specified in the constructor. 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. |
) specified in the constructor. 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().
1.8.11