BayesOpt
bayesopt::GaussianProcessNormal Class Reference

Gaussian process with normal prior on the parameters. More...

#include <gaussian_process_normal.hpp>

+ Inheritance diagram for bayesopt::GaussianProcessNormal:
+ Collaboration diagram for bayesopt::GaussianProcessNormal:

Public Member Functions

 GaussianProcessNormal (size_t dim, Parameters params, const Dataset &data, MeanModel &mean, randEngine &eng)
 
ProbabilityDistributionprediction (const vectord &query)
 Function that returns the prediction of the GP for a query point in the hypercube [0,1]. More...
 
- Public Member Functions inherited from bayesopt::HierarchicalGaussianProcess
 HierarchicalGaussianProcess (size_t dim, Parameters params, const Dataset &data, MeanModel &mean, randEngine &eng)
 
- Public Member Functions inherited from bayesopt::ConditionalBayesProcess
 ConditionalBayesProcess (size_t dim, Parameters parameters, const Dataset &data, MeanModel &mean, randEngine &eng)
 
double evaluate (const vectord &x)
 Computes the score (eg:likelihood) of the kernel parameters. More...
 
double evaluateKernelParams ()
 Computes the score (eg:likelihood) of the current kernel parameters. More...
 
- Public Member Functions inherited from bayesopt::KernelRegressor
 KernelRegressor (size_t dim, Parameters parameters, const Dataset &data, MeanModel &mean, randEngine &eng)
 
void fitSurrogateModel ()
 Computes the initial surrogate model and updates the kernel parameters estimation. More...
 
void updateSurrogateModel ()
 Sequential update of the surrogate model by adding a new row to the Kernel matrix, more precisely, to its Cholesky decomposition. More...
 
double getSignalVariance ()
 
size_t nHyperParameters ()
 
vectord getHyperParameters ()
 
void setHyperParameters (const vectord &theta)
 
- Public Member Functions inherited from bayesopt::NonParametricProcess
 NonParametricProcess (size_t dim, Parameters parameters, const Dataset &data, MeanModel &mean, randEngine &eng)
 
double getValueAtMinimum ()
 
const DatasetgetData ()
 
double getSignalVariance ()
 

Private Member Functions

double negativeLogLikelihood ()
 Computes the negative log likelihood and its gradient of the data. More...
 
void precomputePrediction ()
 Precompute some values of the prediction that do not depends on the query.
 

Private Attributes

vectord mWMap
 GP posterior parameters.
 
vectord mW0
 
vectord mInvVarW
 
vectord mVf
 Precomputed GP prediction operations.
 
matrixd mKF
 
matrixd mD
 
GaussianDistributiond_
 Predictive distributions.
 

Additional Inherited Members

- Static Public Member Functions inherited from bayesopt::NonParametricProcess
static NonParametricProcesscreate (size_t dim, Parameters parameters, const Dataset &data, MeanModel &mean, randEngine &eng)
 Factory model generator for surrogate models. More...
 
- Protected Member Functions inherited from bayesopt::HierarchicalGaussianProcess
double negativeTotalLogLikelihood ()
 Computes the negative log likelihood of the data for all the parameters. More...
 
- Protected Member Functions inherited from bayesopt::KernelRegressor
void computeCorrMatrix (matrixd &corrMatrix)
 Computes the Correlation (Kernel or Gram) matrix.
 
matrixd computeCorrMatrix ()
 Computes the Correlation (Kernel or Gram) matrix.
 
matrixd computeDerivativeCorrMatrix (int dth_index)
 Computes the derivative of the correlation matrix with respect to the dth hyperparameter.
 
vectord computeCrossCorrelation (const vectord &query)
 
double computeSelfCorrelation (const vectord &query)
 
void computeCholeskyCorrelation ()
 Computes the Cholesky decomposition of the Correlation matrix.
 
- Protected Attributes inherited from bayesopt::KernelRegressor
matrixd mL
 Cholesky decomposition of the Correlation matrix.
 
score_type mScoreType
 
learning_type mLearnType
 
bool mLearnAll
 
KernelModel mKernel
 
- Protected Attributes inherited from bayesopt::NonParametricProcess
const DatasetmData
 
double mSigma
 Signal variance.
 
size_t dim_
 
MeanModelmMean
 

Detailed Description

Gaussian process with normal prior on the parameters.

Definition at line 42 of file gaussian_process_normal.hpp.

Member Function Documentation

◆ negativeLogLikelihood()

double bayesopt::GaussianProcessNormal::negativeLogLikelihood ( )
privatevirtual

Computes the negative log likelihood and its gradient of the data.

Returns
value negative log likelihood

Implements bayesopt::ConditionalBayesProcess.

Definition at line 93 of file gaussian_process_normal.cpp.

References bayesopt::KernelRegressor::computeCorrMatrix(), bayesopt::MeanModel::mFeatM, and bayesopt::Dataset::mY.

◆ prediction()

ProbabilityDistribution * bayesopt::GaussianProcessNormal::prediction ( const vectord &  query)
virtual

Function that returns the prediction of the GP for a query point in the hypercube [0,1].

Parameters
queryin the hypercube [0,1] to evaluate the Gaussian process
Returns
pointer to the probability distribution.

Implements bayesopt::ConditionalBayesProcess.

Definition at line 64 of file gaussian_process_normal.cpp.

References bayesopt::GaussianProcessML::d_, bayesopt::KernelRegressor::mL, bayesopt::NonParametricProcess::mSigma, and bayesopt::GaussianDistribution::setMeanAndStd().


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