处理大,小问题时的模型稳定性


22

介绍:

我有一个经典的“大p,小n问题”数据集。可用样本数n = 150,而可能的预测变量数p = 400。结果是一个连续变量。

我想找到最“重要”的描述符,即那些最能解释结果并帮助建立理论的描述符。

经过对该主题的研究,我发现LASSO和Elastic Net通常用于大p小n的情况。我的一些预测变量具有高度相关性,因此我想在重要性评估中保留它们的分组,因此,我选择使用Elastic Net。我想我可以使用回归系数的绝对值来衡量重要性(如果我错了,请纠正我;我的数据集是标准化的)。

问题:

由于样本数量少,如何获得稳定的模型?

我目前的方法是在90%的数据集上以10倍的交叉验证平均MSE分数在网格搜索中找到最佳调整参数(λ和alpha)。然后,我在整个数据集的90%上使用最佳调整参数训练模型。我可以在数据集的10%保留率(仅占15个样本)上使用R平方来评估我的模型。

反复运行此过程,我发现R平方评估存在很大差异。同样,非零预测变量的数量及其系数也会变化。

如何获得对预测变量重要性的更稳定评估以及对最终模型性能的更稳定评估?

我可以重复运行我的程序来创建多个模型,然后平均回归系数吗?还是应该使用模型中预测变量的出现次数作为其重要性得分?

目前,我得到40-50个非零预测变量。为了更好的稳定性,我应该更严厉地惩罚一些预测变量吗?


1
也许正则回归还不够?您是否尝试过一些机器学习方法?

您会建议哪种适合连续或有序因变量的ML方法?
dimi 2012年

2
随机森林,SVR ...对于功能选择,您可以尝试使用所有相关方法(应该更稳定),例如ACE或Boruta。

Answers:


11

稀疏算法不稳定:无自由午餐定理

正如您所指出的,我想标题说了很多。

稀疏算法可能具有非唯一最优解,因此是不适定的

查看随机套索,以及Peter Buhlmann的演讲

更新:

我发现该论文比Meinshausen和Buhlmann的“稳定性选择”论文更容易遵循。

在“ 随机套索 ”中,作者考虑了套索对于大问题,小问题的两个重要缺陷,即pn

  1. 在存在多个相关变量的情况下,套索只会选择一个或几个,从而导致您谈论的不稳定
  2. 套索不能选择比样本大小多的变量,这对于许多模型来说都是一个问题n

能够解决套索的两个缺点的随机套索的主要思想如下:

如果从同一分布生成几个独立的数据集,那么我们希望套索从不同的数据集中选择那些高度相关的重要变量的不相同子集,而我们的最终集合可能是这些高度相关的重要变量中的大部分甚至全部通过合并来自不同数据集的所选变量来获得变量。这样的过程可能会产生超过变量,从而克服套索的其他限制。n

引导样本被绘制以模拟多个数据集。最终系数是通过对每个自举样本的结果求平均值而获得的。

如果有人可以在答案中进一步阐述和解释该算法,那就太好了。


1
好的链接(+1)。
jbowman

谢谢你的发言。我也考虑过随机套索,但是在共线性的情况下适合吗?
dimi 2012年

2
在解释变量之间的近似共线性下会发生什么?在回归分析的传统正向搜索算法中,我们经常面临两个变量x1和x2具有相似解释力的情况。如果模型中包含x1,则无需包含x2;否则,无需包含x2。相反,如果模型中包含x2,则无需包含x1。如果我正确地理解了您的过程,则倾向于将x1的时间加倍,将x2的时间加倍,从而导致稳定性概率分别约为50%。如果是这样,您可能会错误地得出结论,不需要任何变量。
dimi 2012年

我想,在这种情况下,我可以类似地使用随机弹性网。
dimi 2012年

我添加了另一个链接,我认为它可以更好地回答您的问题。
Pardis 2012年

6

我目前的方法是在90%的数据集上以10倍的交叉验证平均MSE分数在网格搜索中找到最佳调整参数(λ和alpha)。然后,我在整个数据集的90%上使用最佳调整参数训练模型。我可以在数据集的10%保留率(仅占15个样本)上使用R平方对我的模型进行评估。

调整参数的稳定性如何?

您是否看到拟合优度(例如,最佳参数的交叉验证的MSE)与10%的独立测试性能之间存在较大差异?

那可能是过度拟合的征兆:

MSE=f(gridparameters)MSE=f(gridparameters)

我可以重复运行我的程序来创建多个模型,然后平均回归系数吗?还是应该使用模型中预测变量的出现次数作为其重要性得分?

建立这种聚合模型有几种可能性:

  • 线性模型可以通过平均系数来平均
  • mm

搜索词将是“聚合模型”,“引导聚合”,“装袋”。

侧面思考:某些类型的数据具有预期的和可解释的共线性,这可能导致变量选择在或多或少相等的解决方案之间“跳跃”。


3

没有办法了。就像某些人所说,模型本质上是不稳定的(否则就不需要统计数据了)。

但是不稳定本身会带来信息。因此,我没有尝试摆脱它,而是尝试对其进行分析。

我多次运行交叉验证模拟,然后在每次运行中获得最佳选择参数的系数,并将它们放在一起。

λα

然后,我提取每个参数对的回归系数,这给了我每个参数的值的分布。这样,我可以使用平均值/中值来描述预测变量的强度,并使用其标准偏差/ IQR来描述其可变性,即其稳定性。

一个非常稳定的预测变量意味着您可以期望它的效果与新数据也相似。即使在您的数据中也是不稳定的预测变量,即使有新数据也可能非常不稳定。

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.