我有一个二进制分类任务,我想比较两种不同的分类方法以及每种方法的超参数。我使用了 k 折交叉验证(k = 5)来获得我的性能指标的 k 个估计值(在给定的误报率范围内的平均未命中率),以给出近似的均值和方差。
这表明方法 A 平均优于 B,尽管方法 B 的最佳性能大致匹配方法 A 的最差性能。例如,方法 A 可能达到了 0.68 的未命中率(越低越好),标准差为0.02,而方法 B 达到 0.72,标准差也为 0.02。
对于我的任务,在测试集上报告单个性能数字是标准程序。当我根据交叉验证选择超参数时,方法 A 和方法 B 各自在测试集上实现的性能几乎相同。但是,我担心这仅仅是由于两种方法的差异,如果我可以对更多的训练和测试集进行采样,平均而言,方法 A 可能会更好。这些数字与我在交叉验证中看到的数字相差甚远,这表明训练和测试分布之间存在不匹配。
问题:有没有一种原则性的方法来使用测试分布来估计分类器的方差?
我想将交叉验证中的 k 个分类器应用到整个测试集(或通过自举对 k 个训练集重新采样后训练新的分类器)并查看结果的方差。但是,我担心这将特定于我拥有的测试集,而不是估计测试分布的属性。也许我应该将测试集分成 k 个随机分区?尽管这些都相对较小,但效率会低吗?