在深度学习中,验证准确性是否总是高于测试准确性?

时间:2019-10-03 08:52:34

标签: machine-learning deep-learning object-detection training-data

我遇到了一位教授,他告诉我,通常来讲,验证准确性始终高于测试准确性。 他声称测试数据集仅用于测试最终模型。尽管验证数据集仅用于调整超参数,并且仅对模型显示训练数据,但是模型开发人员可以尝试根据验证准确性仔细选择最佳模型,以进行多次训练。

但是,由于测试数据通常受测试次数的限制。例如,在某些比赛中,每天提交测试结果的一种评估非常普遍。这样,我们就无法挑选出可以在验证和测试数据集中实现最高准确性的最佳模型。因此,我们在验证数据中获得最佳结果的最佳模型通常不是测试数据中的最佳模型。但是,该发言人仍然相信,当在某些数据集中发布测试数据集的GT时。

我知道验证数据集和测试数据集中的数据分布通常被设计为相似。但是,这不能保证。例如,在通用对象检测数据集中,验证数据集中与测试数据集中相同类别的对象之间的“难度”可能不同。更具体地说,让我们假设检测目标是人,并且我们都知道,较小,被​​遮挡或被截断的人更难被检测到。但是,实际上很难相应地在验证和测试数据集中根据大小,遮挡和截断级别控制分布。 因此,当两个数据集的GT均可用时,测试准确性可能会高于验证准确性。

1 个答案:

答案 0 :(得分:0)

。没有明显的线索表明除非发现或引入抽样偏差,哪个会更高。

请考虑一种极端情况,其中您的模型过度适合训练集。 $ p_ {train} $,$ p_ {val} $和$ p_ {test} $之间的关系定义如下。

$$ p_ {train} = p_ {val}!= p_ {test} $$

在这种情况下,验证准确性将大大高于测试准确性,反之亦然。