为什么LASSO可以做特征选择,而Ridge却不行?

  统计/机器学习 监督式学习 特征选择    浏览次数: 936
3

LASSO和Ridge都是正则化的方法,为什么LASSO可以做特征选择,而Ridge却不行?


 

PG Two   2017-10-26 12:46



   2个回答 
11

LASSO是L1正则,Ridge是L2正则。而L1正则与L2正则的不同就在于L1在和每个坐标轴相交的地方都有“角”出现,而目标函数的测地线除非位置摆得非常好,大部分时候都会在角的地方相交。注意到在角的位置就会产生稀疏性,例如图中的相交点就有w1=0,而更高维的时候除了角点以外,还有很多边的轮廓也是既有很大的概率成为第一次相交的地方,又会产生稀疏性。

相比之下,L2正则就没有这样的性质,因为没有角,所以第一次相交的地方出现在具有稀疏性的位置的概率就变得非常小了。这就从直观上来解释了为什么L1正则,而L2正则不行的原因了。

因此,一句话总结就是:L1会趋向于产生少量的特征,而其他的特征都是0,而L2会选择更多的特征,这些特征都会接近于0。Lasso在特征选择时候非常有用,而Ridge就只是一种规则化而已。


gsscsd   2018-01-09 21:45

两位的解答很有帮助,非常感谢 - Mler-001   2018-02-25 13:17
11

上传一下,我最爱的图

上面是二维的示意图。左边是LASSO,右边是Ridge。

LASSO的目标函数是非光滑的。我们知道对于非光滑的优化问题,它的最优解要么是在导数为0处,要么就是在不可导的地方,也就是各个角上。对于多维的LASSO,所谓的“角”,就是那些很多特征的系数为0的地方。

所以LASSO会给出一个稀疏解,能有特征选择的作用。


弼码温   2018-01-15 12:37

两位的解答很有帮助,非常感谢 - Mler-001   2018-02-25 13:17
醍醐灌顶 - CSSCA   2018-02-26 12:30


  相关主题

L2-norm为什么会让模型变得更加简单?   3回答

什么时候该用LASSO,什么时候该用Ridge?   2回答

Ridge,Lasso,ElasticNet的目标函数分别是什么?   1回答

XGBoost为什么可以通过叶子节点的权值w的L2模平方来控制树的复杂度?   1回答

L1正则化和L2正则化的区别?L1为啥具有稀疏性?   4回答

L0 norm 正则是什么意思?   1回答

正则项里的L1,L2是什么意思?   1回答

为什么正则项通常都是用L1或者L2,而不是其他的?   1回答

无监督学习(比如K Means)里怎么加正则项来防止过拟合   3回答

如何简单理解正则化   1回答

在分类问题中,有什么方法可以得到特征的重要性?   2回答

对于组合特征怎么理解?   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!