正则化(Regularization) 是机器学习和统计学中的一种技术,用于防止模型过拟合。在训练模型时,模型可能会过度拟合训练数据,导致在新数据上的表现较差。正则化通过在优化过程中引入额外的约束或惩罚项,使模型更简单、泛化能力更强,从而避免过拟合。
1. 过拟合问题的背景
过拟合(Overfitting) 发生在模型在训练数据上表现得非常好,但在测试数据上表现不佳时。原因是模型学到了数据中的噪声或随机波动,而不是数据的基本模式。这通常发生在模型过于复杂时,比如当模型的参数过多,或者模型训练的迭代次数过多。
过拟合的表现通常是:
- 训练集误差很小,模型在训练集上表现很好。
- 测试集误差较大,模型在新数据上表现较差。
为了解决这个问题,我们可以通过正则化来限制模型的复杂度,使其更好地泛化到新数据上。
2. 正则化的基本原理
正则化通过在损失函数中引入一个额外的惩罚项,来限制模型的复杂度,防止模型过度拟合训练数据。正则化会迫使模型的参数变小(接近于零),从而使得模型更加平滑,避免复杂的参数设置。
目标函数的通用形式为:
目标函数 = 原始损失函数 + λ ⋅ 正则化项 \text{目标函数} = \text{原始损失函数} + \lambda \cdot \text{正则化项} 目标函数=原始损失函数+λ⋅正则化项
其中:
- 原始损失函数:例如,线性回归中的均方误差 (MSE)。
- 正则化项:通常是模型参数的某种形式的范数(如 L1 或 L2 范数)。
- λ \lambda λ:正则化强度的超参数,控制正则化项的影响大小。当 λ = 0 \lambda = 0 λ=0 时,没有正则化;当 λ \lambda λ 较大时,正则化项的影响变强。
3. 常见的正则化方法
a. L2 正则化(Ridge 回归,岭回归)
L2 正则化 是一种常见的正则化技术,它在损失函数中加入参数的平方和作为惩罚项。具体来说,L2 正则化会通过惩罚模型参数的平方和来限制模型的参数值。
对于线性回归问题,L2 正则化的目标函数为:
J ( θ ) = 1 2 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 2 + λ ∑ j = 1 n θ j 2 J(\theta) = \frac{1}{2m} \sum_{i=1}^{m} \left( h_\theta(x^{(i)}) - y^{(i)} \right)^2 + \lambda \sum_{j=1}^{n} \theta_j^2 J(θ)=2m1i=1∑m(hθ(x(i))−