优化,在其最一般的形式,定位一个点最小化的过程是一个实值函数目标函数。贝叶斯优化是一个这样的过程的名称。贝叶斯优化内部维护一个高斯过程模型的目标函数,并使用目标函数评价训练模型。一个贝叶斯优化创新的使用获取函数,该算法用于确定下一个点评估。收购函数可以平衡采样点较低目标函数建模,建模和探索领域尚未。有关详细信息,请参见贝叶斯优化算法。
贝叶斯统计和机器学习工具箱优化是™,因为它是适合优化hyperparameters分类和回归算法。hyperparameter是一个内部参数分类或回归函数,如支持向量机框约束,或一个健壮的分类的学习速率。金宝app这些参数能很强烈地影响分类器的性能或回归量,然而或耗时的优化通常是困难的。看到贝叶斯优化特性。
通常,优化hyperparameters意味着你尽量减少交叉验证分类器或回归。
你可以通过多种方式进行贝叶斯优化:
fitcauto
和fitrauto
——通过预测和响应数据fitcauto
或fitrauto
函数优化的选择模型类型和hyperparameter值。与其他方法不同的是,使用fitcauto
或fitrauto
不要求您指定单个模型在优化前;模型选择是优化过程的一部分。优化损失最小化交叉验证,使用多模仿TreeBagger
模型fitcauto
和一个多RegressionGP
模型fitrauto
,而不是单个高斯过程回归模型中使用的其他方法。看到贝叶斯优化为fitcauto
和贝叶斯优化为fitrauto
。
分类学习者和回归学习者应用程序——选择Optimizable机器学习模型的应用和自动调整其hyperparameter值通过使用贝叶斯优化。优化损失最小化模型基于所选择的验证选项。这种方法有更少的调优选项比使用一个合适的函数,但可以直接执行贝叶斯优化应用程序。看到Hyperparameter优化分类学习者应用和Hyperparameter优化回归学习者应用。
适应函数,包括OptimizeHyperparameters
名称-值参数在许多自动拟合函数应用贝叶斯优化。优化减少交叉验证的损失。这种方法使你比使用更少的调优选项bayesopt
,但使您更容易地执行贝叶斯优化。看到贝叶斯优化使用合适的函数。
bayesopt
——发挥最控制优化通过调用bayesopt
直接。这种方法需要你写一个目标函数,并不一定代表交叉验证的损失。看到贝叶斯优化使用bayesopt。
最小化误差在一个旨在通过贝叶斯优化反应,遵循这些步骤。
选择你的分类或回归解决之间的适应函数,接受OptimizeHyperparameters
名称-值参数。
决定hyperparameters优化,并通过他们的OptimizeHyperparameters
名称-值参数。对于每一个合适的函数,你可以选择从一组hyperparameters。看到合格Hyperparameters配合功能,或使用hyperparameters
函数,或查阅适应函数引用页面。
你可以通过单元阵列的参数名称。你也可以设置“汽车”
随着OptimizeHyperparameters
值,选择一套典型的hyperparameters优化,或“所有”
优化所有可用参数。
对于整体适应函数fitcecoc
,fitcensemble
,fitrensemble
,还包括参数的弱的学习者OptimizeHyperparameters
单元阵列。
可选地,结构创建一个选项HyperparameterOptimizationOptions
名称-值参数。看到Hyperparameter优化选择合适的函数。
调用合适的函数与相应的名称参数。
有关示例,请参见优化分类器配合使用贝叶斯优化和优化了回归。同时,每个符合函数参考页面包含一个贝叶斯优化的例子。
bayesopt
执行贝叶斯优化使用bayesopt
,遵循这些步骤。
例如,看到的优化旨在使用bayesopt分类器。
贝叶斯优化算法最适合这些问题类型。
特征 | 细节 |
---|---|
低维 | 贝叶斯优化最适合的尺寸,通常10或更少。而贝叶斯优化几十个变量,可以解决一些问题是不推荐的维度高于50。 |
昂贵的目标 | 贝叶斯优化设计目标函数,评价得很慢。它有相当大的开销,通常为每个迭代几秒钟。 |
低精度 | 贝叶斯优化不一定非常准确的结果。如果你有一个确定的目标函数,你有时可以提高精度标准的优化算法 |
全球解决方案 | 贝叶斯优化是一个全球性的技术。与其他算法,寻找全球性的解决方案你不需要启动算法从不同的初始点。 |
Hyperparameters | 贝叶斯优化适合优化hyperparameters另一个函数。hyperparameter是一个参数,控制函数的行为。例如, |
合格Hyperparameters配合功能
优化使用合适的函数时,您可以使用这些选项HyperparameterOptimizationOptions
名称-值参数。作为结构的价值。所有字段的结构是可选的。
字段名 | 值 | 默认的 |
---|---|---|
优化器 |
|
“bayesopt” |
AcquisitionFunctionName |
他们的名字包括采集功能 |
“expected-improvement-per-second-plus” |
MaxObjectiveEvaluations |
最大数量的目标函数的评价。 | 30. 为“bayesopt” 和“randomsearch” ,整个电网“gridsearch” |
MaxTime |
时间限制,指定为一个积极的真正的标量。时间限制在几秒钟内,作为衡量 |
正 |
NumGridDivisions |
为“gridsearch” 在每个维度的数量值。正整数的值可以是一个向量给每个尺寸的数量值,或一个标量,适用于所有尺寸。这个领域被忽略为分类变量。 |
10 |
ShowPlots |
逻辑值指示是否显示情节。如果真正的 ,这个领域最好的观察目标函数值与迭代数。如果你使用贝叶斯优化(优化器 是“bayesopt” ),那么这个领域还阴谋的最好估计目标函数值。最好的观察目标函数值和最佳估计目标函数值对应的值BestSoFar(观察) 和BestSoFar (estim)。 分别列的迭代显示。你可以找到这些值的属性ObjectiveMinimumTrace 和EstimatedObjectiveMinimumTrace 的Mdl.HyperparameterOptimizationResults 。如果问题包括一个或两个贝叶斯优化,优化参数ShowPlots 还阴谋的模型目标函数的参数。 |
真正的 |
SaveIntermediateResults |
逻辑值指示是否保存结果优化器 是“bayesopt” 。如果真正的 ,这个领域覆盖一个工作区变量命名“BayesoptResults” 在每一个迭代。变量是一个BayesianOptimization 对象。 |
假 |
详细的 |
显示在命令行:
详情,请参阅 |
1 |
UseParallel |
逻辑值,指出是否贝叶斯优化并行运行,这就需要并行计算工具箱™。由于nonreproducibility平行的时机,平行贝叶斯优化不一定产生可重复的结果。有关详细信息,请参见平行的贝叶斯优化。 | 假 |
重新分区 |
逻辑值指示是否重新分配在每个迭代交叉验证。如果这个字段 设置 |
假 |
使用不超过以下三个选项之一。 | ||
CVPartition |
一个cvpartition 创建的对象cvpartition |
“Kfold”, 5 如果你不指定一个交叉验证字段 |
坚持 |
一个标量范围(0,1) 代表抵抗分数 |
|
Kfold |
一个大于1的整数 |