特征选择和交叉验证
我最近在这个站点(@ Aniko,@ Dikran Marsupial,@ Erik)和其他地方阅读了很多有关交叉验证时出现过拟合问题的信息-(Smialowski等人2010 Bioinformatics,Hastie,统计学习元素)。建议是,在使用交叉验证(或其他模型估计方法,例如自举)的模型性能估计之外执行的任何监督特征选择(使用与类标签的相关性)都可能导致过度拟合。 这对我来说似乎并不直观-当然,如果选择一个功能集,然后使用交叉验证仅使用选定的功能评估模型,那么您将获得对这些功能的广义模型性能的无偏估计(假设所研究的样本具有代表性)人口)? 通过此过程,当然不能要求一个最佳功能集,但可以将未看到的数据上所选功能集的性能报告为有效吗? 我接受基于整个数据集选择功能可能会导致测试集和训练集之间的数据泄漏。但是,如果在初始选择之后功能部件集是静态的,并且没有进行其他调整,那么报告交叉验证的性能指标是否有效? 就我而言,我有56个要素和259个案例,因此#cases> #features。这些特征来自传感器数据。 抱歉,我的问题似乎是派生的,但这似乎是需要澄清的重要点。 编辑: 在上面详细描述的数据集上通过交叉验证实现特征选择(由于下面的答案),我可以确认在此数据集中交叉验证之前选择特征引入了重要意义偏压。与2类配方相比,这种偏倚/过度拟合对于3类配方而言最大。我认为我使用逐步回归进行特征选择的事实加剧了这种过度拟合的现象。为了进行比较,在另一个但相关的数据集上,我将交叉验证之前执行的顺序正向特征选择例程与我先前在CV中使用特征选择所获得的结果进行了比较。两种方法之间的结果没有显着差异。这可能意味着逐步回归比顺序FS更容易过度拟合,或者可能是此数据集的怪癖。