GPyOpt.acquisitions package

Submodules

GPyOpt.acquisitions.EI module

class GPyOpt.acquisitions.EI.AcquisitionEI(model, space, optimizer=None, cost_withGradients=None, jitter=0.01)

Bases: GPyOpt.acquisitions.base.AcquisitionBase

Expected improvement acquisition function

Parameters:
  • model – GPyOpt class of model
  • space – GPyOpt class of domain
  • optimizer – optimizer of the acquisition. Should be a GPyOpt optimizer
  • cost_withGradients – function
  • jitter – positive value to make the acquisition more explorative.

Note

allows to compute the Improvement per unit of cost

analytical_gradient_prediction = True
static fromConfig(space, optimizer, cost_withGradients, config)

GPyOpt.acquisitions.EI_mcmc module

class GPyOpt.acquisitions.EI_mcmc.AcquisitionEI_MCMC(model, space, optimizer=None, cost_withGradients=None, jitter=0.01)

Bases: GPyOpt.acquisitions.EI.AcquisitionEI

Integrated Expected improvement acquisition function

Parameters:
  • model – GPyOpt class of model
  • space – GPyOpt class of domain
  • optimizer – optimizer of the acquisition. Should be a GPyOpt optimizer
  • cost_withGradients – function
  • jitter – positive value to make the acquisition more explorative

Note

allows to compute the Improvement per unit of cost

analytical_gradient_prediction = True

GPyOpt.acquisitions.LCB module

class GPyOpt.acquisitions.LCB.AcquisitionLCB(model, space, optimizer=None, cost_withGradients=None, exploration_weight=2)

Bases: GPyOpt.acquisitions.base.AcquisitionBase

GP-Lower Confidence Bound acquisition function

Parameters:
  • model – GPyOpt class of model
  • space – GPyOpt class of domain
  • optimizer – optimizer of the acquisition. Should be a GPyOpt optimizer
  • cost_withGradients – function
  • jitter – positive value to make the acquisition more explorative

Note

does not allow to be used with cost

analytical_gradient_prediction = True

GPyOpt.acquisitions.LCB_mcmc module

class GPyOpt.acquisitions.LCB_mcmc.AcquisitionLCB_MCMC(model, space, optimizer=None, cost_withGradients=None, exploration_weight=2)

Bases: GPyOpt.acquisitions.LCB.AcquisitionLCB

Integrated GP-Lower Confidence Bound acquisition function

Parameters:
  • model – GPyOpt class of model
  • space – GPyOpt class of domain
  • optimizer – optimizer of the acquisition. Should be a GPyOpt optimizer
  • cost_withGradients – function
  • exploration_weight – positive parameter to control exploration / exploitation

Note

allows to compute the Improvement per unit of cost

analytical_gradient_prediction = True

GPyOpt.acquisitions.LP module

class GPyOpt.acquisitions.LP.AcquisitionLP(model, space, optimizer, acquisition, transform='none')

Bases: GPyOpt.acquisitions.base.AcquisitionBase

Class for Local Penalization acquisition. Used for batch design. :param model: model of the class GPyOpt :param space: design space of the class GPyOpt. :param optimizer: optimizer of the class GPyOpt. :param acquisition: acquisition function of the class GPyOpt :param transform: transformation applied to the acquisition (default, none).

Note

irrespective of the transformation applied the penalized acquisition is always mapped again to the log space.

This way gradients can be computed additively and are more stable.

acquisition_function(x)

Returns the value of the acquisition function at x.

acquisition_function_withGradients(x)

Returns the acquisition function and its its gradient at x.

analytical_gradient_prediction = True
d_acquisition_function(x)

Returns the gradient of the acquisition function at x.

update_batches(X_batch, L, Min)

Updates the batches internally and pre-computes the

GPyOpt.acquisitions.MPI module

class GPyOpt.acquisitions.MPI.AcquisitionMPI(model, space, optimizer=None, cost_withGradients=None, jitter=0.01)

Bases: GPyOpt.acquisitions.base.AcquisitionBase

Maximum probability of improvement acquisition function

Parameters:
  • model – GPyOpt class of model
  • space – GPyOpt class of domain
  • optimizer – optimizer of the acquisition. Should be a GPyOpt optimizer
  • cost_withGradients – function
  • jitter – positive value to make the acquisition more explorative

Note

allows to compute the Improvement per unit of cost

analytical_gradient_prediction = True
static fromConfig(space, optimizer, cost_withGradients, config)

GPyOpt.acquisitions.MPI_mcmc module

class GPyOpt.acquisitions.MPI_mcmc.AcquisitionMPI_MCMC(model, space, optimizer=None, cost_withGradients=None, jitter=0.01)

Bases: GPyOpt.acquisitions.MPI.AcquisitionMPI

Integrated Maximum Probability of Improvement acquisition function

Parameters:
  • model – GPyOpt class of model
  • space – GPyOpt class of domain
  • optimizer – optimizer of the acquisition. Should be a GPyOpt optimizer
  • cost_withGradients – function
  • jitter – positive value to make the acquisition more explorative

Note

allows to compute the Improvement per unit of cost

analytical_gradient_prediction = True

GPyOpt.acquisitions.base module

class GPyOpt.acquisitions.base.AcquisitionBase(model, space, optimizer, cost_withGradients=None)

Bases: object

Base class for acquisition functions in Bayesian Optimization

Parameters:
  • model – GPyOpt class of model
  • space – GPyOpt class of domain
  • optimizer – optimizer of the acquisition. Should be a GPyOpt optimizer
acquisition_function(x)

Takes an acquisition and weights it so the domain and cost are taken into account.

acquisition_function_withGradients(x)

Takes an acquisition and it gradient and weights it so the domain and cost are taken into account.

analytical_gradient_prediction = False
static fromDict(space, optimizer, cost_withGradients, config)
optimize(duplicate_manager=None)

Optimizes the acquisition function (uses a flag from the model to use gradients or not).

Module contents

GPyOpt.acquisitions.select_acquisition(name)

Acquisition selector