Auto-Optimization
qa optimize
EXPERIMENTAL: This feature is experimental and the API is subject to change at any time.
Specifically, we may change the solver backend to
nevergrad, offer multiple choices, etc.
It uses scikit-optimize, which is installed with qaboard.
qa optimize --help
qa --label my-optim --share optimize --batch my-batch --config-file optim.yaml --checkpoint optim.pkl
The configuration file sets the objective, the number of evaluations, the search_space, and optional solver settings or fixed preset_params. The web application's tuning page shows a commented template for it ("optimize" search type), and runs qa optimize for you.

Useful options:
--checkpoint: the optimizer's state is saved there after each iteration, and loaded if it exists, to restart interrupted optimizations. (At the moment you need to give it.)parallel_samplingin the configuration file, or--parallel-param-sampling: how many parameter sets are evaluated at the same time (default 1).keep_all_best_iters: true: by default the results of the previous "best iteration" are deleted when a better one is found. Use it to keep them.QA_SEED: the random seed (default 101), for reproducible optimizations.
Each iteration runs qa batch with the label my-optim|iterN. During the optimization, qa sets QA_OPTIM_DIR to the experiment's batch directory, where convergence plots are saved.
Select the experiment's batch on the commit page, then the Analysis view:

WIP: We're working on section about "auto-optimization". Stay tuned!