主要内容

分类学习应用中的超参数优化

在选择要训练的特定类型的模型(例如决策树或支持向量机)之后,可以通过选择不同的高级选项来调整模型。万博1manbetx例如,您可以更改决策树的最大分割数或SVM的框约束。其中一些选项是模型的内部参数或超参数,它们会极大地影响模型的性能。您可以在Classification Learner应用程序中使用超参数优化来自动选择超参数值,而不是手动选择这些选项。对于给定的模型类型,应用程序通过使用一个优化方案尝试不同的超参数值组合,该方案寻求最小化模型分类错误,并返回一个具有优化超参数的模型。您可以像使用任何其他训练过的模型一样使用结果模型。

笔记

由于超参数优化可能导致过度饱和的模型,所以推荐的方法是在将数据导入分类学习者应用程序之前创建一个单独的测试集。培训可优化的型号后,您可以看到它在测试集上的执行方式。例如,看到在分类学习应用中使用超参数优化训练分类器

要在分类学习者中执行HyperParameter Optimization,请按照下列步骤操作:

  1. 选择一个模型类型,并决定优化哪个超参数。看到选择要优化的Hyperparameters

    笔记

    超参数优化不支持逻辑回归或神经网络模型。万博1manbetx

  2. (可选)指定优化的执行方式。有关更多信息,请参见优化选项

  3. 训练你的模型。使用最小分类误差图跟踪优化结果。

  4. 检查你训练过的模型。看到优化结果

选择要优化的Hyperparameters

在分类学习者应用程序中,在模型类型部分分类学习者选项卡,单击箭头打开图库。该图库包括可优化的模型,您可以使用超参数优化训练。

选择一个可优化的模型后,可以选择要优化的超参数。在模型类型部分中,选择高级>高级.应用程序会打开一个对话框,你可以在其中进行选择优化复选框为您想要优化的封面。在下面价值,为不希望优化或不可优化的超参数指定固定值。

该表描述了可以针对每种类型的模型进行优化的超参数,以及每个超参数的搜索范围。它还包括可以为其指定固定值的额外超参数。

模型 Optimizable Hyperparameters 额外Hyperparameters 笔记
优化的树
  • 最大分裂数—软件在这个范围内以对数比例搜索整数[1,马克斯(2 n - 1)],在那里N是观测的数量。

  • 划分的标准-软件之间搜索基尼的多样性指数连翘规则,减少最大偏差

  • 代理决策分裂

  • 每个节点的最大代理

有关更多信息,请参见高级树选项

可优化的判别
  • 判别类型-软件之间搜索线性二次对角线性,斜二次

  • 判别类型可优化的HyperParameter组合预设型号类型(线性判别二次判别)与之协方差结构预设模型的高级选项。

有关更多信息,请参见先进的判别选项

优化的天真贝父
  • 分布的名字-软件搜索之间高斯内核

  • 内核类型-软件之间搜索高斯盒子Epanechnikov.,三角形

  • 万博1manbetx

  • 高斯价值分布的名字可优化的HyperParameter指定一个高斯朴素贝叶斯模型。同样,内核分布的名字指定一个值内核朴素贝叶斯模型。

有关更多信息,请参见高级朴素贝叶斯选项

Optimizable支持向量机
  • 内核功能-软件之间搜索高斯线性二次,立方体

  • 箱约束水平- 软件在范围内记录的正值中搜索[0.001,1000]

  • 内核刻度- 软件在范围内记录的正值中搜索[0.001,1000]

  • 多类方法-软件搜索之间一vs-oneOne-vs-All

  • 标准化数据-软件搜索之间真正的错误的

  • 内核刻度可优化的超参数组合内核扩展模式手动内核规模预设的SVM模型的高级选项。

  • 你可以优化内核刻度可优化超参数仅当内核功能值是高斯.除非您指定值内核刻度通过清理优化复选框,该应用程序使用手册的价值1默认情况下内核功能具有以外的价值高斯

有关更多信息,请参见高级SVM选项

优化的KNN
  • 数量的邻居—软件在这个范围内以对数比例搜索整数[1,马克斯(2轮(n / 2))),在那里N是观测的数量。

  • 距离度量-软件搜索:

    • 欧几里德

    • 城市街区

    • 切比雪夫

    • 闵可夫斯基(立方)

    • Mahalanobis.

    • 余弦

    • 相关性

    • 斯皮尔曼

    • 汉字

    • Jaccard

  • 距离重量-软件之间搜索平等的,方逆

  • 标准化-软件搜索之间真正的错误的

有关更多信息,请参见先进的KNN选项

可优化的合奏
  • 整体方法-软件之间搜索演算法RUSBoostLogitBoost温博,

  • 最大分裂数—软件在这个范围内以对数比例搜索整数[1,马克斯(2 n - 1)],在那里N是观测的数量。

  • 许多学习者—软件在这个范围内以对数比例搜索整数[10,500]

  • 学习率-软件在实际值中搜索对数比例的范围[0.001,1]

  • 样本预测器的数量—软件搜索范围内的整数[1,max(2,p)],在那里P.是预测变量的数量。

  • 学习者类型

  • 演算法LogitBoost,温博的值整体方法可优化的超参数指定提高了树模型。同样,RUSBoost整体方法指定一个值肆无忌惮的树木模型,和整体方法指定一个值袋装树模型。

  • LogitBoost温博值仅用于二进制分类。

  • 样本预测器的数量可优化的HyperParameter在预设集合模型的高级选项中不可用。

  • 你可以优化样本预测器的数量可优化超参数仅当整体方法值是.除非您指定值样本预测器的数量通过清理优化复选框,应用程序使用默认值全选整体方法具有以外的价值

有关更多信息,请参见高级合奏选项

优化选项

默认情况下,Classification Learner应用程序使用贝叶斯优化执行超参数调优。贝叶斯优化的目标,以及一般的优化,是找到一个使目标函数最小的点。在应用超参数调优的背景下,点是一组超参数值,目标函数是损失函数,也就是分类误差。有关贝叶斯优化基础的更多信息,请参见贝叶斯优化工作流程

可以指定超参数调优的执行方式。例如,可以将优化方法更改为网格搜索或限制训练时间。在分类学习者选项卡,模型类型部分中,选择高级>优化选项.该应用程序打开一个对话框,您可以在其中选择优化选项。

该表描述了可用的优化选项及其默认值。

选项 描述
优化器

优化器值是:

  • Bayesopt.(默认) - 使用贝叶斯优化。内部,该应用程序调用Bayesopt.功能。

  • 网格搜索- 使用网格搜索,每个维度确定的值数网格划分数价值。应用程序以随机​​顺序搜索,使用统一的采样而无需从网格替换。

  • 随机搜索- 在点中随机搜索,其中点数对应于迭代价值。

收购功能

当应用程序执行贝叶斯优化超参数调优时,它使用获取函数来确定下一组要尝试的超参数值。

采集函数值为:

  • 每秒预期改善加上(默认)

  • 预期改善

  • 预期改进加

  • 每秒期望改进量

  • 低信心绑定

  • 改进的概率

有关这些获取函数如何在贝叶斯优化上下文中工作的详细信息,请参见采集函数类型

迭代

每次迭代都对应于应用程序尝试的超参数值的组合。当您使用贝叶斯优化或随机搜索时,请指定一个正整数来设置迭代次数。默认值为30.

当您使用网格搜索时,该应用程序忽略了迭代值并评估整个网格中的每个点的损失。您可以设置培训时间限制以过早停止优化过程。

培训时间限制 要设置培训时间限制,请选择此选项并设置以秒为单位的最大训练时间选择。默认情况下,该应用程序没有培训时间限制。
以秒为单位的最大训练时间 以秒为单位设置训练时间限制为正实数。默认值为300.运行时间可以超过训练时间限制,因为此限制不会中断迭代评估。
网格划分数 当使用网格搜索时,设置一个正整数作为应用程序为每个数字超参数尝试的值的数量。应用程序忽略了分类超参数的这个值。默认值为10

最小分类误差图

在指定要优化的模型超参数并设置任何额外的优化选项(可选)之后,训练可优化的模型。在分类学习者选项卡,培训部分中,点击火车.应用程序创建一个最小分类误差图它会随着优化运行而更新。

笔记

当你训练一个可优化的模型,应用程序禁用使用并行按钮。训练完成后,应用程序使按钮再次可用时,你选择一个非优化模型。该按钮默认关闭。

最小分类错误图显示如下信息:

  • 估计最小分类误差- 每个浅蓝色点对应于在考虑到到目前为止尝试的所有超参数值时计算的优化过程所计算的最小分类错误的估计,包括当前迭代。

    估计基于当前分类误差目标模型的上置信区间,如下所述BestPoint HyperParameters.描述。

    如果你使用网格搜索或随机搜索执行超参数优化,应用程序不会显示这些浅蓝色的点。

  • 观察到的最小分类误差-每个深蓝点对应的是迄今为止通过优化过程计算的观察到的最小分类错误。例如,在第三次迭代中,深蓝色的点对应于在第一次、第二次和第三次迭代中观察到的分类错误的最小值。

  • BestPoint HyperParameters.- 红色方块表示对应于优化的超参数的迭代。您可以在绘图的右上角找到优化的超参数的值优化结果

    优化后的超参数并不总是提供观测到的最小分类误差。当应用程序使用贝叶斯优化执行超参数调优时(参见优化选项有关简要介绍),它选择了一组超参数值,最小化了分类误差目标模型的上置信区间,而不是最小化分类错误的集合。有关更多信息,请参阅“标准”、“min-visited-upper-confidence-interval”的名称-值对参数bestPoint

  • 最小误差hyperparameters—黄色的点表示对应于超参数的迭代,该超参数产生的分类误差最小。

    有关更多信息,请参阅'标准','min观察'的名称-值对参数bestPoint

    如果使用网格搜索执行超参数优化,则BestPoint HyperParameters.最小误差hyperparameters都是一样的。

情节中缺失的点对应最小分类错误值。

优化结果

当应用程序完成模型超参数调优时,它返回一个经过优化的超参数值训练的模型(BestPoint HyperParameters.).模型度量、显示的图和导出的模型对应于具有固定超参数值的训练模型。

为检查训练过的可优化模型的优化结果,请在模型窗格和看当前模型的总结窗格。

当前模型的总结窗格包括以下部分:

  • 培训结果- 显示了可优化模型的性能

  • 模型类型- 显示可优化型号的类型,并列出任何固定的超参数值

  • 优化Hyperparameters- 列出优化的超参数的值

  • Hyperparameter搜索范围—显示优化超参数的搜索范围

  • 优化选项- 显示所选优化器选项

当您使用贝叶斯优化执行超参数调优,并将经过训练的可优化模型作为结构导出到工作空间时,该结构包括BayesianOptimization对象HyperParameterOptimizationResult字段。该对象包含在应用程序中执行的优化结果。

当你生成MATLAB时®代码来自训练过的可优化模型,生成的代码使用模型的固定和优化的超参数值来训练新数据。生成的代码不包括优化过程。有关使用拟合函数时如何执行贝叶斯优化的信息,请参见使用拟合函数的贝叶斯优化

相关的话题