我制作了3组图像数据:
1-火车包含130,523张图像。 2验证cantoning 14,503图像。 3-测试包含94,500张图像。 现在我想为我的数据创建.lmdb格式用于培训。 在教程中,它说您的数据分为train和val。 那么这是否意味着我应该只使用train和val数据集并且根本不使用测试? 后来当我想测试我的模型时,测试数据集会发生什么?他们不应该再次转换为.lmdb吗? 我想确保我理解了这些差异。很抱歉,如果问题非常基本,但我没有找到任何答案。
答案 0 :(得分:2)
有三种类型的数据集。
训练集 - 这是网络训练的数据。
测试集 - 此数据集用于验证网络是否未适合训练集并且已正规化。
验证集 - 由于我们实际上在训练期间使用了测试集(以检查正则化),因此建议保留一个单独的测试集,该测试集至今尚未见到数据。在此集合上运行网络将告知我们在现实世界中测试网络时网络将如何执行。
在你的情况下,你应该为这三个文件制作lmdb文件。在培训期间使用培训和测试装置。训练后使用验证集确认训练好的网络是否准确。
答案 1 :(得分:0)
有时候验证和测试一词变得可以互换(至少在caffe中)。但是,根据每组数据的大小,我认为在您将模型实际测试到看不见的真实世界数据之前,应该使用验证集(包含~14k图像)来检查训练模型的准确性。 因此,您的测试数据集(~94k图像)将被视为看不见的真实世界数据。
要了解如何进行train-val-test过程,还可以查看caffe目录中提供的示例。 <{1}}和00-classification.ipynb
就足够了。