超参数优化的最佳实践 - Amazon SageMaker
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

超参数优化的最佳实践

超参数优化不是完全自动化的过程。要改进优化,请在创建超参数时使用以下指南。

选择超参数的数量

超参数优化作业的计算复杂性主要取决于其值范围Amazon SageMaker必须在优化期间搜索的超参数的数量。虽然您可以同时指定最多 20 个超参数来优化优化优化作业,但将搜索限制为较小的数量可能会得到更好的结果。

选择超参数范围

您选择要搜索的超参数值范围会显著影响超参数优化成功与否。虽然您可能希望指定一个非常大的范围来涵盖超参数的每个可能的值,但通过将您的搜索限制为较小的值范围,您会得到更好的结果。如果您知道您在可能的范围的一个子集中获得了最佳指标值,请考虑将范围限制为该子集。

为超参数使用对数标度

在超参数优化期间,SageMaker 尝试确定您的超参数为对数标度还是线性标度。首先,它假定超参数为线性标度。如果它们实际上是对数标度的,则 可能需要一些时间来SageMaker发现这一事实。如果您知道超参数是对数标度的,并且可以自行转换,这样做可以改进超参数优化。

选择最佳并发训练作业数

MaxParallelTrainingJobs为超参数优化作业可以启动的最大并发训练作业数设置资源限制时,请考虑以下权衡。同时运行多个超参数优化作业可以更快完成更多工作,但训练作业只有通过连续轮次的实验才能改进。通常,一次运行一个训练作业可以通过最少的计算时间得到最佳结果。

在多个实例上运行训练作业

当训练作业在多个实例上运行时,超参数优化使用来自该训练作业所有实例的最新报告的目标指标值作为该训练作业的目标指标的值。设计分布式训练作业,这样,所报告的目标指标就是所需的指标。