Sequential candidate generation and set_X_pending #922
-
Hi, I am trying to understand how exactly the sequential candidate generation work. The setting I was thinking is where the domain is discrete so the appropriate optimization function is
So clearly the model is somehow "conditioned" on the first candidate by setting the
Thank you! |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 2 replies
-
So the point here is that qUCB (all MC acquisition functions, actually) computes the acquisition value of the concatenated input
Yes, this would also be a reasonable approach to generating candidates sequentially. But the thing we do is easier / more elegant / faster :) |
Beta Was this translation helpful? Give feedback.
So the point here is that qUCB (all MC acquisition functions, actually) computes the acquisition value of the concatenated input
X_aug = [X, X_pending]
(this is automated via the decorator), but the optimization only happens over the inputX
. Therefore, if a previous candidateX0
is part ofX_pending
, the acquisition value ofacq_(X0) = acq(X_aug) = acq([X0, X0])
is going to be lower than for other values b/c of the repeated occurrence ofX0
. You can think of this as the conditioning happening implicitly. See Section 5.2 of https://proceedings.neurips.cc/paper/2020/file/f5b1b89d98b7286673128a5fb112cb9a-Paper.pdf for a discussion.