L1正则为什么会产生稀疏解

博客主要探讨L1正则化产生稀疏矩阵的原因。从图像角度,L1等值线是方形,相交大概率在顶点,顶点在坐标轴上使其他参数为0;从数学角度,对损失函数求梯度,L1正则使损失函数在0附近反复,极小值处梯度为0,导致许多参数解为0,使模型稀疏。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

L1正则化:

为啥会产生稀疏矩阵:(看图)

L1的等值线是方形,等值线相交时很大概率上出现在顶点处,而顶点都在坐标轴上,因此必有其他参数为0,所以用L1正则的解具有稀疏性.

 

 

数学解释:

对损失函数求梯度:

通俗一点的理解就是,L1正则会使损失函数在0附近反复经过,当其大于0时,loss值会减小;当其小于0时,loss值又会增大。

我觉得还是图像生动一点,极小值产生时,也就是说损失函数时是一个凹图(没找到图。。)

,即此处的损失函数的导数是为0的,不就是梯度为0吗?梯度不就是w嘛。。。所以会产生稀疏解(就是导致许多参数的解变为0,这样模型就变得稀疏了)

 

### L1 正则化疏解的理论与实现 L1 正则化通过引入绝对值惩罚项来影响线性回归模型中的参数估计过程。其核心目标在于促使部分系数变为零,从而形成疏解。这种特性使得 L1 正则化特别适合于高维数据集以及特征选择场景。 #### 疏解形成的数学基础 当应用 L1 正则化到简单线性回归模型时,优化问题可以表示为最小化损失函数加上正则化项的形式: \[ \min_{w} \frac{1}{n}\sum_{i=1}^{n}(y_i - w^T x_i)^2 + \lambda \|w\|_1 \] 其中 \( \|w\|_1 = \sum_{j}|w_j| \) 是权重向量 \( w \) 的 L1 范数[^1]。由于 L1 范数是一个非平滑函数,在某些维度上会迫使权值趋近于零,因此能够自然地筛选掉不重要的特征。 #### 实现方法概述 为了求解上述带约束的目标函数,通常采用如下几种算法之一: - **坐标下降法 (Coordinate Descent)**: 这种迭代技术每次只更新单个变量而固定其他所有变量不变,非常适合处理大规模疏矩阵。 - **最小角回归 (Least Angle Regression, LARS)**: 它是一种专门设计用于高效计算整个路径上的 Lasso 解的方法。 下面给出基于 Python 和 Scikit-Learn 库的一个基本实现例子: ```python from sklearn.linear_model import Lasso import numpy as np # 假设 X_train, y_train 已经定义好 alpha = 0.1 # 控制正则强度的超参 lambda 对应于此处 alpha 参数 lasso_regressor = Lasso(alpha=alpha) # 训练模型 lasso_regressor.fit(X_train, y_train) # 输出得到的疏权重 print("Sparse Weights:", lasso_regressor.coef_) ``` 此代码片段展示了如何利用 `scikit-learn` 中内置的 Lasso 类快速构建并训练带有 L1 正则化的线性回归模型[^2]。 #### 关键区别对比 相较于传统的 Ridge 或者说 L2 正则化方式,L1 方法更倾向于生成具有较少非零成分的结果集合;换句话说就是它能有效减少最终预测器所依赖的基础属性数量。这不仅有助于简化解释还可能提升泛化能力因为消除了那些贡献较小甚至可能是噪声干扰的因素的影响.
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值