This repository contains some basic Python code to experiment with Gaussian Processes and Bayesian Optimization using the scikit-optimize library.
- Central Limit Theorem: using
clt.py
it is possible to empirically proof the central limit theorem. You can set the number of samples used and the bounds of data. - Multivariate Gaussian Distributions: with
multivariate_gaussian.py
you can generate a multivariate Gaussian distribution, with the countour plot and the marginal. You can set the mean and covariance of the distribution. - Sampling from a GP: the file
gp_prior_posterior.py
contains the code to sample both, from the prior and from the posterior of a Gaussian Process. You can set the data on which train the GP and the number of samples to extract. - Kernel functions: using
kernel.py
you can plot the heatmap of some kernel functions. You can set the data on which compute the covariance matrix. - Bayesian Optimization: the file
bo.py
contains the code to optimize an objective function, using Bayesian optimization provided by scikit-optimize library.
The following figures show 3 iterations of Bayesian Optimization, considering the objective function f(x) = -x*sin(x).