PriorAcquisitionFunction(...[, prior_floor, ...])

Weight the acquisition function with a user-defined prior over the optimum.


class smac.acquisition.function.prior_acqusition_function.PriorAcquisitionFunction(acquisition_function, decay_beta, prior_floor=1e-12, discretize=False, discrete_bins_factor=10.0)[source]

Bases: AbstractAcquisitionFunction

Weight the acquisition function with a user-defined prior over the optimum.

See “piBO: Augmenting Acquisition Functions with User Beliefs for Bayesian Optimization” by Carl Hvarfner et al. [HSSL22] for further details.

  • decay_beta (float) – Decay factor on the user prior. A solid default value for decay_beta (empirically founded) is scenario.n_trials / 10.

  • prior_floor (float, defaults to 1e-12) – Lowest possible value of the prior to ensure non-negativity for all values in the search space.

  • discretize (bool, defaults to False) – Whether to discretize (bin) the densities for continous parameters. Triggered for Random Forest models and continous hyperparameters to avoid a pathological case where all Random Forest randomness is removed (RF surrogates require piecewise constant acquisition functions to be well-behaved).

  • discrete_bins_factor (float, defaults to 10.0) – If discretizing, the multiple on the number of allowed bins for each parameter.

property meta: dict[str, Any]

Returns the meta data of the created object.

property model: AbstractModel | None

Return the used surrogate model in the acquisition function.

property name: str

Returns the full name of the acquisition function.