BayesianMinimization

BayesianMinimization [f,{conf1,conf2,}]

gives an object representing the result of Bayesian minimization of the function f over the configurations confi.

BayesianMinimization[f,reg]

minimizes over the region represented by the region specification reg.

BayesianMinimization[f,sampler]

minimizes over configurations obtained by applying the function sampler.

BayesianMinimization [f,{conf1,conf2,}nsampler]

applies the function nsampler to successively generate configurations starting from the confi.

Details and Options

  • BayesianMinimization[] returns a BayesianMinimizationObject[] whose properties can be obtained using BayesianMinimizationObject[]["prop"].
  • Possible properties include:
  • "EvaluationHistory"configurations and values explored during minimization
    "Method"method used for Bayesian minimization
    "MinimumConfiguration"configuration found that minimizes the result from f
    "MinimumValue"estimated minimum value obtained from f
    "NextConfiguration"configuration to sample next if minimization were continued
    "PredictorFunction"best prediction model found for the function f
    "Properties"list of all available properties
  • Configurations can be of any form accepted by Predict (single data element, list of data elements, association of data elements, etc.) and of any type accepted by Predict (numerical, textual, sounds, images, etc.).
  • The function f must output a real-number value when applied to a configuration conf.
  • BayesianMinimization[f,] attempts to find a good minimum using the smallest number of evaluations of f.
  • In BayesianMinimization[f,spec], spec defines the domain of the function f. A domain can be defined by a list of configurations, a geometric region, or a configuration generator function.
  • In BayesianMinimization[f,sampler], sampler[] must output a configuration suitable for f to be applied to it.
  • In BayesianMinimization[f,{conf1,conf2,}->nsampler], nsampler[conf] must output a configuration.
  • BayesianMinimization takes the following options:
  • AssumeDeterministicFalsewhether to assume that f is deterministic
    InitialEvaluationHistoryNoneintial set of configurations and values
    MaxIterations100maximum number of iterations
    MethodAutomaticmethod used to determine configurations to evaluate
  • Possible settings for Method include:
  • Automaticpick the method automatically
    "MaxExpectedImprovement"maximize expected improvement over current best value
    "MaxImprovementProbability"maximize improvement probability over current best value

Examples

open allclose all

Basic Examples  (3)

Minimize a function over an interval:

In[1]:=
Click for copyable input
Out[1]=

Use the resulting BayesianMinimizationObject[] to get the estimated minimum configuration:

In[2]:=
Click for copyable input
Out[2]=

Get the estimated minimum function value:

In[3]:=
Click for copyable input
Out[3]=

Minimize a function over a set of configurations:

In[1]:=
Click for copyable input
Out[1]=

Get the minimum configuration over the set:

In[2]:=
Click for copyable input
Out[2]=

Minimize a function over a domain defined by a random generator:

In[1]:=
Click for copyable input
Out[1]=

Get the estimated minimum value:

In[2]:=
Click for copyable input
Out[2]=

Scope  (4)

Options  (4)

Applications  (2)

Possible Issues  (2)

See Also

BayesianMaximization  BayesianMinimizationObject  NMinimize  FindMinimum  Predict

Introduced in 2016
(11.0)