SYSTEM Cited by 1 source
Scikit-Optimize¶
Definition¶
Scikit-Optimize (aka skopt) is a Python library for
sequential model-based optimization — most commonly Bayesian
optimization — over real-valued, integer, or categorical
parameter spaces. It is part of the scikit-learn ecosystem but
is a separate package.
Core primitive¶
Given a parameter search space and an objective function, the optimizer proposes candidate parameter sets, observes the returned objective value, and uses prior observations to propose subsequent candidates more likely to minimize (or maximize) the objective. The underlying surrogate model is typically a Gaussian process, but random forest / gradient boosting surrogates are also supported.
The sampling primitives (skopt.space.Real, skopt.space.Integer,
skopt.space.Categorical) are what users declare in configuration
to describe the search space.
How Yelp uses it¶
Yelp's Back-Testing Engine
(2026-02-02) uses Scikit-Optimize as its default optimizer.
The YAML search_type: 'scikit-opt' with minimize_metric:
'average-cpl' drives iterative candidate selection against the
ad-budget-allocation simulation's output metrics.
Verbatim from the post: "The optimizer (Bayesian in this case) is designed to extract the most promising candidates that aim at minimizing a given metric."
Yelp also supports grid search and listed search (each candidate specified directly in YAML) as alternatives, but the post notes: "for all kinds of search except Scikit-Opt, the optimizer doesn't really act as an optimizer but just a wrapper that yields the next candidate to try."
Why it matters for system design¶
The relevance for systems work is not the statistical machinery
but the iterative loop pattern: expensive evaluation (Yelp's
back-testing simulation takes non-trivial time per candidate),
small evaluation budget (max_evals = 25 in the example), and
learning from prior results to guide future proposals. This
shape recurs in any simulation-driven parameter-search workload:
performance autotuning, schema-advisor hypothesis-index
evaluation, feature-flag-space exploration.
Canonical instance of concepts/bayesian-optimization-over-parameter-space.
Seen in¶
- sources/2026-02-02-yelp-back-testing-engine-ad-budget-allocation — Yelp's Back-Testing Engine optimizer.
Related¶
- concepts/bayesian-optimization-over-parameter-space
- systems/catboost — paired with Scikit-Optimize in Yelp's simulation (Scikit-Optimize picks candidates; CatBoost predicts simulated outcomes).