为什么对套索识别的变量子集使用套索估计而不是OLS估计?


26

对于套索回归假设最佳解决方案(例如最小测试误差)选择了k个特征,这样\ hat {\ beta} ^ {lasso} = \ left(\ hat {\ beta} _1 ^ {lasso},\ hat {\ beta} _2 ^ {lasso},...,\ hat {\ beta} _k ^ {lasso},0,... 0 \ right)

L(β)=(Xβy)(Xβy)+λβ1,
kβ^lasso=(β^1lasso,β^2lasso,...,β^klasso,0,...0)

我们知道(β^1lasso,β^2lasso,...,β^klasso)是一个\ left(\ beta_1,\ beta_2,...,\ beta_k \ right)的估计值有偏差(β1,β2,...,βk),所以为什么我们仍将β^lasso作为最终解决方案,而不是更“合理的” β^new=(β^1:knew,0,...,0),其中β^1:knew是部分模型Lnew(β1:k)=(X1:kβy)(X1:kβy)。(X1:k表示与k个所选要素相对应的X列)。Xk

简而言之,为什么我们同时将Lasso用于特征选择和参数估计,而不是仅用于变量选择(并将选定特征的估计留给OLS)?

(此外,“套索最多可以选择n特征” 是什么意思?n是样本大小。)


1
这是一个很好的问题。您是否尝试了一些模拟,以查看如果您尝试使用标准套索,结果将与标准套索有何不同?
Placidia 2014年

3
您了解LASSO中“收缩”的目的吗?
Michael M

6
这样做的目的是因为您选择了最大的系数,从而缩小系数的估算值。预先完成特征选择后,最小二乘估计将不再无偏见。
Scortchi-恢复莫妮卡

2
对于“收缩方法可以解决什么问题?”的好答案,请参见以下问题。stats.stackexchange.com/questions/20295/...
DL Dahly

2
明确一点:并不是说@Scortchi是错误的,但这在讨论功能选择时有点空白,我认为这是一个很重要的技术要点,应该非常清楚。
JohnA 2015年

Answers:


27

我不相信使用LASSO进行变量选择然后使用OLS不会有任何问题。摘自“ 统计学习的要素 ”(第91页)

...套索收缩导致非零系数的估计偏向零,并且通常它们不一致。[ 补充说明:这意味着,随着样本数量的增加,系数估计不会收敛]减少此偏差的一种方法是运行套索以识别非零系数集,然后将不受限制的线性模型拟合到所选特征集。如果所选集很大,这并不总是可行的。或者,可以使用套索来选择非零预测变量集,然后再次应用套索,但只使用第一步中选择的预测变量。这被称为放松套索(Meinshausen,2007)。想法是使用交叉验证来估计套索的初始惩罚参数,然后再次应用应用于所选预测变量集的第二惩罚参数。由于第二步中的变量与噪声变量的“竞争性”较小,因此交叉验证将趋于为 [惩罚参数] 选择较小的值,因此其系数将比初始估计中的系数缩小。λ

在精神上类似于宽松套索的另一种合理方法是使用一次套索(或串联使用几次)来识别一组候选预测变量。然后使用最佳子集回归来选择要考虑的最佳预测变量(有关此信息,另请参阅“统计学习的元素”)。为此,您需要将候选预测变量组缩小到35个左右,但这并不总是可行的。您可以使用交叉验证或AIC作为准则来防止过度拟合。


我的问题的另一部分是,为什么“套索最多可以选择n个特征”?如果是这种情况,我认为所选功能上的OLS至少会是“良好”的,因为OLS是“蓝色”(严格来说不是严格的蓝色,因为它通常有偏差)。仅考虑极端情况,即Lasso选择了完全正确的特征,对这些特征进行OLS将恢复真实模型,我认为这比Lasso估计要好。
yliueagle 2014年

2
问题是这种“极端情况”极不可能发生,并且无法知道LASSO是否已选择正确的功能。如果LASSO选择太多功能,那么我认为完整的OLS模型的性能可能会比LASSO估计的要差。同样,如果要素太多(例如OLS过拟合),则岭回归可以胜过OLS。
Alex Williams

2
另请参见web.stanford.edu/~hastie/StatLearnSparsity_files/SLS.pdf,第2.2节末尾:“ [...]最小二乘拟合在预测变量的子集上,倾向于扩大套索估计套索的非零估计趋向于零,因此右侧面板中的去偏通常可以改善模型的预测误差,这一两阶段过程也称为松弛套索(Meinshausen 2007) 。”
变形虫说恢复莫妮卡的时间

1
我调查了梅因斯豪森的论文,并实际上建议拟合两个惩罚参数,如您在The Elements的原始报价中所述。+1
变形虫说莫妮卡(Reonica Monica)

@AlexWilliams但是在上一段中没有关于所选集和删除的内容之间的相关性的稀疏假设吗?
Dimitriy V. Masterov

15

如果您的目标是最佳的样本内性能(最高R平方),则只需对每个可用变量使用OLS。删除变量将减小R平方。

如果您的目标是取得良好的样本外性能(通常更重要),那么您提出的策略将遭受两个过拟合的困扰:

  • 基于与响应变量的相关性选择变量
  • OLS估计

LASSO的目的是将参数估计值缩小到零,以克服以上两个过度拟合的来源。样本中的预测总是比OLS差,但是希望(取决于惩罚的强度)能够获得更现实的样本外行为。

关于:这(可能)取决于您使用的LASSO的实现。变量Lars(最小角度回归)对于很容易起作用。p>np>n


2
“ Leekasso”(始终选择10个系数)与问题的建议不同(用LASSO选择的k个预测变量重新估计OLS)
仿射

@affine,您完全正确。我删除了参考。
Michael M

2
这听起来很合理,但是Lasso的发明者提出了相反建议,并实际上建议对Lasso所标识的子集使用两阶段过程和OLS(如OP所建议),请参阅@Alex的回答。
变形虫说恢复莫妮卡的时间

我喜欢这个答案,因为它提到了搜索本身的选择偏见。确实感觉应该还需要额外的罚款。LASSO仅仅是子集选择机制-就是全部吗?那为什么还要打印所有系数呢?
Ben Ogorek

3

关于OP为何Lasso最多可以选择n个特征的问题:

考虑一下为什么OLS可能会有偏差:这是当预测变量(p)比观察值(n多时。因此,在的大小为[p,p] 。取这样一个矩阵的逆是不可能的(它可能是单数)。XTXβ=(XTX)1XTY

拉索被迫缩小变量的系数,以免发生这种情况,因此它永远不会选择n个以上的特征,因此始终是可逆的。XTX


1
(-1)我不认为这是真的。您能否进一步说明不存在的与套索之间的关系?具体来说,$ X ^ TX与套索有什么关系?有OPS问题的证据(例如,这里的答案显示出来:stats.stackexchange.com/questions/38299/…),但此答案并未出现证明它。(请让我知道我是否记错了!)(XTX)1
user795305
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.