主要内容

贝叶斯优化输出功能

一个贝叶斯优化输出函数是什么?

一个输出函数是一个函数,称为每一个迭代结束的bayesopt。一个输出函数可以停止迭代。它还可以创建情节,将信息到您的工作区或保存到一个文件,或执行任何其他计算。

除了停止迭代,输出函数不能改变的贝叶斯优化。他们只是监控优化的进展。

内置的输出函数

这些内置的输出函数优化结果保存到文件或工作区。

  • @assignInBase——保存你的每个迭代变量命名后的结果“BayesoptResults”在你的工作空间。选择一个不同的名称,通过SaveVariableName名称-值参数。

  • @saveToFile——保存你的每个迭代一个文件命名后的结果“BayesoptResults.mat”在当前文件夹。选择一个不同的名称或文件夹,通过SaveFileName名称-值参数。

例如,每次迭代后的结果保存到工作空间变量命名“BayesIterations”,

结果= bayesopt (var,有趣“OutputFcn”@assignInBase,“SaveVariableName”,“BayesIterations”)

自定义输出功能

编写一个定制的输出函数签名

停止= outputfun(结果,状态)

bayesopt通过了结果状态变量的函数。你的函数返回停止,你设置真正的停止迭代,或允许继续迭代。

结果是一个对象的类BayesianOptimization结果包含可用的信息计算。

状态可能的值:

  • “初始”- - - - - -bayesopt即将开始迭代。

  • “迭代”- - - - - -bayesopt刚刚完成一次迭代。

  • “完成”- - - - - -bayesopt刚刚完成最后的迭代。

例如,看到的贝叶斯优化输出函数

贝叶斯优化输出函数

这个例子展示了如何使用自定义输出函数与贝叶斯优化。输出功能停止时的优化目标函数,即交叉验证出错率,低于13%。输出函数还阴谋每个迭代的时间。

函数停止= outputfun(结果,状态)持续的h = false停止;开关状态情况下“初始”h =图;情况下“迭代”如果结果。MinObjective < 0.13停止= true;结束图(h)经颅磁刺激= results.IterationTimeTrace;阴谋(1:元素个数(tms),经颅磁刺激”)包含(的迭代次数)ylabel (“时间迭代”)标题(“每次迭代时间”)drawnow结束

目标函数是交叉验证资讯分类的损失电离层数据。加载数据,再现性,设置默认随机流。

负载电离层rng默认的

优化在邻里规模从1到30,和三个距离度量。

num = optimizableVariable (“n”(1、30),“类型”,“整数”);dst = optimizableVariable (dst的,{“chebychev”,“欧几里得”,闵可夫斯基的},“类型”,“分类”);var = (num, dst);

设置交叉验证分区和目标函数。再现性,设置AcquisitionFunctionName“expected-improvement-plus”。运行优化。

c = cvpartition (351“Kfold”5);有趣= @ (x) kfoldLoss (fitcknn (x, Y,“CVPartition”c“NumNeighbors”x.n,“距离”char (x.dst),“NSMethod”,“详尽”));结果= bayesopt (var,有趣“OutputFcn”@outputfun,“AcquisitionFunctionName”,“expected-improvement-plus”);
| = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | | Iter | Eval客观客观| | | BestSoFar | BestSoFar n | | dst | | |结果| | |运行时(观察)| (estim) | | | | = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = | | 1 |的| 0.19943 | 0.31225 | 0.19943 | 0.19943 | 24 | chebychev | | 2 |最好| 0.16809 | 0.23873 | 0.16809 | 0.1747 | 9 |欧几里得| | 3 |最好| 0.12536 | 0.2603 | 0.12536 | 0.12861 | 3 | chebychev | __________________________________________________________优化完成。总评价函数:3总运行时间:6.8981秒总目标函数评价时间:0.81127最佳观察可行点:n dst _ _____ 3 chebychev观察目标函数值= 0.12536估计目标函数值= 0.12861时间评估函数= 0.2603最佳估计可行点(根据模型):n dst _ _____ 3 chebychev估计目标函数值= 0.12861估计时间评估函数= 0.26869

相关的话题