正则化(Regularization)简介
在机器学习中,正则化是用来防止模型过拟合的一种方法。通过向模型的损失函数中加入一个正则项(也叫惩罚项),约束模型的复杂度,使其更具泛化能力。
为什么需要正则化?
- 过拟合(Overfitting) :
- 训练集的误差很小,但在测试集上的表现较差。
- 通常是因为模型过于复杂,过度拟合训练数据的噪声或细节。
- 正则化的作用 :
- 限制模型的自由度(降低复杂度)。
- 让模型更加平滑,从而提升对未见数据的泛化能力。
样例
下面是加入正则项的损失函数
要是的损失函数最小,就需要使 w1,w2 变得无穷小,以满足 最小
最后使得模型等同于上图第一个模型
常见的正则化方法
1. L1 正则化(Lasso Regularization)
- 定义 : 在损失函数中加入参数绝对值的和作为正则项:
- 特点 :
- 能将某些特征的权重缩小到 0,从而实现特征选择。
- 更适合用于稀疏数据或希望简化模型的场景。
2. L2 正则化(Ridge Regularization)
-
定义: 在损失函数中加入参数平方和作为正则项:
-
特点:
- 不会强制权重为零,而是让权重更趋向于较小值。
- 常用于回归模型(如 Ridge Regression)中。
3. Elastic Net 正则化
- 定义 : 同时结合 L1 和 L2 的正则化形式:
- 特点 :
- 结合了 L1 和 L2 的优点。
- 在稀疏数据和多重共线性场景下效果更好。
4. Dropout(丢弃法)
- 原理: 在训练时,随机丢弃神经网络中的一部分神经元(即将部分输出设为 0)。
- 特点 :
- 防止深度神经网络过拟合。
- 增强网络的鲁棒性,相当于对多个子模型进行集成。
正则化中的关键参数
-
正则化强度 (λ\lambdaλ):
- 控制正则化项的影响力。
- λ\lambdaλ 太大:模型可能欠拟合。
- λ\lambdaλ 太小:正则化效果不足,可能过拟合。
- 通常通过交叉验证选择最优 λ\lambdaλ。
-
选择正则化方法:
- 数据稀疏:优先选择 L1 或 Elastic Net。
- 数据规模大,特征较多:优先选择 L2。
总结
正则化是控制模型复杂度、防止过拟合的核心技术。根据具体任务需求,可以选择 L1、L2、Elastic Net、Dropout 或其他正则化方法来提升模型的泛化能力。