为什么与 lasso 相比,最佳子集选择不受欢迎?

机器算法验证 回归 特征选择 套索 偏差-方差-权衡
2022-02-14 08:52:13

我正在阅读《统计学习要素》一书中的最佳子集选择。如果我有 3 个预测变量,我会创建个子集:x1,x2,x323=8

  1. 没有预测变量的子集
  2. 具有预测变量x1
  3. 具有预测变量x2
  4. 具有预测器x3
  5. 具有预测变量x1,x2
  6. 具有预测变量x1,x3
  7. 具有预测变量x2,x3
  8. 具有预测变量x1,x2,x3

然后我在测试数据上测试所有这些模型以选择最好的模型。

现在我的问题是为什么最好的子集选择与例如套索相比不受欢迎?

如果我比较最佳子集和套索的阈值函数,我发现最佳子集将一些系数设置为零,如套索。但是,其他系数(非零系数)仍然具有 ols 值,它们将是无偏的。然而,在套索中,一些系数将为零,而其他系数(非零)将有一些偏差。下图更能说明问题: 在此处输入图像描述

从图片来看,最佳子集情况下的红线部分位于灰色线之上。另一部分位于 x 轴上,其中一些系数为零。灰线定义了无偏的解决方案。引入了一些偏差从这个图中我看到最好的子集比套索更好!使用最佳子集的缺点是什么?λ

2个回答

在子集选择中,只有当您选择了正确模型的超集时,非零参数才会是无偏的,即,如果您只删除真实系数值为零的预测变量。如果您的选择程序导致您排除具有真正非零系数的预测变量,则所有系数估计都会有偏差。如果您同意选择通常不是完美的,那么这会推翻您的论点。

因此,为了“确定”一个无偏的模型估计,您应该错误地选择包含更多甚至所有潜在相关的预测变量。也就是说,您根本不应该选择。

为什么这是个坏主意?因为偏差-方差权衡。是的,您的大型模型将是无偏的,但它会有很大的方差,并且方差将主导预测(或其他)误差。

因此,最好接受参数估计会有偏差但方差较小(正则化),而不是希望我们的子集选择只删除真正的零参数,因此我们有一个方差较大的无偏模型。

由于您写道,您使用交叉验证来评估这两种方法,这减轻了上述一些问题。最佳子集的一个剩余问题仍然存在:它将一些参数限制为零,并让其他参数自由浮动。所以估计中存在不连续性,如果我们调整套索,则不存在λ超过一点λ0预测器在哪里p包含或排除。假设交叉验证输出“最优”λ那是接近λ0,所以我们基本上不确定是否应该包括 p。在这种情况下,我认为约束参数估计更有意义β^p通过套索到一个小的(绝对)值,而不是完全排除它,β^p=0,或者让它自由漂浮,β^p=β^pOLS,正如最佳子集所做的那样。

这可能会有所帮助:为什么收缩有效?

原则上,如果能找到最好的子集,它确实比 LASSO 更好,就(1)选择实际有助于拟合的变量,(2)不选择对拟合没有贡献的变量, (3) 预测精度和 (4) 对选定变量产生基本无偏估计。Bertsimas 等人(2016 年)“通过现代优化镜头选择最佳子集”最近发表的一篇论文证明了最佳子集的质量优于 LASSO de Rooi & Eilers (2011)给出的另一个较老的例子给出了一个具体示例(关于尖峰序列的反卷积),其中最佳子集优于 LASSO 或 ridge 。

LASSO 在实践中仍然是首选的原因主要是因为它在计算上更容易计算。最佳子集选择,即使用L0伪范数惩罚本质上是一个组合问题,并且是 NP 难题,而 LASSO 解决方案很容易使用路径坐标下降在正则化路径上计算。此外,LASSO (L1范数惩罚回归)是最紧的凸松弛L0伪范数惩罚回归/最佳子集选择(桥回归,即Lqq 接近 0 的范数惩罚回归原则上比 LASSO 更接近最佳子集选择,但这不再是凸优化问题,因此很难拟合)。

为了减少 LASSO 的偏差,可以使用派生的多步方法,例如自适应 LASSO(其中基于最小二乘或岭回归拟合的先验估计对系数进行差分惩罚)或松弛 LASSO(一种简单的解决方案是执行LASSO 选择的变量的最小二乘拟合)。与最佳子集相比,LASSO 倾向于选择稍微过多的变量。最佳子集选择更好,但更难拟合。

话虽如此,现在也有有效的计算方法来进行最佳子集选择/L0惩罚回归,例如使用Frommlet & Nuel (2016) 的论文“An Adaptive Ridge Procedure for L0 Regularization”中描述的自适应岭方法。请注意,在最佳子集选择下,您仍然必须使用交叉验证或某些信息标准(调整后的 R2、AIC、BIC、mBIC ......)来确定预测变量的数量可以为您提供最佳预测性能/解释能力模型中的变量数量,这对于避免过度拟合至关重要。Hastie 等人 (2017)的论文“最佳子集选择、前向逐步选择和套索的扩展比较”提供了最佳子集、LASSO 和一些 LASSO 变体(如松弛 LASSO)的广泛比较,他们声称松弛 LASSO 是在最广泛的情况下产生最高模型预测精度的模型,即他们得出的结论与贝尔齐马斯。但是关于哪个是最好的结论很大程度上取决于你认为最好的(例如最高的预测准确度,或者最擅长挑选相关变量而不包括不相关的变量;岭回归,例如通常选择太多变量,但预测准确度高度共线的变量仍然可以非常好)。

对于像您描述的 3 个变量的非常小的问题,很明显,最好的子集选择是首选选项。