deephyper.skopt.acquisition.gaussian_mes#
- deephyper.skopt.acquisition.gaussian_mes(X, model, k_samples=10, deterministic=False)[source]#
Use the max-value entropy to calculate the acquisition values. Article: https://arxiv.org/abs/1703.01968 Source implementation: zi-w/Max-value-Entropy-Search
The conditional probability P(y=f(x) | x) form a gaussian with a certain mean and standard deviation approximated by the model.
The EI condition is derived by computing
E[u(f(x))]
whereu(f(x)) = 0
, iff(x) > y_opt
andu(f(x)) = y_opt - f(x)
, if``f(x) < y_opt``.This solves one of the issues of the PI condition by giving a reward proportional to the amount of improvement got.
Note that the value returned by this function should be maximized to obtain the
X
with maximum improvement.- Parameters:
X (array-like, shape=(n_samples, n_features)) – Values where the acquisition function should be computed.
model (sklearn estimator that implements predict with
return_std
) – The fit estimator that approximates the function through the methodpredict
. It should have areturn_std
parameter that returns the standard deviation.y_opt (float, default 0) – Previous minimum value which we would like to improve upon.
xi (float, default=0.01) – Controls how much improvement one wants over the previous best values. Useful only when
method
is set to “EI”return_grad (boolean, optional) – Whether or not to return the grad. Implemented only for the case where
X
is a single sample.
- Returns:
values – Acquisition function values computed at X.
- Return type:
array-like, shape=(X.shape[0],)