我什么时候应该使用套索vs岭?


167

假设我想估算大量参数,并且想对其中一些参数进行惩罚,因为我认为它们与其他参数相比影响不大。如何决定使用哪种惩罚方案?什么时候进行岭回归更合适?我什么时候应该使用套索?


“说我想估计大量参数”可以更精确地说:什么是框架?我猜这是线性回归吗?
罗宾吉拉德

2
关于metaoptimize,刚刚问了一个类似的问题(请记住,l1 = LASSO,l2 =岭):metaoptimize.com/qa/questions/5205/…–
Gael Varoquaux

您说“套索vs岭”就像它们是仅有的两个选择一样-广义双重pareto,马蹄形,bma,bridge等等?
概率

Answers:


106

请记住,岭回归不能将系数归零。因此,最终要么包含模型中的所有系数,要么都不包含它们。相反,LASSO会自动执行参数收缩和变量选择。如果您的某些协变量高度相关,则可能需要查看Elastic Net [3]而不是LASSO。

我个人建议使用非负Garotte(NNG)[1],因为它在估计和变量选择[2]方面是一致的。与LASSO和山脊回归不同,NNG需要初始估计,然后将其缩小到原点。在原始论文中,Breiman建议使用最小二乘解法进行初始估计(但是,您可能希望从岭回归解法开始搜索,并使用类似GCV的方法来选择惩罚参数)。

在可用软件方面,我已经在MATLAB中实现了原始的NNG(基于Breiman的原始FORTRAN代码)。您可以从以下位置下载:

http://www.emakalic.org/blog/wp-content/uploads/2010/04/nngarotte.zip

顺便说一句,如果您喜欢贝叶斯解决方案,请查看[4,5]。

参考文献:

[1] Breiman,L.使用非负Garrote技术进行更好的子集回归,1995,37,373-384

[2] Yuan M.&Lin,Y.论非负garrotte估计量《皇家统计学会杂志》(B系列),2007,69,143-161

[3] Zou,H.&Hastie,T.通过弹性网进行正则化和变量选择《皇家统计学会杂志》(系列B),2005,67,301-320

[4] Park,T.&Casella,G.贝叶斯套索《美国统计协会杂志》,2008年,第103卷,第681-686页

[5] Kyung,M .;吉尔,J。Ghosh,M.&Casella,G.罚分回归,标准误和贝叶斯拉索斯贝叶斯分析,2010,5,369-412


2
您能更具体地了解ridge vs套索吗?自动变量选择是喜欢套索的唯一原因吗?
Chogg

42

Ridge或套索是正则线性回归的形式。在最大后验估计方法中,也可以将正则化解释为先验。在这种解释下,岭和套索对线性变换的类别做出了不同的假设,它们推断出它们将输入和输出数据相关联。在山脊中,线性变换的系数是正态分布,在套索中,它们是拉普拉斯分布。在套索中,这使系数更容易为零,从而更容易消除一些输入变量,因为它们对输出没有帮助。

还有一些实际考虑。脊线更易于实现和计算,这可能取决于您拥有的数据类型。

如果两者都实现了,请使用数据的子集找到山脊和套索,并比较它们在剩余数据上的工作情况。这些错误应使您对使用哪种方法有所了解。


8
我不明白-您怎么知道您的系数是拉普拉斯系数还是正态分布?
ihadanny

1
为什么Ridge回归计算速度更快?
Archie'Apr

4
@Hbar:“正则化也可以最大程度地采用后验估计方法进行解释。”:您能否用数学符号更详细地解释这一部分,或者至少给出参考?谢谢!
Mathmath

2
@ihadanny您很可能不知道,这就是重点。您只能决定保留哪个后验者
Firebug

30

通常,当您有许多中小型效果时,应使用ridge。如果只有几个变量具有中等/较大的影响,请使用套索。 Hastie,Tibshirani,弗里德曼


4
但是,当您有几个变量时,如果它们具有中型/大型效果,则可能希望将它们全部保留在模型中,在套索中情况并非如此,因为套索可能会删除其中的一个。您能详细解释一下吗?我觉得当您有许多变量时,我们使用套索来删除不必要的变量而不是岭。
aditya bhandari
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.