如何使用tf.keras.utils.image_dataset_from_directory创建训练集、测试集和验证集?

8i9zcol2  于 8个月前  发布在  其他
关注(0)|答案(1)|浏览(73)

虽然我知道如何制作训练和验证集,如下所示:

train_dataset = tf.keras.utils.image_dataset_from_directory(directory,
                                             shuffle=True,
                                             batch_size=BATCH_SIZE,
                                             image_size=IMG_SIZE,
                                             validation_split=0.2,
                                             subset='training',
                                             seed=42)
validation_dataset = tf.keras.utils.image_dataset_from_directory(directory,
                                             shuffle=True,
                                             batch_size=BATCH_SIZE,
                                             image_size=IMG_SIZE,
                                             validation_split=0.2,
                                             subset='validation',
                                             seed=42)

如果我也想要一个测试集,我不知道如何做到这一点。培训占80%,验证占10%,测试占10%。有人能解释一下吗

aelbi1ox

aelbi1ox1#

你可以利用Scikit-learn的帮助,并使用Keras进行其他活动。
Keras函数具有以下参数,并且仅提供创建训练和测试数据集(测试数据集由函数中的'validation_split'表示;基本上是一样的)

tf.keras.utils.image_dataset_from_directory(
    directory,
    labels='inferred',
    label_mode='int',
    class_names=None,
    color_mode='rgb',
    batch_size=32,
    image_size=(256, 256),
    shuffle=True,
    seed=None,
    validation_split=None,
    subset=None,
    interpolation='bilinear',
    follow_links=False,
    crop_to_aspect_ratio=False,
    **kwargs
)

从我提到的article,你可以用以下方式使用它:
1.加载数据
1.定义模型(Keras)
1.训练-测试-验证分离(Sk-learn)
1.培训、测试、评估
代码可以在上面提到的链接中找到。

相关问题