680 B
680 B
Grid Search
Deterministic hyper-parameter sweeps with optional Rust acceleration.
Usage
from optimizr import grid_search
# Objective returns a scalar score (lower is better)
def objective(params):
lr, dropout = params["lr"], params["dropout"]
return (lr - 0.02)**2 + (dropout - 0.1)**2
best_params, best_score = grid_search(
objective_fn=objective,
param_grid={"lr": [0.005, 0.02, 0.05], "dropout": [0.05, 0.1, 0.2]},
)
print(best_params)
print(best_score)
Notes
- The objective receives a dict of parameters.
- Exhaustive search is deterministic; keep grids small for large models.
- Combine with DE for warm-starting a local region.