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).