# L1 正则化(Lasso)如何防止过拟合? 在机器学习中,**过拟合(overfitting)**指模型在训练集上表现很好,但在新数据(测试集)上表现很差。这通常是因为模型学到了训练数据中的噪声或不重要的细节,模型太“复杂”了。 --- ## 一、L1 正则化的基本思想 L1 正则化(也叫做 Lasso)在模型的损失函数里加上一项权重绝对值的惩罚: $$ \min_w \; \underbrace{\sum_{i=1}^n (y_i - \hat y_i)^2}_{\text{原始损失}} \;+\; \lambda \sum_{j=1}^p |w_j| $$ - 第一项是普通的最小二乘损失; - 第二项是正则化项,$\lambda \ge 0$ 控制惩罚强度; - $|w_j|$ 表示第 $j$ 个特征的权重(系数)的绝对值。 **作用**: 1. 当 $\lambda$ 增大时,模型会尽量让 $\sum |w_j|$ 变小,也就是把一些 $w_j$“压”到 0。 2. 零权重意味着对应特征被“丢弃”了,从而简化了模型。 3. 模型更简单,容量降低,抗噪能力更强,过拟合的风险就降低了。 --- ## 二、手动算例:单特征回归 假设只有一个特征 $x$,训练数据只有一个样本: $$ (x,y) = (1,\,2) $$ 我们用模型 $\hat y = w x = w$,损失函数为 $$ L(w) = (w - 2)^2 + \lambda |w|. $$ ### 1. 无正则化时 ($\lambda=0$) $$ L(w) = (w-2)^2. $$ 对 $w$ 求导并令导数为零: $$ \frac{dL}{dw} = 2(w-2) = 0 \quad\Longrightarrow\quad w = 2. $$ 此时模型完全拟合训练点。 ### 2. 加入 L1 正则 ($\lambda>0$),假设 $w>0$ $$ L(w) = (w-2)^2 + \lambda w. $$ 导数: $$ \frac{dL}{dw} = 2(w-2) + \lambda = 0 \quad\Longrightarrow\quad 2w - 4 + \lambda = 0 \quad\Longrightarrow\quad w = 2 - \frac{\lambda}{2}. $$ - 当 $\lambda$ 较小时($\lambda<4$),解 $w=2-\lambda/2>0$,模型权重从 2 缩小到了 $2-\lambda/2$。 - 当 $\lambda \ge 4$ 时,理论最优会落到 $w=0$(因为对于 $w<0$ 还要考虑 $|w|$ 的拐点,最终最小点在 0 处)。 #### 手算示例 | $\lambda$ | 计算公式 | 最优 $w$ | |:-----------:|:-------------------:|:-----------:| | 0 | $2 - 0/2$ | 2 | | 1 | $2 - 1/2 =1.5$ | 1.5 | | 2 | $2 - 2/2 =1.0$ | 1.0 | | 4 | $2 - 4/2 =0$ | 0(阈值) | | 5 | $\le0$(取 0) | 0 | 可以看到,随着 $\lambda$ 增大,权重 $w$ 不断被削减,直到完全归零——这就实现了**特征选择**和**模型简化**。 --- ## 三、为什么能防止过拟合? 1. **简化模型**:将不重要的特征权重变为 0,只保留对预测最有用的那部分,降低模型的自由度。 2. **减少方差**:过拟合通常伴随高方差,模型对训练集噪声敏感。L1 通过削弱或去掉参数,降低了对噪声的敏感度。 3. **提高泛化能力**:简化后的模型更“稳”“平滑”,在新数据上的表现更可靠。 --- ## 四、举一个多维案例(直观说明) 假设我们有两个特征 $x_1, x_2$,损失函数: $$ L(w_1,w_2) = \sum_i (y_i - w_1 x_{i1} - w_2 x_{i2})^2 + \lambda (|w_1|+|w_2|). $$ - 当 $\lambda=0$ 时,解可能是 $(w_1=5,\;w_2=-3)$,两个特征都得到非零权重。 - 当 $\lambda$ 较大时,可能的解变成 $(w_1=4,\;w_2=0)$——恰巧 $x_2$ 不重要,被“剔除”了;或甚至 $(w_1=0,\;w_2=0)$,用常数模型。 这种“稀疏性”正是 L1 正则化的特点,它让我们在众多特征中自动筛选,只留下关键信息,既方便解释,也减少过拟合。 --- ## 五、小结 - **L1 正则化**在损失函数中加上 $\lambda\sum|w_j|$ 的惩罚项。 - 通过惩罚绝对值,模型倾向于把一些系数压成 0,实现特征选择。 - 特征越少,模型越简单,方差降低,抗噪能力更强,从而减少过拟合。 这样,L1 正则化就既能提升模型的可解释性,又能在有限数据下稳健泛化。