# bayesian-optimization/bayesianoptimization

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/bayesian-optimization-bayesianoptimization).**

8,552 stars · 1,594 forks · Python · mit

## Links

- GitHub: https://github.com/bayesian-optimization/BayesianOptimization
- Homepage: https://bayesian-optimization.github.io/BayesianOptimization/index.html
- awesome-repositories: https://awesome-repositories.com/repository/bayesian-optimization-bayesianoptimization.md

## Topics

`bayesian-optimization` `gaussian-processes` `optimization` `python` `simple`

## Description

This is a Bayesian optimization library for Python designed to find the maximum value of expensive black box functions. It operates as a global optimizer that uses probabilistic models to identify the peak value of unknown functions through iterative sampling.

The tool is specifically designed for hyperparameter tuning in machine learning, where it maximizes model performance while minimizing the number of required training runs. It treats the target function as a black box, selecting optimal input parameters based on statistical priors to reduce manual trial and error.

The system utilizes Gaussian process regression and kernel-based covariance mapping to create a surrogate model of the target function. It employs an expected improvement acquisition strategy to balance the exploration of uncertain areas with the exploitation of known high-value regions within a parameter-bounded search space.

## Tags

### Scientific & Mathematical Computing

- [Black-Box Optimization](https://awesome-repositories.com/f/scientific-mathematical-computing/black-box-optimization.md) — Provides a framework for searching optimal input parameters in systems where the internal logic is unknown.
- [Bayesian Optimization Loops](https://awesome-repositories.com/f/scientific-mathematical-computing/bayesian-optimization-loops.md) — Sequentially updates a surrogate model with new observations to refine the search for the global maximum.
- [Black-Box Optimizers](https://awesome-repositories.com/f/scientific-mathematical-computing/black-box-optimizers.md) — Implements a wrapper that treats the target function as an opaque mapping to find optima without gradient information.
- [Expensive Function Optimization](https://awesome-repositories.com/f/scientific-mathematical-computing/expensive-function-optimization.md) — Finds peak values of computationally expensive operations by reducing the total number of required trials. ([source](https://bayesian-optimization.github.io/BayesianOptimization/index.html))
- [Global Optimization Frameworks](https://awesome-repositories.com/f/scientific-mathematical-computing/global-optimization-frameworks.md) — Provides a system for maximizing target outputs by balancing exploration and exploitation within input bounds.
- [Acquisition Function Balancing](https://awesome-repositories.com/f/scientific-mathematical-computing/acquisition-function-balancing.md) — Balances the exploration of uncertain regions and exploitation of known high-value areas using an acquisition function.

### Artificial Intelligence & ML

- [Bayesian Optimization Libraries](https://awesome-repositories.com/f/artificial-intelligence-ml/bayesian-optimization-libraries.md) — Implements a Python library that uses Bayesian sampling algorithms to navigate complex parameter landscapes.
- [Black-Box Maximizers](https://awesome-repositories.com/f/artificial-intelligence-ml/black-box-maximizers.md) — Iteratively tests parameters within defined bounds using statistical methods to maximize an unknown function. ([source](https://cdn.jsdelivr.net/gh/bayesian-optimization/bayesianoptimization@master/README.md))
- [Gaussian Processes](https://awesome-repositories.com/f/artificial-intelligence-ml/gaussian-processes.md) — Uses Gaussian processes to create a probabilistic surrogate model for predicting function values and uncertainty.
- [Hyperparameter Tuning](https://awesome-repositories.com/f/artificial-intelligence-ml/machine-learning/infrastructure/model-optimization-and-inference/training-algorithms/machine-learning-optimization/hyperparameter-tuning.md) — Uses a statistical optimizer to tune machine learning parameters and minimize the number of required training runs.
- [Hyperparameter Optimization](https://awesome-repositories.com/f/artificial-intelligence-ml/model-optimization/training-efficiency/hyperparameter-optimization.md) — Automates the search for optimal configuration parameters to improve machine learning model performance.
- [Kernel Mappings](https://awesome-repositories.com/f/artificial-intelligence-ml/linear-regression/polynomial-feature-mapping/kernel-mappings.md) — Uses kernel-based mappings to calculate similarity between input points for function value interpolation.
- [Search Space Definition](https://awesome-repositories.com/f/artificial-intelligence-ml/search-space-definition.md) — Restricts the optimization process to a predefined set of parameter constraints to ensure efficient sampling.

### Part of an Awesome List

- [Automated Machine Learning](https://awesome-repositories.com/f/awesome-lists/ai/automated-machine-learning.md) — Automates the process of selecting optimal model parameters using statistical surrogate models.
