正则化
探索正则化如何防止机器学习中的过拟合。了解如何使用 Ultralytics YOLO26 实施 dropout 和权重衰减以提高模型泛化能力。
正则化是机器学习中用于防止模型过度复杂化并提高其对新数据泛化能力的一系列技术。在训练过程中,模型通常通过学习训练数据中的复杂模式来努力最小化其误差。然而,如果没有约束,模型可能会开始记忆噪声和异常值——这个问题被称为过拟合。正则化通过向模型的损失函数添加惩罚项来解决这个问题,有效地抑制极端参数值,并迫使算法学习更平滑、更鲁棒的模式。
核心概念与技术
正则化原理常被比作Occam's Razor,暗示最简单的解决方案通常是正确的。通过约束模型,开发者确保它专注于数据最显著的特征,而非偶然的相关性。
几种常用方法用于在现代深度学习框架中实现正则化:
-
L1 和 L2 正则化:这些技术根据模型权重的幅度添加一个惩罚项。L2 正则化,也称为 岭回归 或权重衰减,严厉惩罚大权重,鼓励它们变得小而分散。L1 正则化,或 Lasso 回归,可以将某些权重驱动到零,从而有效地执行特征选择。
-
Dropout:特别用于 神经网络,一个 dropout 层 在训练期间随机停用一部分神经元。这迫使网络开发冗余路径来识别特征,确保没有单个神经元成为特定预测的瓶颈。
-
数据增强: 尽管主要是一个预处理步骤,数据增强却是一个强大的正则化器。通过使用修改后的图像版本(旋转、翻转、颜色偏移)人工扩展数据集,模型接触到更多变异性,从而防止其记忆原始静态样本。
-
早期停止:这涉及在训练期间监测模型在 验证数据 上的表现。如果验证误差开始增加而训练误差减少,则停止该过程,以防止模型学习到噪声。
实际应用
在数据变异性高的各种行业中部署可靠的 AI 系统,正则化是不可或缺的。
-
自动驾驶:在汽车AI解决方案中,计算机视觉模型必须在各种天气条件下detect行人与交通标志。如果没有正则化,模型可能会记忆训练集中的特定照明条件,并在现实世界中失效。像权重衰减这样的技术确保了detect系统能够很好地泛化到雨、雾或眩光等情况,这对于自动驾驶车辆的安全至关重要。
-
医学影像:在进行医学图像分析时,由于隐私问题或疾病的罕见性,数据集的规模通常有限。过拟合是这里的一个重大风险。正则化方法有助于训练用于detect X射线或MRI异常的模型在新的患者数据上保持准确性,从而支持医疗AI中更好的诊断结果。
用Python实现
现代库通过超参数使正则化应用变得简单。以下示例演示了如何应用 dropout 和 weight_decay 训练时
YOLO26 模型
from ultralytics import YOLO
# Load the latest YOLO26 model
model = YOLO("yolo26n.pt")
# Train with regularization hyperparameters
# 'dropout' adds randomness, 'weight_decay' penalizes large weights to prevent overfitting
model.train(data="coco8.yaml", epochs=100, dropout=0.5, weight_decay=0.0005)
通过Ultralytics Platform可以无缝管理这些实验并跟踪不同正则化值如何影响性能,该平台提供了用于记录和比较训练运行的工具。
正则化与相关概念
将正则化与其他优化和预处理术语区分开来很有帮助:
-
正则化与归一化:规范化是指将输入数据缩放至标准范围,以加快收敛速度。虽然像
批量归一化等技术可以产生轻微的
正则化效果,但其主要目的是稳定学习动态,而正则化则明确地
对复杂性进行惩罚。
-
正则化 vs. 超参数调优:正则化参数(如dropout率或L2惩罚)本身就是超参数。超参数调优是寻找这些设置最优值的更广泛过程,通常旨在平衡偏差-方差权衡。
-
正则化与集合学习:集合方法结合了多个模型的预测结果,以减少差异并提高泛化效果。虽然
这与正则化的目标相似,但它是通过聚合不同的模型而不是限制单一模型的学习来实现的。
单一模型的学习。