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

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

超参数优化的最佳实践

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

选择超参数的数量

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

选择超参数范围

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

为超参数使用对数标度

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

选择最佳并发训练作业数

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

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

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