This repository contains the implementation of the project developed for the course Information Theory and Inference (UniPD) focused on applying Bayesian optimization with Gaussian processes to find the minimum of analytical test functions and fine-tune hyperparameters in a Convolutional Neural Network (CNN). Additionally, Markov Chain Monte Carlo (MCMC) and point estimation with Maximum Likelihood are explored to find hyper-hyperparameters for the Gaussian process kernel.
-
Bayesian Optimization with Gaussian Processes (BO-GP):
- The
functions_plot_BOmodule includes the core implementation of Bayesian optimization using Gaussian processes. It provides a flexible framework for optimizing objective functions.
- The
-
Analytical Test Functions:
- The
plot_analitic_functionsnotebook contains implementations of various analytical test functions. These functions serve as a benchmark to evaluate the performance of the Bayesian optimization algorithm.
- The
-
CNN Hyperparameter Tuning:
- The
Bayesian_Optimizer_s_l_plotsnotebook demonstrates the application of Bayesian optimization to fine-tune hyperparameters in a Convolutional Neural Network. It includes configurations and results.
- The
-
Max Likelihood approach
- The
bo_maxliknotebook contains the implementation of the Point estimation by minimizing the marginal likelihood
- The
-
MCMC for Hyper-Hyperparameter Optimization:
- The
Functions_MCMC_for_GPmodule showcases the use of Markov Chain Monte Carlo to find hyper-hyperparameters governing the Gaussian process kernel. Results and plots are provided in this notebookMCMC_for_GP.ipynb.
- The
