百面机器学习—13.L1正则化与稀疏性

文章目录

      • 1. 为什么希望模型参数具有稀疏性?
      • 2. L1正则化使得模型参数具有稀疏性的原理是什么?
        • 角度:解空间形状


  • 代码部分可参考:数据预处理与特征工程—9.Lasso算法实现特征选择

1. 为什么希望模型参数具有稀疏性?

  稀疏性,说白了就是模型的很多参数是0。这相当于对模型进行了一次特征选择,只留下一些比较重要的特征,提高模型的泛化能力,降低过拟合的可能。在实际应用中,机器学习模型的输入动辄几百上千万维,稀疏性就显得更加重要。

2. L1正则化使得模型参数具有稀疏性的原理是什么?

角度:解空间形状

  在二维的情况下,黄色的部分是L2和L1正则项约束后的解空间,绿色的等高线是凸优化问题中目标函数的等高线,

百面机器学习—13.L1正则化与稀疏性_第1张图片
由图可知,L2正则项约束后的解空间是圆形,而L1正则项约束的解空间是多边形。显然,多边形的解空间更容易在尖角处与等高线碰撞出稀疏解。这个也是常见的回答。但是几个关键问题回答的比较笼统

  1. 为什么加入正则项就是定义了一个解空间约束?
  2. 为什么L1和L2的解空间是不同的?

  上面的回答不够精确,其实可以通过KKT条件来作答。
  事实上,“带正则项”和“带约束条件”是等价的。为了约束w的可能取值空间从而防止过拟合,我们为该最优化问题加上一个约束,就是w的L2范数的平方不能大于m:
百面机器学习—13.L1正则化与稀疏性_第2张图片
为了解带约束的凸优化问题,我们写出拉格朗日函数
在这里插入图片描述
w ∗ w^* w λ ∗ \lambda^{*} λ分别是原问题和对偶问题的最优解,则根据KKT条件,它们应满足:
百面机器学习—13.L1正则化与稀疏性_第3张图片
L2正则化相当于为参数定义了一个圆形的解空间(因为必须保证L2范数不能大于m ),而L1正则化相当于为参数定义了一个棱形的解空间。如果原问题目标函数的最优解不是恰好落在解空间内,那么约束条件下的最优解一定是在解空间的边界上,而L1“棱角分明”的解空间显然更容易与目标函数等高线在角点碰撞,从而产生稀疏解。

关于这个问题,书上还有另外两种解释,我觉得这种最好,如有对其他两种解释感兴趣的,请自行查阅《百面机器学习》


如果对您有帮助,麻烦点赞关注,这真的对我很重要!!!如果需要互关,请评论或者私信!
在这里插入图片描述


你可能感兴趣的:(#,百面机器学习,百面机器学习,L1正则化,稀疏性,面试常见问题)