General question: Using scikit-optimize for a black box optimization. Can't find in the doc what model_queue_size does. I'm doing the ask-tell because I can parallelize the calculation of y as described in the example. So, doing some profiling, it looks like the opt.tell() call runs faster when model_queue_size is set smaller. Is that what model_queue_size does - limits the number of sample used in the opt.tell() call? 2nd question, how can I set kappa when using the Optimizier - ask-tell method?
thanks
When using the default model_queue_size=None
all surrogate models are stored in the optimizer's models
attribute. If a number is specified, only model_queue_size
models will be remembered. That is in the the docs.
A new model is added each time tell
is called and old models will be discarded once model_queue_size
is reached. So only the most recent models are remembered. That can be seen by looking at the code.
Not sure why this would affect runtime in your case. I suppose if you run many iterations and models are very large it could be a memory thing.
Kappa can be set by using the acq_func_kwargs
parameter of the Optimizer
constructor as shown in the exploration vs exploitation example.