BayesOpt
gaussian_process.hpp
Go to the documentation of this file.
1 
3 /*
4 -------------------------------------------------------------------------
5  This file is part of BayesOpt, an efficient C++ library for
6  Bayesian optimization.
7 
8  Copyright (C) 2011-2015 Ruben Martinez-Cantin <rmcantin@unizar.es>
9 
10  BayesOpt is free software: you can redistribute it and/or modify it
11  under the terms of the GNU Affero General Public License as published by
12  the Free Software Foundation, either version 3 of the License, or
13  (at your option) any later version.
14 
15  BayesOpt is distributed in the hope that it will be useful, but
16  WITHOUT ANY WARRANTY; without even the implied warranty of
17  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  GNU Affero General Public License for more details.
19 
20  You should have received a copy of the GNU Affero General Public License
21  along with BayesOpt. If not, see <http://www.gnu.org/licenses/>.
22 ------------------------------------------------------------------------
23 */
24 
25 #ifndef _GAUSSIAN_PROCESS_HPP_
26 #define _GAUSSIAN_PROCESS_HPP_
27 
28 #include "gauss_distribution.hpp"
30 
31 
32 namespace bayesopt
33 {
34 
42  {
43  public:
44  GaussianProcess(size_t dim, Parameters params, const Dataset& data,
45  MeanModel& mean, randEngine& eng);
46  virtual ~GaussianProcess();
47 
55  ProbabilityDistribution* prediction(const vectord &query);
56 
57  private:
58 
65 
75  double negativeLogLikelihood();
76 
80  void precomputePrediction();
81 
82  private:
83  vectord mAlphaV;
85  };
86 
89 } //namespace bayesopt
90 
91 
92 #endif
GaussianDistribution * d_
Pointer to distribution function.
vectord mAlphaV
Precomputed L.
Namespace of the library interface.
Definition: using.dox:1
ProbabilityDistribution * prediction(const vectord &query)
Function that returns the prediction of the GP for a query point in the hypercube [0...
double negativeTotalLogLikelihood()
Computes the negative log likelihood of the data for all the parameters.
Kernel based nonparametric process, conditional on kernel hyperparameters.
Standard zero mean gaussian process with noisy observations.
Empirical Bayesian NonParametric process.
Gaussian probability distribution.
double negativeLogLikelihood()
Computes the negative log likelihood of the data.
Dataset model to deal with the vector (real) based datasets.
Definition: dataset.hpp:40
void precomputePrediction()
Precompute some values of the prediction that do not depends on the query.