Regularization for Deep Learning
9/10/25About 6 min
这是一个非常棒的问题,它触及了传统机器学习与深度学习之间核心思想的传承。
简单答案是:岭回归(L2正则化)和Lasso回归(L1正则化)的基本思想——正则化(Regularization),不仅适用于深度学习,而且是其不可或缺的核心技术之一。 不过,它们通常不再被直接称为“岭回归”或“Lasso回归”,而是以更一般化的“L1/L2正则化”或“权重衰减”的形式出现。
下面我们来一步步详细解释:
1. 核心思想的传承:对抗过拟合
无论是线性模型还是深度神经网络,机器学习模型都有一个共同的敌人:过拟合(Overfitting)。即模型过于复杂,完美地记住了训练数据中的噪声和细节,导致在新数据上的泛化能力很差。
- 岭回归(L2)的核心:通过在损失函数中增加模型权重(参数)的L2范数(平方和)作为惩罚项,迫使所有权重都趋向于变小、变得分散,而不是依赖少数几个巨大的权重。这会让模型变得更简单、更平滑,从而减轻过拟合。
- Lasso回归(L1)的核心:通过在损失函数中增加模型权重(参数)的L1范数(绝对值和)作为惩罚项,它倾向于将一些不重要的特征的权重直接压缩到零,从而实现特征选择,产生稀疏模型。
深度学习完全继承了这一思想,并将其应用在规模更大、结构更复杂的模型上。
2. 在深度学习中的具体应用形式
在深度学习框架(如PyTorch, TensorFlow)中,正则化被直接集成到了优化器里,使用起来非常方便。
L2正则化 -> “权重衰减”(Weight Decay)
这是最直接、最广泛的应用。在深度学习中,L2正则化几乎等同于“权重衰减”这个概念。
- 是什么:在每次参数更新时,除了根据梯度调整参数外,还会额外将参数值向零缩小一点点(乘以一个小于1的因子)。
- 为什么有效:防止权重变得过大,鼓励模型使用所有特征一点点,而不是极度依赖少数特征,从而提高泛化能力。这极大地缓解了过拟合。
- 如何使用:在定义优化器(如
Adam,SGD)时,直接设置weight_decay参数。几乎所有成功的深度学习模型(从ResNet到BERT)的训练配置中,你都能找到权重衰减的身影。它是深度学习训练的标配。# 在PyTorch中,使用L2正则化(权重衰减)非常简单 optimizer = torch.optim.Adam(model.parameters(), lr=1e-3, weight_decay=1e-5) # `weight_decay` 参数就是L2正则化的强度系数(λ)
L1正则化
L1在深度学习中也同样可用,但不如L2普遍。
- 是什么:在损失函数中增加模型权重的绝对值和作为惩罚项。
- 为什么有效:和Lasso回归一样,它倾向于产生稀疏权重,即让很多权重值直接变为零。这在某些场景下非常有用:
- 模型压缩(Model Compression):通过L1正则化,可以“剪枝”掉大量不重要的神经元连接(权重为0),得到一个稀疏模型。这个稀疏模型可以大幅减少内存占用和计算量,便于部署在手机、嵌入式设备等资源受限的环境中。
- 特征选择:虽然深度学习自动学习特征,但有时我们仍想解释哪些输入特征更重要。L1正则化可以帮助凸显出最重要的输入路径。
- 如何使用:通常需要手动将其添加到损失函数中,因为主流优化器没有像
weight_decay那样的直接参数。# PyTorch中手动添加L1正则化的示例 l1_lambda = 1e-6 # L1正则化强度 l1_loss = 0 for param in model.parameters(): l1_loss += torch.norm(param, p=1) # 计算所有参数的L1范数 total_loss = your_original_loss_function(...) + l1_lambda * l1_loss optimizer.zero_grad() total_loss.backward() # 反向传播 optimizer.step() # 更新参数
3. 深度学习中的其他正则化“利器”
深度学习的成功不仅仅依赖于L1/L2。由于其模型极其灵活和复杂,研究者们发明了更多样、更强大的正则化技术,这些技术与L1/L2相辅相成,共同对抗过拟合:
- Dropout:在训练过程中,随机地“丢弃”(暂时屏蔽)一部分神经元。这迫使网络不能过度依赖任何单个神经元,必须学习到更加鲁棒的特征。这是深度学习中最标志性的正则化方法之一。
- 批量归一化(Batch Normalization):虽然其主要目的是稳定训练、加速收敛,但通过引入训练和测试时的不一致性(噪声),它同时也起到了轻微的正则化效果。
- 数据增强(Data Augmentation):对输入数据(如图像)进行随机旋转、裁剪、变色等操作,人工扩大训练数据集。这是计算机视觉领域最强大的正则化手段。
- 早停(Early Stopping):在训练过程中持续监控验证集性能,一旦性能不再提升就停止训练,防止模型过度记忆训练集。
总结与对比
| 技术 | 源于 | 在深度学习中的角色 | 主要目的 |
|---|---|---|---|
| L2正则化 | 岭回归 | 至关重要,标配(以权重衰减的形式集成) | 防止权重过大,提高泛化能力 |
| L1正则化 | Lasso回归 | 有选择地使用 | 产生稀疏权重,用于模型压缩和特征选择 |
| Dropout/BN/数据增强 | 深度学习原生 | 与L1/L2同等重要,甚至更常用 | 通过各种方式增加模型鲁棒性,防止过拟合 |
结论:
不要说“岭回归/Lasso回归适用于深度学习”,而应该说“L1和L2正则化的思想是深度学习正则化技术的基石”。
- 对于绝大多数日常训练深度网络的任务,你应该默认使用L2正则化(权重衰减)。
- 如果你有明确的模型轻量化、压缩或部署需求,可以尝试L1正则化。
- 千万不要忽视Dropout、数据增强等其他正则化技术,它们通常能带来比单纯调大权重衰减系数更显著的效果。
希望这个解释帮你理清了传统机器学习与深度学习之间美妙的联系!��器学习与深度学习之间美妙的联系!