|
| | SquaredExponential (const SquaredExponential &)=default |
| |
| | SquaredExponential (SquaredExponential &&)=default |
| |
| SquaredExponential & | operator= (const SquaredExponential &)=default |
| |
| SquaredExponential & | operator= (SquaredExponential &&)=default |
| |
| | SquaredExponential (const size_t &index, const int &indexX=-1) |
| |
| double | eval (const Eigen::VectorXd &x1, const Eigen::VectorXd &x2, const Eigen::VectorXd &par) const |
| |
| double | evalGradient (const Eigen::VectorXd &x1, const Eigen::VectorXd &x2, const Eigen::VectorXd &par, const size_t &i) const |
| |
| double | evalHessian (const Eigen::VectorXd &x1, const Eigen::VectorXd &x2, const Eigen::VectorXd &par, const size_t &i, const size_t &j) const |
| |
| virtual | ~Covariance ()=default |
| |
Squared Exponential (RBF / Gaussian) covariance function.
Mathematical Formulation Evaluates the squared exponential kernel between two inputs \(\mathbf{x}_1, \mathbf{x}_2\):
\[
k(\mathbf{x}_1, \mathbf{x}_2) = \exp\left( -\frac{1}{2} \left(\frac{d}{\ell}\right)^2 \right)
\]
where \(d\) is the distance (Euclidean norm \(\|\mathbf{x}_1 - \mathbf{x}_2\|_2\) if isotropic, or absolute coordinate distance \(|x_{1,i} - x_{2,i}|\) if restricted to dimension \(i\)), and \(\ell = \theta_{\text{index}}\) is the lengthscale hyperparameter.
Implementation Algorithm
- Computes the distance \(d\) based on the component index configuration.
- Computes the exponential kernel value.
- Evaluates analytical first-order and second-order derivatives with respect to the lengthscale \(\ell\).