Exploration objective

The objective is to learn the global behaviour of a target variable by exploring regions with large information gain. It implements two exploration strategies:

uncertainty:

Samples are targeted that have a large prediction uncertainty. That is, the posterior of the target variable has a large variance.

surprise:

This strategy only works in conjunction with neural network ensembles. It considers the gradient of the weights of the output layer (feature layer) with respect to the loss \(L(\mathbf{p}) = \sum_i \left(nn_i(\mathbf{p}) - \overline{y}(\mathbf{p})\right)^2\), where \(nn_i(\mathbf{p})\) is the prediction of the \(i\)-th ensemble member and \(\overline{y}(\mathbf{p})\) is the fantasy of the function value (i.e. the average of the ensemble members). The strategy targets parameters with maximal gradient magnitude, \(\Vert \nabla_\theta L(\mathbf{p}) \Vert_2\), where \(\theta\) denotes the weights of the output layer.

If using a neural network ensemble, the 'surprise' strategy offers often offers more informed sampling leading to slightly more accurate predictions.

name (str)

The name of the objective.

Default: 'objective'

variable (str)

The name of a single-output variable that specifies the objective value.

Default: The first variable in the list of all variables.

penalize_boundaries (bool)

If true, the uncertainty is penalized by a small distance to the domain boundary.

Default: False

min_uncertainty (float)

The study is stopped if the uncertainty (square root of variance) of the objective at the last 5 sampling points was below min_uncertainty.

Default: 0.0

strategy (str)

Exploration strategy. If strategy='surprise' all input surrogates must be neural network ensembles.

Default: 'uncertainty' Choices: 'uncertainty', 'surprise'.