All Projects → thuijskens → Bayesian Optimization

thuijskens / Bayesian Optimization

Python code for bayesian optimization using Gaussian processes

Projects that are alternatives of or similar to Bayesian Optimization

Cornell Moe
A Python library for the state-of-the-art Bayesian optimization algorithms, with the core implemented in C++.
Stars: ✭ 198 (-19.18%)
Mutual labels:  hyperparameter-optimization, gaussian-processes, optimization
Far Ho
Gradient based hyperparameter optimization & meta-learning package for TensorFlow
Stars: ✭ 161 (-34.29%)
Mutual labels:  jupyter-notebook, hyperparameter-optimization, optimization
Pysot
Surrogate Optimization Toolbox for Python
Stars: ✭ 136 (-44.49%)
Mutual labels:  jupyter-notebook, gaussian-processes, optimization
Hyperparameter Optimization Of Machine Learning Algorithms
Implementation of hyperparameter optimization/tuning methods for machine learning & deep learning models (easy&clear)
Stars: ✭ 516 (+110.61%)
Mutual labels:  jupyter-notebook, hyperparameter-optimization, optimization
Mlmodels
mlmodels : Machine Learning and Deep Learning Model ZOO for Pytorch, Tensorflow, Keras, Gluon models...
Stars: ✭ 145 (-40.82%)
Mutual labels:  jupyter-notebook, hyperparameter-optimization
Optimization Python
General optimization (LP, MIP, QP, continuous and discrete optimization etc.) using Python
Stars: ✭ 133 (-45.71%)
Mutual labels:  jupyter-notebook, optimization
Deep Learning Specialization Coursera
Deep Learning Specialization courses by Andrew Ng, deeplearning.ai
Stars: ✭ 146 (-40.41%)
Mutual labels:  jupyter-notebook, optimization
Rl Baselines3 Zoo
A collection of pre-trained RL agents using Stable Baselines3, training and hyperparameter optimization included.
Stars: ✭ 161 (-34.29%)
Mutual labels:  hyperparameter-optimization, optimization
Neural Tangents
Fast and Easy Infinite Neural Networks in Python
Stars: ✭ 1,357 (+453.88%)
Mutual labels:  jupyter-notebook, gaussian-processes
Btb
A simple, extensible library for developing AutoML systems
Stars: ✭ 159 (-35.1%)
Mutual labels:  hyperparameter-optimization, gaussian-processes
Iminuit
Jupyter-friendly Python interface for C++ MINUIT2
Stars: ✭ 172 (-29.8%)
Mutual labels:  jupyter-notebook, optimization
Chocolate
A fully decentralized hyperparameter optimization framework
Stars: ✭ 112 (-54.29%)
Mutual labels:  hyperparameter-optimization, optimization
Quant Notes
Quantitative Interview Preparation Guide, updated version here ==>
Stars: ✭ 180 (-26.53%)
Mutual labels:  jupyter-notebook, optimization
Fantasy Basketball
Scraping statistics, predicting NBA player performance with neural networks and boosting algorithms, and optimising lineups for Draft Kings with genetic algorithm. Capstone Project for Machine Learning Engineer Nanodegree by Udacity.
Stars: ✭ 146 (-40.41%)
Mutual labels:  jupyter-notebook, optimization
Yabox
Yet another black-box optimization library for Python
Stars: ✭ 103 (-57.96%)
Mutual labels:  jupyter-notebook, optimization
Scikit Optimize
Sequential model-based optimization with a `scipy.optimize` interface
Stars: ✭ 2,258 (+821.63%)
Mutual labels:  optimization, hyperparameter-optimization
Hyperactive
A hyperparameter optimization and data collection toolbox for convenient and fast prototyping of machine-learning models.
Stars: ✭ 182 (-25.71%)
Mutual labels:  hyperparameter-optimization, optimization
Safeopt
Safe Bayesian Optimization
Stars: ✭ 90 (-63.27%)
Mutual labels:  gaussian-processes, optimization
Advisor
Open-source implementation of Google Vizier for hyper parameters tuning
Stars: ✭ 1,359 (+454.69%)
Mutual labels:  jupyter-notebook, optimization
Mlrmbo
Toolbox for Bayesian Optimization and Model-Based Optimization in R
Stars: ✭ 173 (-29.39%)
Mutual labels:  hyperparameter-optimization, optimization

Bayesian optimization with Gaussian processes

This repository contains Python code for Bayesian optimization using Gaussian processes. It contains two directories:

  • python: Contains two python scripts gp.py and plotters.py, that contain the optimization code, and utility functions to plot iterations of the algorithm, respectively.
  • ipython-notebooks: Contains an IPython notebook that uses the Bayesian algorithm to tune the hyperparameters of a support vector machine on a dummy classification task.

The signature of the optimization function is:

bayesian_optimisation(n_iters, sample_loss, bounds, x0=None, n_pre_samples=5,
                      gp_params=None, random_search=False, alpha=1e-5, epsilon=1e-7)

and its docstring is:

bayesian_optimisation

  Uses Gaussian Processes to optimise the loss function `sample_loss`.

  Arguments:
  ----------
      n_iters: integer.
          Number of iterations to run the search algorithm.
      sample_loss: function.
          Function to be optimised.
      bounds: array-like, shape = [n_params, 2].
          Lower and upper bounds on the parameters of the function `sample_loss`.
      x0: array-like, shape = [n_pre_samples, n_params].
          Array of initial points to sample the loss function for. If None, randomly
          samples from the loss function.
      n_pre_samples: integer.
          If x0 is None, samples `n_pre_samples` initial points from the loss function.
      gp_params: dictionary.
          Dictionary of parameters to pass on to the underlying Gaussian Process.
      random_search: integer.
          Flag that indicates whether to perform random search or L-BFGS-B optimisation
          over the acquisition function.
      alpha: double.
          Variance of the error term of the GP.
      epsilon: double.
          Precision tolerance for floats.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].