了解引导进行验证和模型选择


13

我想我了解引导程序的基本原理,但是不确定如何使用引导程序进行模型选择或避免过度拟合。

例如,对于模型选择,您是否只选择在其自举样本中产生最低误差(也许是方差?)的模型?

是否有任何文章讨论如何使用自举进行模型选择或验证?

编辑:请参阅线程,以及@ mark999的答案,以获取此问题后面的更多上下文。


@suncoolsu如果我有模型A,B和C供我选择,我通常会在以下情况下使用交叉验证或自举来选择模型:1)我对预测的准确性/排名感兴趣,并且2)我没有足够的数据支持验证集。为什么这不是一个好主意(我知道嵌套验证对于功能选择等很重要)。
B_Miner 2011年

@ mark999在线程中的答案建议进行引导程序验证,以作为在完整数据集上学习模型的一种解决方案,同时仍能应对过度拟合。这个答案在很大程度上激发了这个问题,该线程中的原始问题也应为该问题添加上下文。
Amelio Vazquez-Reina

1
很抱歉-可能这是我是一名统计学家-但我认为交叉验证和自举是两种不同的方式。交叉验证很棒,必须进行交叉验证(以及自举)。但是,如果您处于在A,B,C(仅三种型号)之间进行选择的情况下,BIC可能是更好的选择。正如我所说,解决方案取决于当前的问题,多种方法可能是合适的。
suncoolsu 2011年

2
与BIC相比,AIC通常产生的不良情况更少。
弗兰克·哈雷尔

Answers:


14

首先,您必须确定您是否真的需要模型选择,还是只需要建模。在大多数情况下,根据维数,最好选择灵活的综合模型。

引导程序是评估模型性能的好方法。最简单的估计是方差。更确切地说,引导程序可以根据尚未实现的新数据来估算给定建模过程的未来性能。

如果使用重采样(引导或交叉验证)来选择模型调整参数并估计模型,则将需要双重引导或嵌套交叉验证。

一般而言,引导程序比交叉验证所需的模型拟合(通常约300个)更少(为保持稳定性,应重复进行10倍交叉验证50-100次)。

一些模拟研究可以在http://biostat.mc.vanderbilt.edu/rms找到。


2
哇,我不知道10倍CV应该重复50到100次!我将不得不重新访问我的上一个项目,然后尝试进行引导测试。喜欢这个网站:我每天都学到一些东西!
韦恩

谢谢@弗兰克!假设我有一组具有相同参数编号的候选模型,那么那些在自举估计中方差较小的模型是否适合抗过度拟合(假设所有模型的总损失或风险都相同)?
Amelio Vazquez-Reina

我不认为这是可能的。
弗兰克·哈雷尔

好答案,谢谢!我不知道引导程序也可以用于模型验证,并且交叉验证需要重复很多次。我看到了该方法的另一个优点:交叉验证需要事先(主观地)确定折叠数,通常为10,这或多或少是启发式的,而不是最优的。但是,尽管这是一种很棒的方法,但为什么它似乎不像交叉验证那样受欢迎?
SiXUlm

Bootstrap模型验证相当流行,但交叉验证的时间更长。但是正如您所说,在简历中#折的选择有些随意性。
Frank Harrell

3

考虑使用引导程序进行模型平均

下面的文章将引导模型平均方法与贝叶斯模型平均方法(更常用的方法)进行了比较,并提供了进行模型平均的方法,可能会有所帮助。

对颗粒物空气污染和死亡率的时间序列研究中的Bootstrap模型平均


在大多数情况下,我不建议将引导程序用于模型平均。引导程序最擅长告诉您一个建模过程如何执行,而不是告诉您如何创建新过程。不过,也有例外。
弗兰克·哈雷尔

@弗兰克·哈雷尔-同意。我引用的论文有时适用于我工作的领域,并且我已经针对您所描述的场景使用了引导程序:评估由于采样误差而导致的特定模型的可变性。但是,由于模型选择本身带来的不确定性甚至更难评估,引导模型平均方法可能会作为一种帮助,特别是对于像我这样的从业者,他们缺乏为贝叶斯模型平均重新制定问题的经验/背景。
2011年

2
不,我要说的是,bootstrap非常适合评估由于不了解模型而造成的损坏。这并不意味着您必须使用引导程序来改善性能,例如对一组不确定模型进行平均。如果您应该以这种方式使用引导程序,则需要一个双重引导程序来诚实评估平均模型的性能。我应该注意,随机森林是使用引导程序进行模型平均的一种形式。
Frank Harrell

关于双重引导的要点。我引用的论文的作者对此进行了跟进:通过平均后引导程序模型来减少空气污染死亡率研究模型选择中的模型不确定性
Josh Hemann,2011年

好。请记住,这通常是一个过大的杀伤力。通常最好是设置一个由主题驱动的完整模型,并在过度拟合的情况下使用收缩(惩罚)。但它仍然是一个模型。
弗兰克·哈雷尔
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.