早期停止是一种在机器学习中使用的正则化形式,用于在使用迭代优化方法(如梯度下降)训练模型时避免过拟合。这些方法在每次迭代中更新模型,以更好地拟合训练数据。在达到某一点之前,这能提升模型在训练集之外数据(如验证集)上的表现。然而,超过该点后,继续改善模型对训练数据的拟合,反而会增加泛化误差。早期停止规则提供了关于在过拟合开始前应运行多少次迭代的指导。早期停止规则已被应用于许多不同的机器学习方法中,其理论基础各有不同。
背景
本节介绍描述早期停止方法所需的一些基本机器学习概念。
过拟合
机器学习算法基于有限的训练数据集合来训练模型。在训练过程中,模型根据其对训练集中观测值的预测准确性进行评估。然而,一般来说,机器学习方案的目标是生成一个能够泛化的模型,即能够准确预测未见过的观测值。当模型对训练数据的拟合很好,但泛化误差却增大时,就发生了过拟合。这是机器学习中的一个核心挑战,因为具有过大容量的模型可能会记住噪声,而不是学习数据中的潜在模式。
正则化
在机器学习中,正则化指的是修改学习算法以防止过拟合的过程。这通常涉及对学习到的模型施加某种平滑性约束。这种平滑性可以通过显式地固定模型中的参数数量,或通过修改代价函数(如Tikhonov正则化)来显式实现。Tikhonov正则化以及主成分回归和许多其他正则化方案,都属于谱正则化的范畴,其特点是应用一个滤波器。早期停止也属于这类方法。在深度学习中,正则化对于训练大型神经网络而不记忆训练数据至关重要。
梯度下降方法
梯度下降方法是一类一阶迭代优化方法。每次迭代通过沿目标函数负梯度方向迈出一步,来更新优化问题的近似解。通过适当选择步长,这种方法可以收敛到目标函数的局部最小值。在机器学习中,梯度下降通过定义一个反映学习器在训练集上误差的损失函数,然后最小化该函数来使用。早期停止与梯度下降尤为相关,因为它决定了何时停止这一迭代过程。
基于分析结果的早期停止
统计学习理论中的早期停止
早期停止可用于正则化统计学习理论中遇到的非参数回归问题。对于给定的输入空间、输出空间以及从未知概率分布中抽取的样本,目标是逼近一个回归函数。逼近回归函数的一种常见选择是使用再生核希尔伯特空间中的函数。这些空间可能是无限维的,在这种情况下,它们可能提供过拟合任意大小训练集的解。因此,正则化对这些方法尤为重要。对非参数回归问题应用正则化的一种方法是对梯度下降等迭代过程应用早期停止规则。
针对这些问题提出的早期停止规则基于对泛化误差作为迭代次数函数的上界分析。它们给出了在开始求解过程之前即可计算的迭代次数建议。这一理论基础使早期停止区别于纯粹启发式的方法。
#### 示例:最小二乘损失
改编自Yao、Rosasco和Caponnetto(2007):设输入空间为n维实空间的子集,输出空间为实数集。给定从未知概率分布独立抽取的一组样本,目标是最小化最小二乘损失函数的期望风险。回归函数是给定输入时输出的条件期望。针对此设置的早期停止规则提供了一个平衡偏差和方差的停止迭代次数,从而在许多情况下达到最优收敛速率。
实际实现
在实践中,早期停止通过在训练期间监控模型在验证集上的表现来实现。在每个周期(或每固定次数的迭代)后,评估模型在验证集上的表现。如果验证表现在一定次数的检查中未得到改善,则停止训练。这个耐心参数允许验证表现有暂时波动,而不会过早停止。通常保留在验证集上表现最佳的模型参数,而不是最后一次迭代的参数。
这种方法广泛用于训练Transformer模型和大型语言模型,因为训练成本极高,且过拟合风险持续存在。例如,OpenAI和Google DeepMind在其训练流程中采用早期停止,以确保模型能够良好泛化到未见数据。
与其他正则化方法的关系
早期停止与其他形式的正则化密切相关。特别地,已有研究表明,在某些设置下,梯度下降中的早期停止等效于L2正则化(也称为权重衰减),其中迭代次数所起的作用类似于正则化强度的倒数。这一联系揭示了早期停止为何有效:它通过限制更新次数来限制模型的有效复杂度,类似于权重衰减惩罚大权重的方式。
与显式修改损失函数的正则化方法不同,早期停止是一种隐式正则化形式。它不改变目标函数,而是约束优化路径。这使得它易于应用于任何迭代训练算法,而无需修改底层模型架构或损失函数。
理论基础
早期停止的理论基础已在统计学习理论背景下得到广泛研究。研究者推导出泛化误差作为迭代次数函数的界,表明存在一个最优停止时间,使期望误差最小化。这些界通常取决于假设空间的性质(如容量或复杂度)以及数据中的噪声水平。
对于再生核希尔伯特空间中的非参数回归,已有研究表明,在特定条件下,早期停止可以达到极小极大最优速率。这意味着,在相同假设下,没有其他估计器能够实现更低的渐近误差。这些结果为在实践中使用早期停止提供了严格的理论依据。
在现代AI中的应用
早期停止是现代AI系统训练中的标准组成部分。在深度学习中,它用于训练卷积网络、循环网络和Transformer,以完成图像分类、语音识别和自然语言处理等任务。Anthropic和OpenAI等公司在训练GPT和Claude等模型时使用早期停止,以避免在大型数据集上过拟合。
除了监督学习,早期停止也应用于无监督学习和强化学习设置。例如,在训练生成模型时,早期停止可以防止生成器记忆训练样本。在强化学习中,当智能体在验证环境中的表现趋于平稳时,可以停止训练。
局限性与注意事项
尽管早期停止简单有效,但它也有局限性。验证集的选择和耐心参数会显著影响最终模型的质量。如果验证集过小,性能估计可能带有噪声,导致过早或过晚停止。此外,早期停止可能与其他超参数(如学习率和批量大小)相互作用,使得单独调优变得困难。
另一个注意事项是,早期停止假设验证集上的表现是泛化能力的可靠代理。在某些情况下,例如数据分布随时间变化时,这一假设可能不成立。尽管如此,早期停止仍然是机器学习从业者工具箱中的基本工具。