Optuna: A Next-generation Hyperparameter Optimization Framework
Written for the Research library (claude-opus-5-5) from the paper text, in our own words: the license "arXiv — non-exclusive license to distribute" does not allow redistributing the text itself. Original — arxiv.org/pdf/1907.10902
Summary
Hyperparameter tuning is one of the most laborious parts of machine learning work. Existing tools such as Hyperopt, Spearmint, SMAC, Autotune, Vizier, Katib and Tune share several weaknesses. Users must declare the whole search space in advance, which becomes unwieldy for large experiments with many conditional parameters. Many tools lack efficient pruning of weak trials, and setups tend to be either heavyweight or limited in scale.
The Preferred Networks authors propose three design criteria for next-generation tools: a define-by-run interface, efficient sampling combined with pruning, and an architecture suited both to quick interactive sessions and to distributed runs. They implement these criteria in Optuna. Borrowing the define-by-run idea from dynamic deep learning frameworks such as Chainer and PyTorch, Optuna lets the objective function request hyperparameters at runtime, so ordinary Python loops and conditionals shape the search space. An MNIST classifier example needs far less code than its Hyperopt equivalent. The authors report that Optuna outperforms several major black-box optimizers, making flexible tuning accessible with minimal setup.
Key points
- Optuna is presented as the first hyperparameter optimization framework built on the define-by-run principle. Table 1 classifies older optimizers and deep learning libraries by API style (define-and-run vs define-by-run).
- Core vocabulary: a whole optimization process is a "study" and each objective evaluation is a "trial." Calls like
suggest_int,suggest_categoricalandsuggest_loguniformsample values using the history of earlier trials. - Table 2 compares frameworks on pruning, lightweight setup, distributed support, dashboard and open-source status. SMAC, GPyOpt, Spearmint and Hyperopt are marked as lightweight but without pruning. Autotune, Vizier, Katib and Tune offer pruning but are not lightweight.
- The design supports modular code and heterogeneous spaces. One example picks between a RandomForestClassifier and an MLPClassifier, each with its own parameters.
- Optuna is released under the MIT license (github.com/pfnet/optuna). It had been in production use at Preferred Networks for over a year at the time of writing.
Cited by
- TafBERTa: Learning Grammatical Rules from Small-Scale Language Acquisition Data in Hebrew
- The Truth, The Whole Truth, and Nothing but the Truth: A New Benchmark Dataset for Hebrew Text Credibility Assessment
- DSPy: Compiling Declarative Language Model Calls into Self-Improving Pipelines
- COMET-22: Unbabel-IST 2022 Submission for the Metrics Shared Task
- CometKiwi: IST-Unbabel 2022 Submission for the Quality Estimation Shared Task
- Scaling up CometKiwi: Unbabel-IST 2023 Submission for the Quality Estimation Shared Task
Cite
@misc{akiba2019optuna,
title = {{Optuna: A Next-generation Hyperparameter Optimization Framework}},
author = {Akiba, Takuya and Sano, Shotaro and Yanase, Toshihiko and Ohta, Takeru and Koyama, Masanori},
year = {2019},
doi = {10.48550/arxiv.1907.10902},
eprint = {1907.10902},
archivePrefix = {arXiv},
url = {https://doi.org/10.48550/arxiv.1907.10902}
}