BayesianOptimization

贝叶斯优化结果

描述

一个BayesianOptimization对象包含了贝叶斯优化的结果。它的输出bayesopt或拟合函数,它接受OptimizeHyperparameters名称 - 值对,例如fitcdiscr。此外,BayesianOptimization对象包含的每个迭代数据bayesopt可以由绘图功能或输出功能进行访问。

创建

创建一个BayesianOptimization对象使用bayesopt函数或与该拟合函数OptimizeHyperparameters名称 - 值对。

属性

展开全部

问题定义属性

此属性是只读的。

ObjectiveFcn参数使用bayesopt,返回函数句柄。

  • 如果你打电话bayesopt直,ObjectiveFcn是个bayesopt目标函数参数。

  • 如果调用包含拟合函数'OptimizeHyperparameters'名称 - 值对的参数,ObjectiveFcn是一个函数句柄返回错误分类率进行分类或返回一个对数加上回归交叉验证损失,由测得的5倍交叉验证。

数据类型:function_handle

此属性是只读的。

VariableDescriptions论据bayesopt使用时,返回的向量optimizableVariable对象。

  • 如果你打电话bayesopt直,VariableDescriptions是个bayesopt变量描述参数。

  • 如果你称为拟合函数与OptimizeHyperparameters名称 - 值对,VariableDescriptions是超参数的向量。

此属性是只读的。

选项bayesopt使用时,返回的结构。

  • 如果你打电话bayesopt直,选项在使用该选项bayesopt,这是名称 - 值对见bayesopt输入参数

  • 如果你称为拟合函数与OptimizeHyperparameters名称 - 值对,选项是默认bayesopt选项,由改性HyperparameterOptimizationOptions名称 - 值对。

选项是包含以下字段的只读结构。

选项名称 含义
AcquisitionFunctionName 采集功能名称。看到采集功能类型
IsObjectiveDeterministic 真正指目标函数是确定性的,除此以外。
ExplorationRatio 使用时才AcquisitionFunctionName“预计-改善,加上”要么“预计-改善每秒加”。看到
MaxObjectiveEvaluations 目标函数评价限制。
MAXTIME 时限。
XConstraintFcn 在变量确定性的制约。看到确定性约束 - XConstraintFcn
ConditionalVariableFcn 条件变量约束。看到有条件限制 - ConditionalVariableFcn
NumCoupledConstraints 的耦合的限制数量。看到再加约束
CoupledConstraintTolerances 再加约束公差。看到再加约束
AreCoupledConstraintsDeterministic 逻辑向量指定每个耦合约束是否是确定性的。
详细 命令行显示的水平。
OutputFcn 在每次迭代后函数调用。看到优化贝叶斯输出功能
SaveVariableName 变量名@assignInBase输出功能。
SaveFileName 为文件名@saveToFile输出功能。
PlotFcn 每次迭代之后调用绘图功能。看到优化贝叶斯绘图功能
InitialX 点这里bayesopt评估目标函数。
InitialObjective 在目标函数值InitialX
InitialConstraintViolations 在加上约束函数值InitialX
InitialErrorValues 在误差值InitialX
InitialObjectiveEvaluationTimes 在目标函数评价次InitialX
InitialIterationTimes 时间对于每个迭代,包括目标函数的评估和其他计算。

数据类型:结构

溶液性质

此属性是只读的。

目标函数的最小观测值,返回为实数标量。当存在被耦合约束或评估的错误,该值是最小在所有观察点的是,根据最终的约束和误差模型是可行的。

数据类型:

此属性是只读的。

观测点,用最小的目标函数值,返回为1-通过-d表,其中d是变量的数目。

数据类型:

此属性是只读的。

最低估计的目标函数的值,返回作为一个真正的标量。MinEstimatedObjective使用最终目标模型。

MinEstimatedObjective是一样的CriterionValue的结果bestPoint默认标准。

数据类型:

此属性是只读的。

点与最低估计目标函数值,返回为1-通过-d表,其中d是变量的数目。XAtMinEstimatedObjective使用最终目标模型。

数据类型:

此属性是只读的。

客观评价次数,返回一个正整数。这包括初始评价以形成在优化的迭代后验模​​型以及评价。

数据类型:

此属性是只读的。

总经过优化的时间,以秒,返回一个正标量。

数据类型:

此属性是只读的。

评估接下来点,如果继续优化,返回为1-通过-d表,其中d是变量的数目。

数据类型:

跟踪属性

此属性是只读的。

点中目标函数进行评估,返回为Ť-通过-d表,其中Ť是评价点的数量和d是变量的数目。

数据类型:

此属性是只读的。

的目标函数值,返回作为长度的列向量Ť,其中Ť是评价点的数量。ObjectiveTrace包含目标函数评价的历史。

数据类型:

此属性是只读的。

目标函数评估倍,返回作为长度的列向量Ť,其中Ť是评价点的数量。ObjectiveEvaluationTimeTrace包括在评价耦合约束的时候,因为目标函数计算这些约束。

数据类型:

此属性是只读的。

迭代次数,返回作为长度的列向量Ť,其中Ť是评价点的数量。IterationTimeTrace包括目标函数评估时间和其他开销。

数据类型:

此属性是只读的。

再加约束值,返回为Ť-通过-ķ阵列,其中Ť是评价点的数量和ķ是耦接约束的数目。

数据类型:

此属性是只读的。

错误指示,返回作为长度的列向量Ť-1要么1条目,其中Ť是评价点的数量。每1项指示目标函数出错或返回为NaN在相应的点X跟踪。每-1项指示目标函数值来计算。

数据类型:

此属性是只读的。

可行性适应症,返回作为长度的逻辑列向量Ť,其中Ť是评价点的数量。每1条目表明最终约束模型在相应点预测的可行性X跟踪

数据类型:合乎逻辑

此属性是只读的。

概率评价点是可行的,返回作为长度的列向量Ť,其中Ť是评价点的数量。概率来自最后的约束模型,包括错误约束模型,在相应的点X跟踪

数据类型:

此属性是只读的。

其评价放弃最低可行目标,返回作为长度的整数索引的列向量Ť,其中Ť是评价点的数量。可行性相对于已经存在在每次迭代,包括错误约束模型约束模型确定。

数据类型:

此属性是只读的。

观察到最小的目标,返回为整数长度的索引的列向量Ť,其中Ť是评价点的数量。

数据类型:

此属性是只读的。

最小估计目标,返回为整数长度的索引的列向量Ť,其中Ť是评价点的数量。在每一次迭代所估计的目的,相对于在那个迭代中存在的目标模型来确定。

数据类型:

此属性是只读的。

从目标函数的辅助数据,返回作为长度的单元阵列Ť,其中Ť是评价点的数量。在单元阵列中的每个条目是用户数据在目标函数的第三输出返回。

数据类型:细胞

对象函数

bestPoint 根据准则的贝叶斯优化的最佳点
情节 绘制贝叶斯优化结果
predictConstraints 在一组点的预测加上约束违规
predictError 在一组点的预测误差值
predictObjective 在一组点的预测目标函数
predictObjectiveEvaluationTime 在一组点的预测目标函数的运行时间
恢复 恢复贝叶斯优化

例子

全部收缩

这个例子显示了如何创建BayesianOptimization通过使用对象bayesopt以最小化交叉验证损失。

一个KNN分类为的优化超参数电离层数据,即,发现KNN超参数,最大限度地减少了交叉验证的损失。有bayesopt尽量减少在随后的超参数:

  • 最近邻域的大小从1到30

  • 距离函数“切比雪夫”“欧几里德”“闵可夫斯基

的再现性,设置随机种子,设置分区,并设置AcquisitionFunctionName选项“预计-改善,加上”。为了抑制重复显示,集“放牧”0。通过分区C与数据拟合Xÿ目标函数开玩笑通过创建开玩笑如并入这个数据的匿名函数。看到参数化功能(MATLAB)。

加载电离层RNG默认NUM = optimizableVariable('N',[1,30],'类型''整数');DST = optimizableVariable('DST'{“切比雪夫”“欧几里德”“闵可夫斯基},'类型'“绝对”);C = cvpartition(351,'Kfold',5);有趣= @(X)kfoldLoss(fitcknn(X,Y,'CVPartition',C,'NumNeighbors',x.n,...'距离',炭(x.dst),'NSMethod'“详尽”));结果= bayesopt(乐趣,[NUM,DST]“放牧”,0,...'AcquisitionFunctionName'“预计-改善,加上”

结果= BayesianOptimization与属性:ObjectiveFcn:[function_handle] VariableDescriptions:[1×2 optimizableVariable]选项:[1x1的结构] MinObjective:0.1197 XAtMinObjective:[1×2表] MinEstimatedObjective:0.1213 XAtMinEstimatedObjective:[1×2表] NumObjectiveEvaluations:30 TotalElapsedTime:60.8003 NextPoint公司:[] 1×2表X跟踪:[30×表] ObjectiveTrace:[30X1双] ConstraintsTrace:[] UserDataTrace:{30X1细胞} ObjectiveEvaluationTimeTrace:[30X1双] IterationTimeTrace:[30X1双] ErrorTrace:[30X1双] FeasibilityTrace:[30X1逻辑] FeasibilityProbabilityTrace:[30X1双] IndexOfMinimumTrace:[30X1双] ObjectiveMinimumTrace:[30X1双] EstimatedObjectiveMinimumTrace:[30X1双]

这个例子显示了如何最大限度地减少在交叉验证损失电离层数据使用SVM分类的贝叶斯优化。

加载数据。

加载电离层

采用优化的分类'汽车'参数。

RNG默认%用于重现MDL = fitcsvm(X,Y,'OptimizeHyperparameters''汽车'
| ===================================================================================================== ||ITER |EVAL |目的|目的|BestSoFar |BestSoFar |BoxConstraint |KernelScale | | | result | | runtime | (observed) | (estim.) | | | |=====================================================================================================| | 1 | Best | 0.21652 | 17.227 | 0.21652 | 0.21652 | 64.836 | 0.0015729 |
|2 |接受|0.35897 |0.076634 |0.21652 |0.22539 |0.036335 |5.5755 |
|3 |最佳|0.13105 |6.789 |0.13105 |0.14152 |0.0022147 |0.0023957 |
|4 |接受|0.35897 |0.076591 |0.13105 |0.13108 |5.1259 |98.62 |
|5 |最佳|0.12251 |0.083261 |0.12251 |0.12253 |0.0010264 |0.042908 |
|6 |接受|0.12536 |0.11182 |0.12251 |0.12242 |0.0010276 |0.01796 |
|7 |接受|0.13105 |1.3745 |0.12251 |0.12363 |0.04548 |0.028371 |
|8 |接受|0.12821 |0.092434 |0.12251 |0.12489 |0.001004 |0.030765 |
|9 |接受|0.1339 |0.078771 |0.12251 |0.12489 |0.0010115 |0.074186 |
|10 |接受|0.12536 |0.14329 |0.12251 |0.12493 |0.0010018 |0.012976 |
|11 |接受|0.12821 |0.097635 |0.12251 |0.12596 |0.001089 |0.029027 |
|12 |接受|0.13675 ​​|0.27617 |0.12251 |0.12541 |0.0010255 |0.0089521 |
|13 |接受|0.1339 |0.088394 |0.12251 |0.12704 |0.0010116 |0.035171 |
|14 |接受|0.35897 |0.078646 |0.12251 |0.12704 |0.0013423 |76.712 |
|15 |接受|0.35897 |0.075086 |0.12251 |0.127 |0.13735 |993.22 |
|16 |接受|0.35897 |0.075732 |0.12251 |0.12698 |994.11 |990.15 |
|17 |接受|0.35897 |0.093507 |0.12251 |0.12763 |0.0010027 |0.85485 |
|18 |接受|0.12536 |0.083076 |0.12251 |0.12657 |0.0010101 |0.048845 |
|19 |接受|0.12821 |0.083382 |0.12251 |0.12701 |0.0010938 |0.047844 |
|20 |接受|0.12536 |0.11448 |0.12251 |0.12556 |0.0010146 |0.017572 |
| ===================================================================================================== ||ITER |EVAL |目的|目的|BestSoFar |BestSoFar |BoxConstraint |KernelScale | | | result | | runtime | (observed) | (estim.) | | | |=====================================================================================================| | 21 | Accept | 0.12251 | 0.11771 | 0.12251 | 0.12461 | 0.0010166 | 0.018502 |
|22 |接受|0.12251 |0.12403 |0.12251 |0.12405 |0.001065 |0.018515 |
|23 |接受|0.35897 |0.079806 |0.12251 |0.12416 |0.03993 |21.731 |
|24 |接受|0.35897 |0.075101 |0.12251 |0.12429 |2.3338 |336.56 |
|25 |接受|0.12536 |0.17006 |0.12251 |0.12423 |992.83 |14.69 |
|26 |接受|0.13675 ​​|0.30995 |0.12251 |0.12421 |987.13 |5.8314 |
|27 |接受|0.13105 |0.19598 |0.12251 |0.12442 |0.0029454 |0.017583 |
|28 |接受|0.12251 |0.1239 |0.12251 |0.12445 |0.0062605 |0.059597 |
|29 |接受|0.12821 |0.14179 |0.12251 |0.12451 |0.022617 |0.065617 |
|30 |接受|0.13105 |0.16587 |0.12251 |0.12458 |995.38 |10.651 |

__________________________________________________________优化完成。30 MaxObjectiveEvaluations达到。总功能评价:30总运行时间:55.6497秒。总目标函数评估时间:28.6241最佳观察到的可行点:BoxConstraint KernelScale _____________ ___________ 0.0010264 0.042908观测目标函数值= 0.12251估计目标函数值= 0.12703功能评估时间= 0.083261最佳估计可行点(根据型号):BoxConstraint KernelScale _____________ ___________ 0.00101460.017572估计目标函数值= 0.12458估计函数评估时间= 0.11721
MDL = ClassificationSVM ResponseName: 'Y' CategoricalPredictors:[]类名:{ 'B' 的 'g'} ScoreTransform: '无' NumObservations:351个HyperparameterOptimizationResults:[1×1 BayesianOptimization]阿尔法:[90×1双]偏压:-5.7329KernelParameters:[1×1结构] BoxConstraints:[351×1双] ConvergenceInfo:[1×1结构] IsSupportVector:[351×万博1manbetx1逻辑]求解: 'SMO' 的属性,方法

约12%的损失来实现默认的配合5倍交叉验证。

检查BayesianOptimization那就是在返回的对象HyperparameterOptimizationResults返回模型的属性。

DISP(Mdl.HyperparameterOptimizationResults)
BayesianOptimization与属性:ObjectiveFcn:@ createObjFcn / inMemoryObjFcn VariableDescriptions:[5×1 optimizableVariable]选项:[1×1结构] MinObjective:0.1225 XAtMinObjective:[1×2表] MinEstimatedObjective:0.1246 XAtMinEstimatedObjective:[1×2表] NumObjectiveEvaluations:30 TotalElapsedTime:55.6497 NextPoint公司:[1×2表] X跟踪:[30×2表] ObjectiveTrace:[30×1双] ConstraintsTrace:[] UserDataTrace:{30×1细胞} ObjectiveEvaluationTimeTrace:[30×1双] IterationTimeTrace:[30×1双] ErrorTrace:[30×1双] FeasibilityTrace:[30×1逻辑] FeasibilityProbabilityTrace:[30×1双] IndexOfMinimumTrace:[30×1双] ObjectiveMinimumTrace:[30×1双] EstimatedObjectiveMinimumTrace:[30×1双]

介绍了在R2016b