我正在使用cnn对图像进行分类。我有1000张图片开始我的旅程。所以我使用900作为训练数据集,使用100作为测试数据集。我得到了一个约70%正确性的模型。
然后我今天再拍了150张照片。所以我有两个想法要继续:
(1)我可以将之前的100个测试数据+ 900个训练数据组合成一个“新”训练集,这样我可以获得1000个训练数据以获得更好的模型吗?那么我可以使用新的150个图像作为新的“测试”数据吗?
(2)我可以将新的150张图像+ 900列车数据组合成一个“新”训练集来训练更好的模型,并继续使用之前的100个测试数据集来测试新模型吗?
显然我会尝试这两种方法,但我不确定哪种方法更好......有什么意见吗?感谢。
答案 0 :(得分:1)
只要新的150张图像来自与前1000张样本相同的分布,就无所谓了。
答案 1 :(得分:1)
如果您想要最好的CNN,您应该尽可能多地训练数据。理论说,你拥有的训练数据越多,你的测试误差就会越接近你的训练误差。这意味着您的CNN将更好地分类未经过培训的示例。另一方面,您不需要太少的测试数据,因为您需要对准确度测量充满信心。因此,您应该获得更多培训和更多测试数据。
如果您的数据是 IID ,那么您不必担心1150张图片中的哪一张用于训练您的模型。
重复使用相同测试数据的唯一危险是您可能会更改模型(例如,添加另一个图层,和/或向现有图层添加更多单位),因为它可以为您的测试数据提供更好的结果。当您根据对测试错误的观察结果更改模型时,您可能会过度拟合数据。您可以使用第三个数据集(称为验证集)来调整模型,从而缓解此问题。
IID :总共1150张图片是从相同的分布中独立绘制的。换句话说,粗略地说,除了他们对你不熟悉之外,没有什么可以区分150和150,并且每个图像的选择都不受任何其他图像选择的影响。