bayesopt
使用贝叶斯优化选择最优的机器学习超参数
描述
例子
创建一个BayesianOptimization
对象使用bayesopt
此示例演示如何创建BayesianOptimization
对象,使用bayesopt
尽量减少交叉验证损失。
优化KNN分类器的超参数电离层
数据,即找到最小化交叉验证损失的KNN超参数。有bayesopt
最小化以下超参数:
最近的邻域大小从1到30
距离函数
“chebychev”
,“欧几里得”
,闵可夫斯基的
.
为了再现性,设置随机种子,设置分区,并设置AcquisitionFunctionName
选项“expected-improvement-plus”
.要抑制迭代显示,请设置“详细”
来0
.传递分区c
拟合数据X
而且Y
到目标函数有趣的
通过创建有趣的
作为包含此数据的匿名函数。看到参数化功能.
负载电离层rng默认的num = optimizableVariable(“n”(1、30),“类型”,“整数”);dst = optimizableVariable(dst的, {“chebychev”,“欧几里得”,闵可夫斯基的},“类型”,“分类”);C = cvpartition(351,“Kfold”5);fun = @(x)kfoldLoss(fitcknn(x,Y,)“CVPartition”c“NumNeighbors”x.n,...“距离”char (x.dst),“NSMethod”,“详尽”));结果= bayesopt(fun,[num,dst],“详细”0,...“AcquisitionFunctionName”,“expected-improvement-plus”)
results = BayesianOptimization with properties: ObjectiveFcn: [function_handle] variabledescription: [1x2 optimizableVariable] Options: [1x1 struct] MinObjective: 0.1197 XAtMinObjective: [1x2 table] minestimatedobjobjective: 0.1213 xatminestimatedobjobjective: [1x2 table] numobjectiveevaluationevaluts30 TotalElapsedTime: 35.9996 NextPoint: [1x2 table] XTrace: [30x2 table] ObjectiveTrace: [30x1 double] ConstraintsTrace: [] UserDataTrace: {30x1 cell} ObjectiveEvaluationTimeTrace:[30x1 double] IterationTimeTrace: [30x1 double] ErrorTrace: [30x1 double]可行性追踪:[30x1 logical]可行性概率追踪:[30x1 double] IndexOfMinimumTrace: [30x1 double] objectivminimumtrace: [30x1 double] estimatedobjectivminimumtrace: [30x1 double]
带有耦合约束的贝叶斯优化
耦合约束是一种只能通过评估目标函数来评估的约束。在这种情况下,目标函数是支持向量机模型的交叉验证损失。耦合约束为支持向量个数不超过100。模型细节在里面使用bayesopt优化交叉验证的分类器.
为分类创建数据。
rng默认的Grnpop = mvnrnd([1,0],eye(2),10);Redpop = mvnrnd([0,1],eye(2),10);Redpts = 0 (100,2);GRNPTS = redpts;为i = 1:10 0 grnpts(我:)= mvnrnd (grnpop(兰迪(10):)、眼睛(2)* 0.02);redpts(我)= mvnrnd (redpop(兰迪(10):)、眼睛(2)* 0.02);结束Cdata = [grnpts;redpts];GRP = ones(200,1);Grp (101:200) = -1;C = cvpartition(200,“KFold”10);sigma = optimizableVariable(“σ”(1 e-5, 1 e5),“转换”,“日志”);box = optimizableVariable(“盒子”(1 e-5, 1 e5),“转换”,“日志”);
目标函数为分区SVM模型的交叉验证损失c
.耦合约束是支持向量的个数减去100.5。这确保了100个支持向量给出一个负的约束值,而101个支持向量给出一个正的值。该模型有200个数据点,因此耦合约束值的范围从-99.5(总是至少有一个支持向量)到99.5。正值表示约束不满足。
函数[objective,constraint] = mysvmfun(x,cdata,grp,c) SVMModel = fitcsvm(cdata,grp, c)“KernelFunction”,“rbf”,...“BoxConstraint”x.box,...“KernelScale”, x.sigma);cvModel = crossval(SVMModel,“CVPartition”c);objective = kfoldLoss(cvModel);constraint = sum(SVMModel.IsSupportVector)-100.5;
传递分区c
拟合数据cdata
而且grp
到目标函数有趣的
通过创建有趣的
作为包含此数据的匿名函数。看到参数化功能.
Fun = @(x)mysvmfun(x,cdata,grp,c);
设置NumCoupledConstraints
来1
因此优化器知道存在一个耦合约束。设置用于绘制约束模型的选项。
结果= bayesopt(fun,[sigma,box],“IsObjectiveDeterministic”,真的,...“NumCoupledConstraints”, 1“PlotFcn”,...{@plotMinObjective, @plotConstraintModels},...“AcquisitionFunctionName”,“expected-improvement-plus”,“详细”, 0);
大多数点会导致支持向量的不可行的数量。
并行贝叶斯优化
利用并行目标函数评估提高贝叶斯优化的速度。
为贝叶斯优化准备变量和目标函数。
目标函数是电离层数据的交叉验证错误率,这是一个二元分类问题。使用fitcsvm
作为分类器,用BoxConstraint
而且KernelScale
作为参数进行优化。
负载电离层box = optimizableVariable(“盒子”(1的军医,1 e3),“转换”,“日志”);kern = optimizableVariable(“仁”(1的军医,1 e3),“转换”,“日志”);Vars = [box,kern];fun = @(vars)kfoldLoss(fitcsvm(X,Y,)“BoxConstraint”vars.box,“KernelScale”vars.kern,...“Kfold”5));
利用并行贝叶斯优化算法寻找交叉验证误差最小的参数。
结果= bayesopt(fun,vars,“UseParallel”,真正的);
把目标功能复制给工人…把目标函数复制给工人。
|===============================================================================================================| | Iter | |活跃Eval客观客观| | | BestSoFar | BestSoFar盒| | kern | | |工人结果| | |运行时| | (estim(观察) .) | | | |===============================================================================================================| | 1 | 2 |接受| 0.2735 | 0.56171 | 0.13105 | 0.13108 | 0.0002608 | 0.2227 | | 2 | 2 |接受| 0.35897 | 0.4062 |0.13105 | 0.13108 | 3.6999 |44.01 | | 3 | 2 |接受| 0.13675 | 0.42727 | 0.13105 | 0.13108 | 0.33594 | 0.39276 | | 4 | 2 |接受| 0.35897 | 0.4453 | 0.13105 | 0.13108 | 0.014127 | 449.58 | | 5 | 2 |最好的| 0.13105 | 0.45503 | 0.13105 | 0.13108 | 0.29713 | 1.0859 |
| 6 | 6 |接受| 0.35897 | 0.16605 | 0.13105 | 0.13108 | 8.1878 | 256.9 |
| 7 | 5 |最好| 0.11396 | 0.51146 | 0.11396 | 0.11395 | 8.7331 | 0.7521 | | 8 | 5 |接受| 0.14245 | 0.24943 | 0.11396 | 0.11395 | 0.0020774 | 0.022712 |
| 0.10826 | 4.0711 | 0.10826 | 0.10827 | 0.0015925 | 0.0050225 |
| 10 | 6 |接受| 0.25641 | 16.265 | 0.10826 | 0.10829 | 0.00057357 | 0.00025895 |
| 0.1339 | 15.581 | 0.10826 | 0.10829 | 1.4553 | 0.011186 |接受| 0.1339 | 15.581 | 0.10826 | 0.10829 |
| 12 | 6 |接受| 0.16809 | 19.585 | 0.10826 | 0.10828 | 0.26919 | 0.00037649 |
| 13 | 6 |接受| 0.20513 | 18.637 | 0.10826 | 0.10828 | 369.59 | 0.099122 |
| 0.12536 | 0.11382 | 0.10826 | 0.10829 | 5.7059 | 2.5642 |接受| 0.12536 | 0.11382 | 0.10826 |
| 15 | 6 |接受| 0.13675 | 2.63 | 0.10826 | 0.10828 | 984.19 | 2.2214 |
| 16 | 6 |接受| 0.12821 | 2.0743 | 0.10826 | 0.11144 | 0.0063411 | 0.0090242 |
| 17 | 6 |接受| 0.1339 | 0.1939 | 0.10826 | 0.11302 | 0.00010225 | 0.0076795 |
| 18 | 6 |接受| 0.12821 | 0.20933 | 0.10826 | 0.11376 | 7.7447 | 1.2868 |
| | 4 | 19日接受| 0.55556 | 17.564 | 0.10826 | 0.10828 | 0.0087593 | 0.00014486 | | 20 | 4 |接受| 0.1396 | 16.473 | 0.10826 | 0.10828 | 0.054844 | 0.004479 | |===============================================================================================================| | Iter | |活跃Eval客观客观| | | BestSoFar | BestSoFar盒| | kern | | |工人结果| | |运行时|(观察)| (estim) | | ||===============================================================================================================| | 21日| 4 |接受| 0.1339 | 0.17127 | 0.10826 | 0.10828 | 9.2668 | 1.2171 |
| 22 | 4 |接受| 0.12821 | 0.089065 | 0.10826 | 0.10828 | 12.265 | 8.5455 |
| 0.12536 | 0.073586 | 0.10826 | 0.10828 | 1.3355 | 2.8392 |
| 24 | 4 |接受| 0.12821 | 0.08038 | 0.10826 | 0.10828 | 131.51 | 16.878 |
| 25 | 3 |接受| 0.11111 | 10.687 | 0.10826 | 0.10867 | 1.4795 | 0.041452 | | 26 | 3 |接受| 0.13675 | 0.18626 | 0.10826 | 0.10867 | 2.0513 | 0.70421 |
| 27 | 6 |接受| 0.12821 | 0.078559 | 0.10826 | 0.10868 | 980.04 | 44.19 |
| 28 | 5 |接受| 0.33048 | 0.089844 | 0.10826 | 0.10843 | 0.41821 | 10.208 | | 29 | 5 |接受| 0.16239 | 0.12688 | 0.10826 | 0.10843 | 172.39 | 141.43 |
| 30 | | 14.75 |接受| 0.11966 | 0.14597 | 0.10826 | 0.10846 | 639.15 |
__________________________________________________________ 优化完成。最大目标:达到30。总运行时间:48.2085秒。总目标函数评价时间:128.3472最佳观测可行点:box kern _________ _________ 0.0015925 0.0050225观测目标函数值= 0.10826估计目标函数值= 0.10846函数评价时间= 4.0711最佳估计可行点(根据模型):box kern _________ _________ 0.0015925 0.0050225估计目标函数值= 0.10846估计函数评价时间= 2.8307
返回贝叶斯模型中的最佳可行点结果
通过使用bestPoint
函数。使用默认条件min-visited-upper-confidence-interval
,确定最佳可行点作为访问点,该访问点使目标函数值上置信区间最小。
zbest = bestPoint(结果)
zb =1×2表Box kern _________ _________ 0.0015925 0.0050225
表zb
的最优估计值“BoxConstraint”
而且“KernelScale”
名称-值对参数。使用这些值来训练一个新的优化的分类器。
Mdl = fitcsvm(X,Y,“BoxConstraint”zbest.box,“KernelScale”, zbest.kern);
观察,最佳的参数Mdl
.
Mdl.BoxConstraints (1)
Ans = 0.0016
Mdl.KernelParameters.Scale
Ans = 0.0050
输入参数
有趣的
- - - - - -目标函数
函数处理|parallel.pool.Constant
谁的价值
是函数句柄
目标函数,指定为函数句柄或,当UseParallel
名值对为真正的
,一个parallel.pool.Constant
(并行计算工具箱)谁的价值
是函数句柄。通常情况下,有趣的
返回具有可调超参数来控制训练的机器学习模型的损失度量(如错误分类错误)。有趣的
有这些签名:
目标=乐趣(x)%或[目标,约束]=乐趣(x)%或[目标,约束,用户数据]=乐趣(x)
有趣的
接受x
1 × -D
表的变量值,和返回客观的
,表示目标函数值的实标量有趣的(x)
.
可选地,有趣的
返回:
约束
,一个耦合约束违反的实向量。有关定义,请参见耦合约束.约束(j) > 0
意味着约束j
是违反了。约束(j) < 0
意味着约束j
是满意的。用户数据
,任何类型的实体(如标量、矩阵、结构或对象)。作为自定义绘图函数的示例,该函数使用用户数据
,请参阅创建一个自定义Plot函数.
有关使用parallel.pool.Constant
与bayesopt
,请参阅把目标函数放在工人身上.
例子:@objfun
数据类型:function_handle
var
- - - - - -变量描述
向量的optimizableVariable
对象定义要调优的超参数
变量描述,指定为向量optimizableVariable
对象定义要调优的超参数。
例子:(X1, X2)
,在那里X1
而且X2
是optimizableVariable
对象
名称-值参数
指定可选参数对为Name1 = Value1,…,以=家
,在那里的名字
参数名称和价值
对应的值。名-值参数必须出现在其他参数之后,但对的顺序并不重要。
在R2021a之前,名称和值之间用逗号隔开,并括起来的名字
在报价。
例子:results = bayesopt(fun,vars,' acquire - functionname ','expected-improvement-plus')
AcquisitionFunctionName
- - - - - -函数来选择下一个评估点
“expected-improvement-per-second-plus”
(默认)|“expected-improvement”
|“expected-improvement-plus”
|“expected-improvement-per-second”
|“lower-confidence-bound”
|“probability-of-improvement”
函数来选择下一个计算点,指定为列出的选项之一。
获取函数,其名称包括每秒
不会产生可重复的结果,因为优化依赖于目标函数的运行时间。获取函数,其名称包括+
当他们过度开发某一区域时,修改他们的行为。有关更多细节,请参见采集功能类型.
例子:“AcquisitionFunctionName”、“expected-improvement-per-second”
IsObjectiveDeterministic
- - - - - -指定确定的目标函数
假
(默认)|真正的
指定确定性目标函数,指定为假
或真正的
.如果有趣的
是随机的(也就是说,有趣的(x)
可以为相同的返回不同的值x
),然后设置IsObjectiveDeterministic
来假
.在这种情况下,bayesopt
估计优化期间的噪声级别。
例子:“IsObjectiveDeterministic”,真的
数据类型:逻辑
ExplorationRatio
- - - - - -探索倾向
0.5
(默认)|积极的现实
探索的倾向,指定为正实数。适用于“expected-improvement-plus”
而且“expected-improvement-per-second-plus”
采集功能。看到+.
例子:“ExplorationRatio”,0.2
数据类型:双
GPActiveSetSize
- - - - - -拟合高斯过程模型GPActiveSetSize
或者更少的点数
300
(默认)|正整数
拟合高斯过程模型GPActiveSetSize
或者更少的点,指定为正整数。当bayesopt
去过很多地方GPActiveSetSize
点,使用GP模型拟合模型的后续迭代GPActiveSetSize
点。bayesopt
均匀随机地选择被访问点,而不替换被访问点。使用更少的点导致更快的GP模型拟合,以可能更不准确的拟合为代价。
例子:“GPActiveSetSize”,80年
数据类型:双
UseParallel
- - - - - -并行计算
假
(默认)|真正的
并行计算,指定为假
(不要并行计算)或真正的
(并行计算)。并行计算需要并行计算工具箱™。
bayesopt
在并行工作者上并发地执行并行目标函数评估。有关算法的详细信息,请参见并行贝叶斯优化.
例子:“UseParallel”,真的
数据类型:逻辑
ParallelMethod
- - - - - -并行工作者目标函数值的归责方法
“clipped-model-prediction”
(默认)|模型预测的
|“max-observed”
|“min-observed”
并行工作者目标函数值的归责方法,具体为“clipped-model-prediction”
,模型预测的
,“max-observed”
,或“min-observed”
.为了生成一个新的计算点,bayesopt
适用于所有点的高斯过程,包括对工人的评价点。为了适应这个过程,bayesopt
为当前在工人上的点输入目标函数值。ParallelMethod
指定用于imputation的方法。
“clipped-model-prediction”
-计算这些数量的最大值:点的平均高斯过程预测
x
可行访问点中的最小观测目标函数
所有可行点中的最小模型预测
模型预测的
-在该点处输入平均高斯过程预测x
.“max-observed”
-在可行点之间输入最大观测目标函数值。“min-observed”
-在可行点之间输入最小观测目标函数值。
例子:“ParallelMethod”、“max-observed”
MinWorkerUtilization
- - - - - -活动并行工作者数量的容忍度
地板(0.8 * Nworkers)
(默认)|正整数
活动并行工作者数量的公差,指定为正整数。后bayesopt
分配一个要求值的点,在计算要分配的新点之前,它检查是否小于MinWorkerUtilization
工人们很活跃。如果是这样,bayesopt
将边界内的随机点分配给所有可用的工作者。否则,bayesopt
计算一个工人的最佳点数。bayesopt
创建随机点比创建拟合点快得多,因此这种行为会导致更高的工作者利用率,但代价可能是较差的点。详情请参见并行贝叶斯优化.
例子:“MinWorkerUtilization”,3
数据类型:双
MaxObjectiveEvaluations
- - - - - -目标函数评价极限
30.
(默认)|正整数
目标函数求值极限,指定为正整数。
例子:“MaxObjectiveEvaluations”,60
数据类型:双
NumSeedPoints
- - - - - -初始评估点的数量
4
(默认)|正整数
初始计算点的数目,指定为正整数。bayesopt
在变量边界内随机选择这些点,根据的设置变换
为每个变量设置(对于“没有”
,对数间隔为“日志”
).
例子:“NumSeedPoints”,10
数据类型:双
XConstraintFcn
- - - - - -变量的确定性约束
[]
(默认)|函数处理
ConditionalVariableFcn
- - - - - -条件变量约束
[]
(默认)|函数处理
条件变量约束,指定为函数句柄。
详情请参见条件约束- ConditionalVariableFcn.
例子:ConditionalVariableFcn, @condfun
数据类型:function_handle
NumCoupledConstraints
- - - - - -耦合约束数
0
(默认)|正整数
耦合约束的个数,指定为正整数。详情请参见耦合约束.
请注意
NumCoupledConstraints
当您有耦合约束时,是必需的。
例子:“NumCoupledConstraints”,3
数据类型:双
AreCoupledConstraintsDeterministic
- - - - - -说明耦合约束是否确定
真正的
对于所有耦合约束(默认)|逻辑向量
指示耦合约束是否确定,指定为长度的逻辑向量NumCoupledConstraints
.详情请参见耦合约束.
例子:“AreCoupledConstraintsDeterministic”(真的,假,真的)
数据类型:逻辑
详细的
- - - - - -命令行显示级别
1
(默认)|0
|2
命令行显示级别,指定为0
,1
,或2
.
0
-没有命令行显示。1
-在每次迭代时,显示迭代次数、结果报告(见下一段)、目标函数模型、目标函数评估时间、最佳(最低)观察到的目标函数值、最佳(最低)估计的目标函数值和观察到的约束值(如果有)。当并行优化时,显示还包括一个列,显示活动工人的数量,在将一个工作分配给下一个工人后计算。每次迭代的结果报告如下所示:
接受
-目标函数返回有限值,满足所有约束条件。最好的
-满足约束条件,目标函数在可行点中返回最小值。错误
-目标函数返回一个不是有限实标量的值。Infeas
—至少有一个约束被违反。
2
-同1
,添加诊断信息,如选择下一个点的时间、模型拟合时间、“加”获取函数声明过度开发的指示,以及由于并行利用率低,并行工人被分配到随机点。
例子:“详细”,2
数据类型:双
OutputFcn
- - - - - -每次迭代后调用的函数
{}
(默认)|函数处理|函数句柄的单元格数组
每次迭代后调用的函数,指定为函数句柄或函数句柄的单元格数组。输出函数可以暂停求解器,并可以执行任意计算,包括创建变量或绘图。使用函数句柄的单元格数组指定几个输出函数。
有两个内置的输出函数:
@assignInBase
-构造BayesianOptimization
实例,并将其分配给基本工作区中的一个变量。方法选择变量名SaveVariableName
名称-值对。@saveToFile
-构造BayesianOptimization
实例,并将其保存到当前文件夹中的一个文件中。方法选择文件名SaveFileName
名称-值对。
您可以编写自己的输出函数。详情请参见贝叶斯优化输出函数.
例子:OutputFcn, {@saveToFile @myOutputFunction}
数据类型:细胞
|function_handle
SaveFileName
- - - - - -的文件名@saveToFile
输出函数
“BayesoptResults.mat”
(默认)|特征向量|字符串标量
的文件名@saveToFile
输出函数,指定为字符向量或字符串标量。文件名可以包含路径,例如“. . /优化/ September2.mat”
.
例子:“SaveFileName”、“September2.mat”
数据类型:字符
|字符串
SaveVariableName
- - - - - -的变量名。@assignInBase
输出函数
“BayesoptResults”
(默认)|特征向量|字符串标量
的变量名。@assignInBase
输出函数,指定为字符向量或字符串标量。
例子:“SaveVariableName”、“September2Results”
数据类型:字符
|字符串
PlotFcn
- - - - - -Plot函数在每次迭代后调用
{@plotObjectiveModel, @plotMinObjective}
(默认)|“所有”
|函数处理|函数句柄的单元格数组
Plot函数在每次迭代后调用,指定为“所有”
、函数句柄或函数句柄的单元格数组。plot函数可以暂停求解器,并且可以执行任意计算,除了绘图之外,还可以创建变量。
不指定绘图函数为[]
.
“所有”
调用所有内置的plot函数。使用函数句柄的单元格数组指定几个plot函数。
下表中显示了内置的plot函数。
模型图-适用于D≤2时 | 描述 |
---|---|
@plotAcquisitionFunction |
绘制采集函数曲面。 |
@plotConstraintModels |
绘制每个约束模型曲面。负值表示可行点。 也可以画出P(可行的)表面。 还绘制错误模型,如果它存在,范围从 绘制误差= 2*概率(误差)- 1。 |
@plotObjectiveEvaluationTimeModel |
绘制目标函数评价时间模型曲面。 |
@plotObjectiveModel |
画出 |
追踪图-适用于所有D | 描述 |
---|---|
@plotObjective |
画出每个观察到的函数值与函数计算次数的关系。 |
@plotObjectiveEvaluationTime |
绘制每个观察到的函数求值运行时与函数求值次数的关系。 |
@plotMinObjective |
绘制最小观测值和估计函数值与函数计算次数的关系。 |
@plotElapsedTime |
绘制三条曲线:优化的总运行时间、总功能评估时间、总建模和点选择时间,所有这些都与功能评估的数量相关。 |
你可以写自己的绘图函数。详情请参见贝叶斯优化图函数.
请注意
当存在耦合约束时,迭代显示和绘图函数可能会给出违反直觉的结果,如:
一个最低目标情节可以增加。
优化可以宣布一个问题是不可行的,即使它显示了一个较早的可行点。
这种行为的原因是,关于一个点是否可行的决策可能会随着优化的进行而改变。bayesopt
根据其约束模型确定可行性,该模型随bayesopt
评估点。因此,当最小点后来被认为是不可行的时候,“最小目标”图可以增加,迭代显示可以显示一个后来被认为是不可行的可行点。
例子:“PlotFcn”、“所有”
数据类型:字符
|字符串
|细胞
|function_handle
InitialX
- - - - - -初始评价点
NumSeedPoints
——- - - - - -D
边界内的随机初始点(默认)|N
——- - - - - -D
表格
初始评价点,指定为N
——- - - - - -D
表,N
是评价点的个数,和D
是变量的个数。
请注意
如果只有InitialX
,则将其解释为要进行评估的初始点。对目标函数在InitialX
.
如果还提供了任何其他初始化参数,InitialX
被解释为先前的函数评估数据。没有对目标函数进行评估。任何缺失的值都设置为南
.
数据类型:表格
InitialObjective
- - - - - -对应的客观值InitialX
[]
(默认)|长度,N
向量
对应的客观值InitialX
,指定为长度-N
向量,N
是评价点的数量。
例子:“InitialObjective”,(17;3;-12.5)
数据类型:双
InitialConstraintViolations
- - - - - -耦合约束的约束违反
[]
(默认)|N
——- - - - - -K
矩阵
对耦合约束的约束违反,指定为N
——- - - - - -K
矩阵,N
是评价点的数量和K
是耦合约束的个数。详情请参见耦合约束.
数据类型:双
InitialErrorValues
- - - - - -错误InitialX
[]
(默认)|长度,N
带条目的向量-1
或1
错误InitialX
,指定为长度-N
带条目的向量-1
或1
,在那里N
是评价点的数量。指定-1
没有错误,而且1
一个错误。
例子:“InitialErrorValues”,[1,1,1,1,1)
数据类型:双
InitialUserData
- - - - - -对应的初始数据InitialX
[]
(默认)|长度,N
细胞向量
InitialObjectiveEvaluationTimes
- - - - - -的目标函数的评价次数InitialX
[]
(默认)|长度,N
向量
的目标函数的评价次数InitialX
,指定为长度-N
向量,N
是评价点的数量。时间是以秒为单位的。
数据类型:双
InitialIterationTimes
- - - - - -第一次的时间N
迭代
{}
(默认)|长度,N
向量
第一次的时间N
迭代,指定为长度-N
向量,N
是评价点的数量。时间是以秒为单位的。
数据类型:双
输出参数
结果
-贝叶斯优化结果
BayesianOptimization
对象
贝叶斯优化结果,返回为BayesianOptimization
对象。
提示
扩展功能
自动平行支撑
通过使用并行计算工具箱™自动并行运行计算来加速代码。
若要并行运行,请设置UseParallel
的名称-值参数真正的
在这个函数的调用中。
有关并行计算的更多一般信息,请参见运行MATLAB函数与自动并行支持(并行计算工具箱).
版本历史
在R2016b中引入
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。