ParBayesianOptimization
ParBayesianOptimization copied to clipboard
Parallel Acquisition functions
Hi could you please look into adding parallel acquisition functions such as q-EI or q-UCB? Thanks for your great work so far!
The search for the acquisition function optimum is run in parallel, see getLocalOptimums. Is this what you are referring to?
That's not what I was referring to. I meant acquisition functions which propose multiple query points at the same time. For example choosing q points that maximize the multi-point expected improvement (equation 4 in this paper https://arxiv.org/pdf/1602.05149.pdf). That same paper has an algorithm that might fit neatly into the package.
Yes this package has this ability. See this section of the readme.
In fact this package and the multi-point implementation, pre-dates that paper by a few months, lol.
Sorry for the confusion, the paper that originally worked out the details on q-EI is from 2008 (https://hal.archives-ouvertes.fr/hal-00260579/document), but the first paper gives a good algorithm for optimizing the q-EI acquisition function. Algorithm 1 in (https://arxiv.org/pdf/1602.05149.pdf) is detailed and could work well.
q-EI can be viewed as EI applied to the random variable min{Y(x^{n+1}), . . . ,Y(x^{n+q})}. It seems getLocalOptimums finds q local optima of the original EI. These are only equivalent when q=1.
Thanks for your timely response!
Ahhh it's not as simple as I thought, this looks pretty cool. Do you know of any implementations, in any language? It looks pretty tough to implement.