培训,验证和测试集的分发?

时间:2020-03-03 16:06:55

标签: classification training-data train-test-split

我想问一下训练,验证和测试集的分布吗? 让我们假设,我想用“ cat”和“ dog”两个类来制作一个二进制resnet分类器。

假定每个类的图像名称为:

cat:a,b,c,d,e

狗:f,g,h,i,j

假设我希望每个类别的 2 图像成为测试集,每个类别的 1 图像成为验证集

哪种分配方案实际上是正确的?


方案1

测试集

猫:a,b

狗:我,j

火车组

猫:c,d

狗:f,g

设定值

猫:e

狗:h


方案2

测试集

猫:a,b

狗:我,j

火车组

猫:c,d,e

狗:f,g,h

设定值

猫:e

狗:h


让我感到困惑的是,验证集还是方案2 中的训练集的成员吗?还是验证集与方案1中的训练集是分开/不同的? ? 谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

培训,验证和测试集-这三套必须完全不同。一个纪元执行期间,一个人不会溢出到另一个。

训练集用于训练模型,即学习权重。

验证集用于根据性能微调超参数。在达到令人满意的模型后,将测试集带入图片。

测试集就像是一个巨大的惊喜,真正的展示。待模型确定后才能看到。它有助于分析真实意义上学习的模型。

如何将它们分开?最好将它们随机分离并在每个集合中使每个类具有相等的分布。

要进行培训,您还可以研究CrossValidation。它有助于消除在训练和验证同一组图像时可能出现的偏差性质。