X
包含n
个样本和d
个功能。~70%
低)。d
个功能的所有成对组合,并使用x
个样本创建了许多二维子数据集n
。x
上,我执行10次交叉验证(使用主数据集X
的所有样本)。这是一个非常漫长的过程,需要数周的计算。k
对(例如根据最高AUC)并将其标记为+
。所有其他对都标记为-
。X
中的标签的情况下计算这些属性。+
或-
的对。此外,每对都有许多基于专家知识(即特征)计算的属性。因此,我有一个新的分类问题。让我们调用这个新生成的数据集Y
。Y
上训练分类器,同时遵循交叉验证规则。令人惊讶的是,我可以使用+
AUC预测-
和90%
标签。据我所知,这意味着我可以选择相关功能。然而,看到90%
AUC让我担心在这个漫长的过程中某处的信息泄漏。特别是在第3步。
我想知道是否有人能看到这种方法有任何泄漏。
信息泄漏:
我想强调的是,我确实在步骤1中使用X
的所有数据点。但是,我不再使用它们(即使是测试)。最终的90%AUC来自预测数据集Y
的标签。
另一方面,值得注意的是,即使我随机化了我的主数据集X
的值,数据集Y
的计算特征也将是相同的。但是,Y
中的示例标签会发生变化,因为之前的+
对可能不再是好的。因此,它们将标记为-
。
虽然我没有任何意见,但我将陈述我在与模式识别研究人员交谈的4天内得到的结果。简而言之,我确信没有信息泄漏(只要我不回到第一个数据集X
并使用其标签)。稍后,如果我想查看我是否可以在X
中获得更好的性能(即预测样本标签),我只需要使用数据集X
的一部分进行成对比较(作为训练)组)。然后,我可以使用X
中的其余样本作为测试集,同时使用正向预测的Y
对作为要素。
如果没有人拒绝这种方法,我会将其设置为答案。
答案 0 :(得分:0)
如果您在步骤1中的流程使用了所有数据。然后,您正在学习的功能包含整个数据集的信息。由于您是根据整个数据集和THEN验证选择的,因此您正在泄漏严重的信息。
你可能应该坚持使用众所周知/已经为你做过的工具,然后再用完这些奇怪的策略。尝试使用具有L1正则化的模型为您进行特征选择,或者从顺序向后选择等一些更简单的搜索开始。
如果最终正确地进行了交叉验证,则每次培训都会执行自己独立的功能选择。如果你做了一个全局特征选择,然后做了简历,你就会做错了,可能会泄漏信息。