机器学习中的正则化

2025年6月5日 | 阅读10分钟

什么是正则化?

正则化是机器学习中最重要的概念之一。它是一种通过向模型添加额外信息来防止模型过拟合的技术。

有时机器学习模型在训练数据上表现良好,但在测试数据上表现不佳。这意味着模型在处理未见过的数据时无法预测输出,通过在输出中引入噪声,因此该模型被称为过拟合。这个问题可以通过正则化技术来解决。

这项技术可以以这样的方式使用,它将允许通过减少变量的幅度来维护模型中的所有变量或特征。因此,它保持了模型的准确性和泛化能力。

它主要将特征的系数正则化或减少到零。简单地说,“在正则化技术中,我们通过保持相同数量的特征来减少特征的幅度。

正则化如何工作?

正则化通过向复杂模型添加惩罚或复杂性项来工作。让我们考虑简单的线性回归方程

y= β0+β1x1+β2x2+β3x3+⋯+βnxn +b

在上述方程中,Y表示要预测的值

X1, X2, …Xn是Y的特征。

β0,β1,…..βn分别是附着在特征上的权重或幅度。这里表示模型的偏差,b表示截距。

线性回归模型试图优化β0和b以最小化成本函数。线性模型的成本函数方程如下所示

Regularization in Machine Learning

现在,我们将添加一个损失函数并优化参数,以使模型能够预测Y的准确值。线性回归的损失函数称为 RSS或残差平方和。

正则化技术

正则化技术主要有两种,如下所示

  • 岭回归
  • Lasso 回归

岭回归

  • 岭回归是线性回归的一种类型,其中引入少量偏差,以便我们能够获得更好的长期预测。
  • 岭回归是一种正则化技术,用于降低模型的复杂性。它也称为L2正则化
  • 在此技术中,通过向成本函数添加惩罚项来更改成本函数。添加到模型的偏差量称为岭回归惩罚。我们可以通过将lambda乘以每个单独特征的平方权重来计算它。
  • 岭回归中成本函数的方程将是
Regularization in Machine Learning
  • 在上述方程中,惩罚项对模型的系数进行正则化,因此岭回归减少了系数的幅度,从而降低了模型的复杂性。
  • 从上式可以看出,如果λ的值趋于零,则方程变为线性回归模型的成本函数。因此,对于λ的最小值,模型将类似于线性回归模型。
  • 如果自变量之间存在高度共线性,则一般线性或多项式回归将失败,因此为了解决此类问题,可以使用岭回归。
  • 如果我们有比样本更多的参数,它有助于解决问题。

Lasso 回归

  • Lasso回归是另一种降低模型复杂度的正则化技术。它代表最小绝对收缩和选择算子。
  • 它类似于岭回归,只是惩罚项只包含绝对权重而不是权重的平方。
  • 由于它采用绝对值,因此它可以将斜率缩小到0,而岭回归只能将其缩小到接近0。
  • 它也称为L1正则化。Lasso回归的成本函数方程将是
Regularization in Machine Learning
  • 此技术中的某些特征在模型评估中被完全忽略。
  • 因此,Lasso回归可以帮助我们减少模型的过拟合以及特征选择。

岭回归和Lasso回归的主要区别

  • 岭回归主要用于减少模型中的过拟合,它包括模型中存在的所有特征。它通过收缩系数来降低模型的复杂性。
  • Lasso回归有助于减少模型的过拟合以及特征选择。

高级正则化技术

神经网络可能存在 dropout 问题。

  • 正则化神经网络通常通过使用 dropout 来完成。在训练过程中,每一层的某些神经元在每次前向传播期间会随机设置为零,这样网络就不能只依赖一个神经元。模型不会过拟合,因为它结合了多个较小的子网络,有助于提高泛化能力。Dropout 可以通过设置 dropout 率来改变,通常在 0.2 到 0.5 之间。尽管它提高了稳定性,但它可能导致学习速度变慢,并且一旦模型用于推理,通常不会将其打开。在深度学习和卷积网络中,了解和使用 dropout 非常有用。

提前停止

  • 使用提前停止作为一种方法有助于提高梯度下降的泛化能力。随着模型的构建,会监控其验证分数,并在训练数据对模型影响过大时停止该过程,以防止过拟合。因为它简单高效,这种方法通常在未公开数据上取得更好的结果。对于提前停止,数据被划分,形成训练集和验证集,并选择一个耐心参数,即在停止之前需要等待多长时间。人们经常在神经网络和梯度提升过程中使用它。

数据增强作为一种隐式正则化。

  • 通过数据增强,我们创建数据样本的修改版本,包括在计算机视觉中旋转、裁剪、翻转或使图像更嘈杂,或者在NLP中使用不同的词语表达相同含义。因此,模型对输入数据中的微小差异更具鲁棒性,并且不太可能过拟合。当模型仅使用有限的未明确标记的数据进行训练时,它被证明非常有用。最新的图像分类器和自然语言处理(NLP)系统经常依赖数据增强。

按批次或按层进行归一化

  • 它们都旨在规范进入深度神经网络层的信息,这可以保持训练的一致性并加速训练。批归一化是对迷你批次中每个样本的先前激活层的最终结果进行归一化,而层归一化是对单个数据集点中每个特征的结果进行归一化。这些方法的应用解决了内部协变量偏移问题,通过在训练中添加噪声作为正则化器,并有助于在不过拟合的情况下更快地学习。批归一化在卷积网络和前馈网络中最有用。层归一化在循环网络和Transformer中占据主导地位。

案例研究与应用

计算机视觉对正则化的需求

  • 为了执行图像分类和目标检测等图像任务,计算机视觉项目通常应用L1/L2惩罚、dropout和数据增强技术。在ImageNet上训练CNN,涉及大量数据,广泛依赖dropout和图像增强来解决过拟合问题。这种操作可以阻止模型仅仅使用某些图像特征,从而使其在未知图像上更加准确和有效。正则化在改进面部识别、自动驾驶和医学成像技术方面发挥了重要作用,因为它使深度模型能够更好地处理现实世界中不完美的数据。

自然语言处理领域的稳定化和管理

  • NLP中对文本分类、情感分析和机器翻译都需要正则化。当训练集过小或不平衡时,循环神经网络(RNN)和Transformer容易在文本中过拟合数据。现在通过使用dropout、L2正则化和数据增强方法(如反向翻译和同义词替换)来提高泛化性能。由于使用了常见的正则化方法,神经机器翻译在处理句子中各种方式和词汇方面表现更好。随着这些进步,像BERT和GPT这样的模型可以通过正则化进行调整,以实现更广泛的实际应用。

基因组学和生物信息学中的常见调控方式

  • 由于基因组数据通常是高维的且样本数量不多,正则化变得非常有用。例如,L1(Lasso)正则化用于基因选择,可以简化模型并提高结果的生物学意义。在依赖遗传学的疾病预测模型中使用正则化非常重要,因为过拟合可能会严重影响预测的准确性。弹性网络回归和类似的工具,生物信息学专家正在创建在不同群体中表现良好的模型,比以前更快,应用于个性化医疗和全基因组关联研究领域。

金融预测的正则化

  • 大量特征和缺乏充足的历史数据使得金融数据集噪音大且存在过拟合风险。正则化在风险分析、算法交易和构建信用评分中至关重要。使用岭回归或Lasso回归可以简化股票价格和违约风险模型,并使其更好地应对市场变化。使用提前停止和dropout可以防止深度学习时间序列模型过拟合。除了帮助预测结果外,正则化还可以确保您的金融模型符合相关法规。

挑战

过度正则化可能导致模型性能不佳

  • 当正则化过于激进时,模型可能会失去检测有用数据模式的能力,我们称之为欠拟合。必须找到正则化参数(例如lambda)的适当值,以确保模型复杂性和性能都合适。过度正则化的模型学习能力较差,因为这种正则化会阻碍主要特征的学习。找到适当的正则化量通常是一个测试问题,并且可能仅限于一个数据集。

选择正确超参数的重要性

  • 正确选择正则化超参数对该方法的有效性至关重要。选择错误的参数可能导致数据集过拟合或欠拟合。调整超参数需要新的通用数据分析、人工智能、机器学习和专家系统7011,这涉及网格搜索或交叉验证,对于高级模型和数据集来说成本可能很高。

使用无代表性样本时的困难

  • 正则化方法依赖于所使用的数据是完整且涵盖未来情况的假设。然而,如果数据集很小或有偏差,它实际上可能会阻止模型良好学习并变得有用。因为它缺乏某些类型的数据,它可能会遗漏某些特征,并且在处理未知情况时表现不佳。这种挑战在医疗保健和欺诈检测中带来了问题,因为收集数据的成本要高得多,并且通常会变得不平衡,因此使用正则化不再有效或可能产生负面影响。

不擅长解决所有可能发生的过拟合情况

  • 正则化解决了最常见的过拟合类别,但不能防止因数据泄露、不当特征选择或数据处理不足而发生的过拟合。此外,正则化的性能取决于数据或特征的处理程度。因此,为了获得最佳结果,应将其与其他最佳技术结合使用,包括正确的验证、正确的特征选择和可靠的预处理。

常见问题解答

机器学习中的正则化是什么?为什么应用它?

  • 在机器学习中添加正则化有助于确保模型不会变得过于复杂并开始过拟合。当模型学习训练集中不重要的模式时,它往往会在新数据上给出错误的答案。使用正则化,通过减小某些模型参数的大小来解决这个问题,这意味着模型仍然有用,并且只提取重要信息。

L1和L2正则化有什么区别?在什么情况下应该使用它们?

  • L1和L2正则化被许多人用来限制模型的复杂性。Lasso使用L1正则化,这会导致许多模型系数归零——这是特征选择的理想特性。L2正则化(岭回归)将系数平方然后降低所有值;L2正则化很少使任何系数变为0,这在存在有用特征且示例强相关时很有用。根据数据选择哪种方法——如果您认为只有少数特征重要,则选择L1;如果大多数特征都有帮助,则选择L2;如果两者之间没有明确的选择,则选择Elastic Net。

正则化如何提升模型泛化的整体性能?

  • 正则化方法通过限制模型的复杂部分,使模型能够拟合典型模式,而不是数据集中微小或不寻常的细节。因此,模型可以对未曾学习过的任何事物做出更准确的预测。因此,使用正则化对于真正的机器学习应用至关重要,因为我们关注的是在新数据上的良好表现,而不仅仅是记住训练数据中的内容。

弹性网络正则化是什么意思?何时应该使用它?

  • 该方法结合了L1 Lasso和L2 Ridge惩罚。当存在大量特征和它们之间可能存在的链接时,该技术被证明是实用的,因为它将相似的特征分组,不像Lasso只从一个集合中取一个变量。当变量数量大于观测数量,或者当需要强正则化以及有用的特征选择和系数收缩时,弹性网络被证明是有用的。因为它能够处理大型和变化的数据,它常用于基因组学、金融和文本处理。

您应该如何决定alpha或lambda的正确值?

  • 找到正确的正则化参数是一项重要的任务,通常通过网格搜索、随机搜索和贝叶斯优化等方法来解决。通常,模型针对每种参数选择拟合到一小部分数据,并选择具有最佳验证性能的参数。参数的最佳值可以防止您的模型过拟合或欠拟合。由于值的选择与数据的性质和使用的模型相关,因此可靠的选择受益于自动化工具和验证集的使用。

下一个主题时间序列数据集