技术指南

超参数调优

超参数是您在训练前选择的设置,例如学习率或模型大小,模型不会自行学习。

概述

超参数是您在训练前选择的设置,例如学习率或模型大小,模型不会自行学习。调整好它们通常是平庸模型和优秀模型之间的区别。

超参数调优是一个技术构建块,会大规模影响模型质量、基础设施成本、延迟和可靠性。

深入探讨

模型参数(权重)是在训练期间从数据中学习的。超参数则不同:它们是您预先设置的控制学习如何发生的旋钮,例如学习率、批量大小、层数、正则化强度以及训练时间。它们无法直接通过梯度下降进行优化,因此您可以通过训练许多候选模型并在验证集上进行比较来搜索好的值。最简单的方法是网格搜索,在预定义的网格上尝试每种组合,但它的扩展性非常差。随机搜索通常通过采样组合更快地找到好的设置。更高级的贝叶斯优化构建了一个概率模型,其中的设置看起来很有希望,并将搜索集中在那里。学习率通常是最有影响力的超参数。

技术洞察

由于超参数控制训练过程而不是由训练过程进行调整,因此您将调整视为围绕训练的外部优化循环。每次试验都使用一种配置训练模型,并根据保留的验证数据对其进行评分。贝叶斯方法,例如使用高斯过程或树结构 Parzen 估计器的方法,对配置和验证分数之间的关系进行建模,然后选择下一个试验来平衡探索不确定区域与利用已知良好区域。像 Hyperband 这样的早期停止方案会尽早终止表现不佳的试验,以便将计算花费在重要的地方。至关重要的是,最终的测试集在调整过程中必须保持不变,以避免泄漏信息。

掌握超参数调优

超参数是您在训练前选择的设置,例如学习率或模型大小,模型不会自行学习。调整好它们通常是平庸模型和优秀模型之间的区别。超参数调优是一个技术构建块,会大规模影响模型质量、基础设施成本、延迟和可靠性。为了建立深入的理解,请将超参数调优视为一种操作模型,而不是单个功能:定义所需的结果,澄清假设,并将系统可以可靠地执行的操作与仍需要专家判断的操作分开。

在实践中,强大的团队使用超参数调优根据可靠性和成本优化架构、数据和基础设施选择。他们记录明确的成功标准,根据实际数据和工作流程进行测试,并根据观察到的失败模式而不是一次性基准测试胜利进行迭代。这就是理论理解转变为跨产品、政策和运营的持久能力的地方。

多年来,架构决策决定着性能和运营成本。与此同时,优化一个基准测试可以隐藏更广泛的系统弱点。最具弹性的方法是将实验速度与治理规则结合起来:运行试点、捕获证据、发布决策日志,并随着模型行为、用户期望和监管要求的发展不断更新保障措施。

战略影响

多年来,架构决策决定着性能和运营成本。

多年来,架构决策决定着性能和运营成本。在高质量部署中,这会转化为可衡量的操作规则、所有权边界和定期审查仪式,以便团队可以增强信心,而不是扩大模糊性。

技术教育帮助团队选择正确的堆栈,而不仅仅是最新的堆栈。

技术教育帮助团队选择正确的堆栈,而不仅仅是最新的堆栈。在高质量部署中,这会转化为可衡量的操作规则、所有权边界和定期审查仪式,以便团队可以增强信心,而不是扩大模糊性。

更好的工程选择可以减少生产中的可靠性事故。

更好的工程选择可以减少生产中的可靠性事故。在高质量部署中,这会转化为可衡量的操作规则、所有权边界和定期审查仪式,以便团队可以增强信心,而不是扩大模糊性。

超参数调优的未来

手动和基于网格的调整正在让位于自动化机器学习 (AutoML) 和更智能的搜索,例如贝叶斯优化和 Hyperband,它们使用计算的效率要高得多。随着基础模型的发展,每次试验的完全再训练变得异常昂贵,因此注意力正在转向更便宜的代理、从小规模运行中预测良好设置的缩放法则,以及调整轻量级适配器而不是整个模型。预计调整将变得越来越自动化和预算意识,通过工具明确地权衡搜索成本和预期收益。

现实世界的实施

将学习率扫描几个数量级,以找到网络快速训练而不发散的值。

使用随机搜索来调整表格数据上梯度提升模型的树深度、树数量和学习率。

运行贝叶斯优化,在有限的 GPU 预算上联合调整深度网络的正则化强度和批量大小。

应用 Hyperband 来短暂训练数十种配置,然后只为最有希望的幸存者提供更多的时期。

实施模式

超参数调优实践

将学习率扫描几个数量级,以找到网络快速训练而不发散的值。

将学习率扫过几个数量级,以找到网络快速训练而不发散的价值。当团队预先定义质量阈值、为边缘情况保留人工升级路径并跟踪一段时间内的生产力增益和错误成本时,通常会获得更好的结果。

超参数调优实践

使用随机搜索来调整表格数据上梯度提升模型的树深度、树数量和学习率。

使用随机搜索来调整表格数据上的梯度提升模型的树深度、树数量和学习率当团队预先定义质量阈值、为边缘情况保留人工升级路径并随着时间的推移跟踪生产力增益和错误成本时,通常会获得更好的结果。

超参数调优实践

运行贝叶斯优化,在有限的 GPU 预算上联合调整深度网络的正则化强度和批量大小。

运行贝叶斯优化,在有限的 GPU 预算上联合调整深度网络的正则化强度和批量大小。当团队预先定义质量阈值、为边缘情况保留人工升级路径并随着时间的推移跟踪生产力增益和错误成本时,通常会获得更好的结果。

超参数调优实践

应用 Hyperband 来短暂训练数十种配置,然后只为最有希望的幸存者提供更多的时期。

应用 Hyperband 来简单地训练数十种配置,然后只为最有希望的幸存者提供更多的 epoch。当团队预先定义质量阈值、为边缘情况保留人工升级路径并随着时间的推移跟踪生产力增益和错误成本时,通常会得到更好的结果。

风险与防护栏

!

优化一项基准测试可以隐藏更广泛的系统弱点。

!

基础设施和维护成本常常被低估。

!

随着系统变得更加复杂,安全性和可观察性差距可能会扩大。

实施路线图

1

在实施之前定义延迟、质量和成本目标。

在实施之前定义延迟、质量和成本目标。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

2

在实际负载和数据条件下进行基准测试。

在实际负载和数据条件下进行基准测试。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

3

仪器监控错误、漂移和用户影响。

仪器监控错误、漂移和用户影响。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

4

在扩展之前准备回滚和事件响应路径。

在扩展之前准备回滚和事件响应路径。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

不断探索