主要内容

重新开始

恢复贝叶斯优化

描述

例子

newresults=简历(结果名称,值恢复已产生的优化结果带有一个或多个指定的附加选项名称,值对参数。

例子

全部折叠

这个例子展示了如何恢复贝叶斯优化。优化是针对一个被称为Rosenbrock函数的确定性函数,它是非线性优化的一个著名的测试用例。该函数的全局最小值为0在这一点上[1]

创建两个以…为界的实变量5而且5

x1 = optimizableVariable(x1的, 5, 5]);x2 = optimizableVariable(“x2”, 5, 5]);Vars = [x1,x2];

创建目标函数。

函数F = rosenbroks (x) F = 100*(x。X2 - xx1 ^2)^2 + (1 - xx1)^2;
有趣= @ rosenbroks;

为了重现性,设置随机种子,将采集函数设置为“expected-improvement-plus”在优化中。

rng默认的结果= bayesopt(fun,vars,“详细”0,...“AcquisitionFunctionName”“expected-improvement-plus”);

查看找到的最佳点和最佳建模目标。

结果。XAtMinObjective结果。MinEstimatedObjective
Ans = 1x2表x1 x2 ______ ______ 1.7902 3.2287 Ans = -9.1194

最佳点与最优点有些接近,但函数模型不准确。继续优化30个点(总共60个点),这一次告诉优化器目标函数是确定的。

Newresults = resume(结果,“IsObjectiveDeterministic”,真的,“MaxObjectiveEvaluations”, 30);newresults。XAtMinObjective newresults。MinEstimatedObjective
Ans = 1x2表x1 x2 _______ _______ 0.96022 0.92508 Ans = -0.0094

这次的目标函数模型更接近真实的函数。最佳点更接近真正的最优点。

输入参数

全部折叠

贝叶斯优化结果,指定为aBayesianOptimization对象。

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。

在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字在报价。

例子:简历(结果,“MaxObjectiveEvaluations”,60)

可以使用被接受的任何名称-值对bayesopt除了那些以最初的.看到bayesopt输入参数

请注意

MaxObjectiveEvaluations而且MaxTime名值对的平均值额外的时间或计算,上面的数字存储在结果.例如,默认的计算次数是30.除了原来的规格。

此外,还可以使用以下名称-值对。

修改变量,指定为OptimizableVariable对象。

在优化中,只能更改变量的以下属性。

  • 范围实数或整数变量。例如,

    xvar = optimizableVariable(“x”, -10, 10);%修改范围:xvar。范围= [1,5];
  • 类型之间的“整数”而且“真实”的.例如,

    xvar。类型=“整数”
  • 变换之间的实数或整数变量“日志”而且“没有”.例如,

    xvar。变换=“日志”

输出参数

全部折叠

优化结果,返回为BayesianOptimization对象。

版本历史

在R2016b中引入