What Is Hyperparameter Optimization?
Hyperparameter optimization (HPO) automates the search for hyperparameters such as learning rate, batch size, tree depth and regularization strength. The simplest methods are grid and random search. Bayesian optimization builds a surrogate model of the objective, for example with Gaussian processes, random forests or the Tree-structured Parzen Estimator, to choose promising configurations. Multi-fidelity methods such as successive halving, Hyperband, BOHB and ASHA stop poor runs early, while evolutionary methods, CMA-ES and population based training evolve configurations, and gradient-based HPO differentiates the validation loss directly. This page lists surveys, search methods, benchmarks and libraries.
Surveys, Books & Practical Guidance
6 entriesReading on how HPO works and how to apply it.
Random Search & Evolutionary Methods
3 entriesMethods that need no model of the objective.
Bayesian Optimization
6 entriesSurrogate-model methods that choose the next configuration to try.
Multi-Fidelity & Early Stopping
6 entriesMethods that spend little compute on poor configurations.
Gradient-Based HPO
2 entriesMethods that differentiate the validation loss with respect to hyperparameters.
Benchmarks
2 entriesReproducible problems for comparing HPO methods.
Libraries
4 entriesOpen-source frameworks for running HPO.
Related Pages
5 entriesRelated directories on this site.
Frequently Asked Questions
What is hyperparameter optimization?
Hyperparameter optimization (HPO) is the search for the hyperparameter values, such as learning rate, depth or regularization strength, that give the best validation performance. Each candidate needs a training run, so the cost of evaluation drives the choice of method.
Is random search better than grid search?
Often, yes. Bergstra and Bengio showed that random search is more efficient than grid search when only a few hyperparameters matter, because it tries more distinct values of each one.
When should I use Bayesian optimization?
Use it when each training run is expensive and the number of hyperparameters is modest. A surrogate model such as a Gaussian process, a random forest or a TPE density guides which configuration to try next.
How do Hyperband and ASHA save compute?
They use successive halving: many configurations start with a small budget, such as a few epochs, and only the best continue to larger budgets. ASHA runs this asynchronously so many workers stay busy.
How should I set up an HPO run in practice?
Search the learning rate on a log scale, score candidates on a validation set or by cross-validation, and keep the test set untouched. Spend the budget on the hyperparameters that matter most, since the Tunability study found they differ between algorithms.