我在我的二分类CNN中进行了数据增强。在我的原始数据集中有1400张图像(每类700张),所以,我的疑问是当我实现以下数据增强时,这个方法会在我的数据集中添加多少图像?
datagen = ImageDataGenerator( rotation_range=30, zoom_range=0.15, featurewise_std_normalization=True, width_shift_range=0.2, height_shift_range=0.2, shear_range=0.15, horizontal_flip=True, fill_mode="nearest")
回答:
Keras的ImageDataGenerator不会添加图像到数据集中,它只是在需要时随机修改数据集中的图像。每次你请求一个批次时,它会从数据集中选择几张未修改的图像,然后对它们进行修改。因为它执行的是随机修改,所以它可以对任何给定的原始图像生成近乎无限的变体。
如果你有1400张图像,假设你获得了90%的验证准确率。如果你对这些图像进行增强,你可能会得到93%。然而,请记住,增强并不是大数据集的良好替代品。如果你再收集1400张图像,即使不进行任何增强,你也可能达到95%。这是因为这些新图像是全新的,它们很可能具有标准增强无法添加的特征。