NEW
A PyTorch-based library for Bayesian optimization research and applications.
DESCRIPTION
BoTorch is a research-friendly Bayesian optimization library built on PyTorch and tightly integrated with GPyTorch for scalable Gaussian process modeling. It provides modular components for surrogates, acquisition functions, and optimization routines, enabling fast prototyping of new BO algorithms. BoTorch supports batch and multi-objective optimization, constraints, and a variety of acquisition functions. It is commonly used for hyperparameter tuning, experimental design, and optimizing costly black-box functions. Integration with the Ax service facilitates end-to-end experimentation workflows in production and at scale.
ALTERNATIVE DEFINITIONS
BoTorch
BoTorch is a library for Bayesian optimization built on PyTorch.
Highlights PyTorch foundation and purpose-built focus on Bayesian optimization.
PyTorch
BoTorch provides a flexible, modular, and research-friendly platform for Bayesian optimization in PyTorch.
Emphasizes modularity and research orientation within the PyTorch ecosystem.
RELATED TERMS
Bayesian Optimization Ax GPyTorch Gaussian Processes Acquisition Function Hyperparameter Tuning Expected Improvement Thompson Sampling Surrogate Model Model-Based Optimization
COMPETING TERMS
RELATIONS
- Broader: Bayesian Optimization
- Referenced by: Ax Platform
KNOWLEDGE AREAS
AI Data Science MLOps Mathematics Platform & Tooling
TARGET AUDIENCE
Data Scientist AI Engineer MLOps Engineer Software Developer
EXTERNAL SOURCES
- Wikipedia - Bayesian optimization
- BoTorch - Official BoTorch overview and docs
- BoTorch - Source code and releases
- Ax - Ax service integrated with BoTorch
- GPyTorch - GPyTorch library for GP models
TOP QUESTIONS
What is BoTorch used for?
BoTorch is used to perform Bayesian optimization on expensive black-box functions, commonly for hyperparameter tuning and experimental design. It provides modular surrogates and acquisition functions.
Category: Overview
How does BoTorch compare to Optuna?
BoTorch emphasizes model-based Bayesian optimization with Gaussian processes and advanced acquisition strategies, whereas Optuna focuses on flexible, algorithm-agnostic hyperparameter search including TPE and samplers.
Category: Comparison
Why choose BoTorch for Bayesian optimization?
BoTorch offers research-grade modularity, tight PyTorch integration, and strong GP modeling via GPyTorch. It supports batching, constraints, and multi-objective optimization for sophisticated experiments.
Category: Benefits
How does BoTorch integrate with Ax?
Ax handles experiment management and orchestration, while BoTorch provides core modeling and optimization. Together they deliver an end-to-end optimization workflow from design to evaluation.
Category: Integration
What surrogate models does BoTorch support?
BoTorch primarily supports Gaussian process surrogates via GPyTorch and also enables custom models. It accommodates single-task, multi-task, and multi-output settings.
Category: Capabilities
Can BoTorch handle constraints and multi-objective tasks?
Yes, BoTorch includes constrained optimization and multi-objective acquisition functions such as Expected Hypervolume Improvement, enabling Pareto frontier discovery.
Category: Capabilities
What are common mistakes when using BoTorch?
A frequent mistake is inadequate input normalization or ignoring outcome standardization, which can destabilize GP inference. Another is poor initial design leading to weak surrogate fit.
Category: Mistakes
How does BoTorch scale to larger problems?
It leverages batched acquisition optimization, approximate GP methods, and PyTorch parallelism. For very large-scale tuning, consider trust-region approaches or sparse GP approximations.
Category: Scalability
What is a good starting point to learn BoTorch?
Begin with the official BoTorch tutorials and the Ax + BoTorch blog post. Reproduce basic BO loops before customizing surrogates or acquisition functions.
Category: Getting Started