gplib  1.0.0
C++ Gaussian Process Library
Public Member Functions | List of all members
gplib::kernel_class Class Referenceabstract

#include <gp.hpp>

Inheritance diagram for gplib::kernel_class:
Inheritance graph
[legend]

Public Member Functions

 kernel_class ()
 Kernel Class definition. More...
 
virtual ~kernel_class ()=default
 Destructor. More...
 
virtual arma::mat eval (const arma::mat &X, const arma::mat &Y, bool diag=false) const =0
 Evaluates the kernel function over the provided matrices. More...
 
virtual arma::mat derivate (size_t param_id, const arma::mat &X, const arma::mat &Y, bool diag=false) const =0
 Returns the value of the derivative wrt a certain parameter with a a particular pair of input matrices. More...
 
virtual size_t n_params () const =0
 Returns the number of params needed by the kernel. More...
 
virtual void set_params (const std::vector< double > &params)=0
 Sets the parameters of the kernel using the proided vector. More...
 
virtual void set_lower_bounds (const std::vector< double > &lower_bounds)=0
 Sets the lower bounds to be used by the kernel during training process. More...
 
virtual void set_upper_bounds (const std::vector< double > &upper_bounds)=0
 Sets the upper bounds to be used by the kernel during training process. More...
 
virtual std::vector< double > get_params () const =0
 Returns a vector with the current values of the parameters of the kernel. More...
 
virtual std::vector< double > get_lower_bounds () const =0
 Returns a vector with the current values of the lower_bounds for each of the parameters of the kernel. More...
 
virtual std::vector< double > get_upper_bounds () const =0
 Returns a vector with the current values of the upper_bounds for each of the parameters of the kernel. More...
 

Constructor & Destructor Documentation

gplib::kernel_class::kernel_class ( )
inline

Kernel Class definition.

Constructor

virtual gplib::kernel_class::~kernel_class ( )
virtualdefault

Destructor.

Member Function Documentation

virtual arma::mat gplib::kernel_class::derivate ( size_t  param_id,
const arma::mat &  X,
const arma::mat &  Y,
bool  diag = false 
) const
pure virtual

Returns the value of the derivative wrt a certain parameter with a a particular pair of input matrices.

Parameters
param_id: Identifier of the parameter we are derivating with respect to.
X: First matrix for derivative evaluation.
Y: Second matrix for derivative evaluation.
diag: Flag, if it is true the kernel should only be evaluated for the derivative entries pertaining to the diagonal of the answer matrix, this is due to performance reasons while using FITC.

Implemented in gplib::kernels::squared_exponential.

virtual arma::mat gplib::kernel_class::eval ( const arma::mat &  X,
const arma::mat &  Y,
bool  diag = false 
) const
pure virtual

Evaluates the kernel function over the provided matrices.

Parameters
X: First matrix for kernel evaluation.
Y: Second matrix for kernel evaluation.
diag: Flag, if it is true the kernel should only be evaluated for the entries pertaining to the diagonal of the answer matrix, this is due to performance reasons while using FITC.

Implemented in gplib::kernels::squared_exponential.

virtual std::vector<double> gplib::kernel_class::get_lower_bounds ( ) const
pure virtual

Returns a vector with the current values of the lower_bounds for each of the parameters of the kernel.

Implemented in gplib::kernels::squared_exponential.

virtual std::vector<double> gplib::kernel_class::get_params ( ) const
pure virtual

Returns a vector with the current values of the parameters of the kernel.

Implemented in gplib::kernels::squared_exponential.

virtual std::vector<double> gplib::kernel_class::get_upper_bounds ( ) const
pure virtual

Returns a vector with the current values of the upper_bounds for each of the parameters of the kernel.

Implemented in gplib::kernels::squared_exponential.

virtual size_t gplib::kernel_class::n_params ( ) const
pure virtual

Returns the number of params needed by the kernel.

Implemented in gplib::kernels::squared_exponential.

virtual void gplib::kernel_class::set_lower_bounds ( const std::vector< double > &  lower_bounds)
pure virtual

Sets the lower bounds to be used by the kernel during training process.

Parameters
lower_bounds: Vector containing the lower bounds to be used.

Implemented in gplib::kernels::squared_exponential.

virtual void gplib::kernel_class::set_params ( const std::vector< double > &  params)
pure virtual

Sets the parameters of the kernel using the proided vector.

Parameters
params: vector containing all the parameters needed by the kernel.

Implemented in gplib::kernels::squared_exponential.

virtual void gplib::kernel_class::set_upper_bounds ( const std::vector< double > &  upper_bounds)
pure virtual

Sets the upper bounds to be used by the kernel during training process.

Parameters
upper_bounds: Vector containing the upper bounds to be used.

Implemented in gplib::kernels::squared_exponential.


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