Skip to main content
Version: Next

BoTorch Tutorials

The tutorials here will help you understand and use BoTorch in your own work. They assume that you are familiar with both Bayesian optimization (BO) and PyTorch.

If you are new to BO, we recommend you start with the Ax docs and the following tutorial paper.

If you are new to PyTorch, the easiest way to get started is with the What is PyTorch? tutorial.

The BoTorch tutorials are grouped into the following four areas.

Using BoTorch with Ax

These tutorials give you an overview of how to leverage Ax, a platform for sequential experimentation, in order to simplify the management of your BO loop. Doing so can help you focus on the main aspects of BO (models, acquisition functions, optimization of acquisition functions), rather than tedious loop control. See our Documentation for additional information.

Full Optimization Loops

In some situations (e.g. when working in a non-standard setting, or if you want to understand and control various details of the BO loop), then you may also consider working purely in BoTorch. The tutorials in this section illustrate this approach.

Bite-Sized Tutorials

Rather than guiding you through full end-to-end BO loops, the tutorials in this section focus on specific tasks that you will encounter in customizing your BO algorithms. For instance, you may want to write a custom acquisition function and then use a custom zero-th order optimizer to optimize it.

Advanced Usage

Tutorials in this section showcase more advanced ways of using BoTorch. For instance, this tutorial shows how to perform BO if your objective function is an image, by optimizing in the latent space of a variational auto-encoder (VAE).