• Corpus ID: 204575755

BoTorch: Programmable Bayesian Optimization in PyTorch

  title={BoTorch: Programmable Bayesian Optimization in PyTorch},
  author={Maximilian Balandat and Brian Karrer and Daniel R. Jiang and Sam Daulton and Benjamin Letham and Andrew Gordon Wilson and Eytan Bakshy},
Bayesian optimization provides sample-efficient global optimization for a broad range of applications, including automatic machine learning, engineering, physics, and experimental design. We introduce BoTorch, a modern programming framework for Bayesian optimization that combines Monte-Carlo (MC) acquisition functions, a novel sample average approximation optimization approach, auto-differentiation, and variance reduction techniques. BoTorch's modular design facilitates flexible specification… 

Practical Transfer Learning for Bayesian Optimization

This work develops a new hyperparameter-free ensemble model for Bayesian optimization, based on a linear combination of Gaussian Processes and Agnostic Bayesian Learning of Ensembles, and shows that this is a generalization of two existing transfer learning extensions to Bayesian Optimization.

Bayesian Hyperparameter Optimization with BoTorch, GPyTorch and Ax

It is found that Ax, BoTorch and GPyTorch together provide a simple-to-use but powerful framework for Bayesian hyperparameter optimization, using Ax's high-level API that constructs and runs a full optimization loop and returns the besthyperparameter configuration.

Prior-guided Bayesian Optimization

Prior-guided Bayesian Optimization (PrBO) allows users to inject their knowledge into the optimization process in the form of priors about which parts of the input space will yield the best performance, rather than BO's standard priors over functions which are much less intuitive for users.

Hyperparameter autotuning of programs with HybridTuner

This work presents two hybrid derivative-free optimization (DFO) approaches to maximize the performance of an algorithm and demonstrates how the method is used to solve problems with up to 50 hyperparameters.

Batch Bayesian optimization via adaptive local search

An adaptive local search strategy is investigated to select batch points for Bayesian optimization and the lower bound confidence criterion and frontend truncation operation are employed to select the most promising local maxima as batch points.

Efficient Nonmyopic Bayesian Optimization via One-Shot Multi-Step Trees

This paper provides the first efficient implementation of general multi-step lookahead Bayesian optimization, formulated as a sequence of nested optimization problems within a multi- step scenario tree, and equivalently optimize all decision variables in the full tree jointly, in a ``one-shot'' fashion.

URSABench: Comprehensive Benchmarking of Approximate Bayesian Inference Methods for Deep Neural Networks

Initial work is described on the development ofURSABench, an open-source suite of bench-marking tools for comprehensive assessment of approximate Bayesian inference methods with a focus on deep learning-based classification tasks.

Open source evolutionary structured optimization

This work explains how this API can help analyze optimization methods and how to use it for the optimization of a structured Photonics physical testbed, and shows that this can produce significant improvements.

Asynchronous ε-Greedy Bayesian Optimisation

A novel asynchronous BO method, AEGiS (Asynchronous (cid:15) -Greedy Global Search) that combines greedy search, exploiting the surrogate’s mean prediction, with Thompson sampling and random selection from the approximate Pareto set describing the trade-off between exploitation and exploration is developed.

Revisiting Bayesian optimization in the light of the COCO benchmark

It is found that a small initial budget, a quadratic trend, high-quality optimization of the acquisition criterion bring consistent progress, and the best EGO variants are competitive or improve over state-of-the-art algorithms in dimensions less or equal to 5 for multimodal functions.

RoBO : A Flexible and Robust Bayesian Optimization Framework in Python

The BSD-licensed python package ROBO, released with this paper, offers the only available implementations of Bayesian optimization with Bayesian neural networks, multi-task optimization, and fast Bayesian hyperparameter optimization on large datasets (Fabolas).

Bayesian Optimization with Robust Bayesian Neural Networks

This work presents a general approach for using flexible parametric models (neural networks) for Bayesian optimization, staying as close to a truly Bayesian treatment as possible and obtaining scalability through stochastic gradient Hamiltonian Monte Carlo, whose robustness is improved via a scale adaptation.

The reparameterization trick for acquisition functions

Here, it is demonstrated how many popular acquisition functions can be formulated as Gaussian integrals amenable to the reparameterization trick and, ensuingly, gradient-based optimization.

GPflowOpt: A Bayesian Optimization Library using TensorFlow

A novel Python framework for Bayesian optimization known as GPflowOpt is introduced. The package is based on the popular GPflow library for Gaussian processes, leveraging the benefits of TensorFlow

The Parallel Knowledge Gradient Method for Batch Bayesian Optimization

It is demonstrated that the parallel knowledge gradient method finds global optima significantly faster than previous batch Bayesian optimization algorithms on both synthetic test functions and when tuning hyperparameters of practical machine learning algorithms, especially when function evaluations are noisy.

Bayesian Optimization with Gradients

This paper develops a novel Bayesian optimization algorithm, the derivative-enabled knowledge-gradient (dKG), for which one-step Bayes-optimality, asymptotic consistency, and greater one- step value of information than is possible in the derivatives-free setting are shown.

Fast Bayesian Optimization of Machine Learning Hyperparameters on Large Datasets

A generative model for the validation error as a function of training set size is proposed, which learns during the optimization process and allows exploration of preliminary configurations on small subsets, by extrapolating to the full dataset.

ProBO: Versatile Bayesian Optimization Using Any Probabilistic Programming Language

ProBO is developed, a BO procedure that uses only standard operations common to most PPLs, and allows a user to drop in a model built with an arbitrary PPL and use it directly in BO.

Predictive Entropy Search for Efficient Global Optimization of Black-box Functions

This work proposes a novel information-theoretic approach for Bayesian optimization called Predictive Entropy Search (PES), which codifies this intractable acquisition function in terms of the expected reduction in the differential entropy of the predictive distribution.

Maximizing acquisition functions for Bayesian optimization

This work shows that acquisition functions estimated via Monte Carlo integration are consistently amenable to gradient-based optimization and identifies a common family of acquisition functions, including EI and UCB, whose characteristics not only facilitate but justify use of greedy approaches for their maximization.