正则化
Regularization
正则化是机器学习中用于防止模型过拟合的核心技术。当模型过于复杂时,它可能会死记硬背训练数据中的噪声,导致在新数据上表现不佳。正则化通过在损失函数中增加一个惩罚项,限制模型的复杂度,鼓励模型学习更简单、更泛化的模式。
对于线性回归模型,使用L1正则化的模型叫做 Lasso回归,使用L2正则化的模型叫做 Ridge回归(岭回归)。
L1正则化
假设原始损失函数为
L1正则化惩罚的是权重的绝对值之和。它的效果是:
- 让许多权重直接变为零,产生稀疏解。这意味着它能够自动进行特征选择,只保留少数重要特征。
- 因为L1的梯度是常数(除零点外),在优化过程中,如果某个权重的绝对值较小,它很容易被“推”到零并保持为零。
对于线性回归,其形式为:
几何解释
L1正则化对应的是菱形(曼哈顿)约束:
L2正则化(权重衰减)
假设原始损失函数为
其中
L2正则化惩罚的是权重的平方和。在梯度下降优化时,它会让权重在每次更新时额外减去一小部分(这就是“权重衰减”名字的由来)。最终效果是:
- 让所有权重尽可能小,但不会强制为零。模型变得“平滑”,对输入的小变化不敏感。
- 它假设所有特征都对输出有一定贡献,因此保留所有特征,只是削弱它们的影响。
对于线性回归,其形式为:
几何解释
在权重的二维空间中,L2正则化相当于对权重向量施加了一个圆形约束(因为
总结
- L1正则化:通过强制权重为零,实现特征选择,适用于高维稀疏场景。
- L2正则化:通过抑制权重的幅度,使模型平滑,适用于所有特征都有用的情况。
例子:画线拟合
假设你有几个数据点,需要用一条线去拟合它们。
- 没有正则化(过拟合): 画了一条弯弯曲曲的线,完美穿过了每一个点,但线非常扭曲(权重极大)。来一个新点,肯定不准。
- L2 正则化: 想扭曲也可以,但扭曲要扣分。所以模型只能稍微弯一点,尽量平滑。线没有那么精确,但更稳。
- L1 正则化: 想弯一下?可以,但弯一次扣一次分。模型一算,扣分太多,不如直接画条直线。于是,所有的“弯曲特征”权重都被设为 0,只留下一条直线。