0

我的实验图像数据非常少。我的数据集中每个类只有 40 张图像。所以我想通过使用ImageDataGenerator以下方法来增加所有的训练集、验证集和测试集:

train_datagen = ImageDataGenerator(
    horizontal_flip=True,
    shear_range=0.2,
    zoom_range=0.2,
    rescale=1/255.,
)
val_datagen = ImageDataGenerator(
    horizontal_flip=True,
    shear_range=0.2,
    zoom_range=0.2,
    rescale=1/255.,
)
test_datagen = ImageDataGenerator(
    horizontal_flip=True,
    shear_range=0.2,
    zoom_range=0.2,
    rescale=1/255.,
)

我将它们与flow_from_directory函数一起使用,在模型训练中使用训练和验证生成器,但验证数据似乎没有增加(验证集中的图像数量似乎与初始数量没有变化)。不知何故,这也发生在测试集中。当我用 sklearn's 评估模型时,我发现了它classification_report。结果列中显示的support数量与增强前测试集中的图像数量完全相同。

                             precision    recall  f1-score   support

                 Blue Whale       1.00      1.00      1.00         4
               Killer Whale       1.00      0.75      0.60         4
                      Shark       0.50      0.75      0.75         4

                   accuracy                           0.90        12
                  macro avg       0.83      0.83      0.78        12
               weighted avg       0.83      0.83      0.78        12

如何使用 Tensorflow 生成器来增加验证和测试集?

4

0 回答 0