什么是超参数调优?

当您训练机器学习模型时,每个数据集和模型都需要一组不同的超参数,这些超参数是一种变量。确定这些超参数的唯一方式是通过多次实验,您需要在实验中选择一组超参数并在模型中运行。这个过程称为超参数调优。本质上,您是在用不同的超参数集按顺序训练模型。这个过程可以手动进行,也可以从若干种自动超参数调优方法中选择一种。

无论您使用哪种方法,都需要跟踪实验结果。您必须应用某种形式的统计分析,例如损失函数,以确定哪一组超参数的结果最佳。超参数调优是一种重要的计算密集型流程。

什么是超参数?

超参数是数据科学家用来管理机器学习模型训练的外部配置变量。有时也称为模型超参数,超参数会在训练模型前手动进行配置。与参数不同,超参数是在学习过程中自动导出的内部参数,而不是由数据科学家设置的。

超参数示例包括神经网络中节点和层的数量,以及决策树中分支的数量。超参数决定关键特征,如模型架构、学习率和模型复杂性。

如何识别超参数?

选择一组合适的超参数对于模型性能和准确度至关重要。遗憾的是,目前没有固定的规则可以确定哪些超参数最有效,以及它们的最佳值或默认值。您需要进行实验来找到最优超参数集。这种活动被称为超参数调优超参数优化

为什么超参数调优至关重要?

超参数直接控制模型结构、函数和性能。超参数调优让数据科学家能够调整模型性能,以取得最佳结果。此流程是机器学习中的一个关键步骤,选择合适的超参数值对于成功至关重要。

例如,假设您使用模型的学习率作为超参数。如果值过高,则模型收敛速度可能过快,导致出现不理想的结果。而如果学习率过低,训练时间过长,结果就可能无法收敛。选择良好且平衡的超参数可以得到准确的模型和出色的模型性能。

超参数调优的工作原理是什么?

如前所述,超参数调优可以手动进行,也可以自动进行。虽然手动调优速度缓慢且较为枯燥,但好处是可以更好地了解超参数权重如何影响模型。但在大多数情况下,您通常会使用熟悉的超参数学习算法。

超参数调优流程是一个迭代过程,您可以尝试不同的参数和值组合。您通常先定义一个目标变量(例如准确度)作为主要指标,并打算最大化或最小化该值。使用交叉验证技术是个好主意,这样您的模型就不会以数据中的某一部分为中心。

什么是超参数调优技术?

虽然存在许多超参数调优算法,但最常用的是贝叶斯优化、网格搜索和随机搜索。

贝叶斯优化

贝叶斯优化是一种基于贝叶斯定理的技术,它描述了与当前知识相关的事件发生的概率。将贝叶斯优化用于超参数优化时,算法会从一组超参数中构建一个概率模型,以优化特定指标。它使用回归分析迭代地选择最佳的一组超参数。

网格搜索

借助网格搜索,您可以指定一组超参数和性能指标,然后算法会遍历所有可能的组合来确定最佳匹配。网格搜索很好用,但它相对乏味且计算量大,特别是使用大量超参数时。

随机搜索

虽然随机搜索与网格搜索基于相似的原则,但随机搜索在每次迭代时会随机选择一组超参数。当相对较少的超参数主要决定模型的结果时,该方法效果良好。

有哪些超参数示例?

虽然一些超参数十分常见,但在实践中,您会发现算法使用特定超参数集。例如,您可以了解 Amazon SageMaker 如何使用图像分类超参数,以及了解 SageMaker 如何使用 XGBoost 算法超参数

下面是一些常见超参数示例:

  • 学习率是指算法更新估算值的速率
  • 学习率衰减是指随着时间的推移,逐渐降低学习率,以加快学习速度
  • 动量是指下一步相对于前一步的方向
  • 神经网络节点是指每个隐藏层中的节点数量
  • 神经网络层是指神经网络中隐藏层的数量
  • 小批次大小是指训练数据批次大小
  • Epoch 是指训练数据集在训练期间被完整地传递给网络的次数
  • Eta 是指用于防止过拟合的收缩步长

AWS 在超参数调优方面可以为我提供哪些帮助?

Amazon Web Services (AWS) 提供 Amazon SageMaker,这是一种完全托管式机器学习(ML)平台,让您可以执行自动模型调优。Amazon SageMaker 模型训练会在您的数据集上运行多个训练任务,从而找到最适合您机器学习模型的版本。该功能使用特定算法和超参数范围。

SageMaker 提供基于贝叶斯搜索理论的智能超参数调优方法,旨在以最短的时间找到最佳模型。它从随机搜索开始,然后学习模型在超参数值方面的行为。如需更多信息,请了解 SageMaker 中超参数调优的工作原理

SageMaker 自动模型调优还支持新的搜索策略 Hyperband。对于解决计算机视觉问题的深度神经网络等大型模型,Hyperband 找到一组最优超参数的速度高达贝叶斯搜索的 3 倍。

您还可以了解如何使用 SageMaker 执行自动模型调优。您可以使用内置 SageMaker 算法、自定义算法和 SageMaker 预建容器的 SageMaker 超参数调优模块。该网页提供了全面的自学教程和练习,帮助您学习如何执行超参数优化。

SageMaker 上手十分简单,您只需要创建一个免费的 AWS 账户即可。借助 AWS Free Tier,您可以先免费试用 SageMaker 两个月,然后再决定是否要购买。

使用 AWS 的后续步骤

查看其他与产品相关的资源
查看 AWS AI 服务 
注册免费账户

立即享受 AWS 免费套餐。

注册 
开始在控制台中构建

在 AWS 管理控制台中开始构建。

登录