深度学习数据生成器:训练、验证和测试集的构建

在深度学习中,数据生成器(data generator)是一种非常有用的工具,它可以用来从磁盘加载和预处理训练数据,并将其批次地馈送到模型中。

本文将介绍如何使用 Keras 的 ImageDataGenerator 创建训练、验证和测试数据生成器。

train_generator = train_datagen.flow_from_directory(
    train_dir,
    target_size=(150, 150),
    batch_size=20,
    class_mode='categorical'
)

validation_generator = validation_datagen.flow_from_directory(
    validation_dir,
    target_size=(150, 150),
    batch_size=20,
    class_mode='categorical'
)

test_generator = test_datagen.flow_from_directory(
    test_dir,
    target_size=(150, 150),
    batch_size=20,
    class_mode='categorical'
)

代码说明:

  • train_datagenvalidation_datagentest_datagenImageDataGenerator 对象,它们定义了数据增强和预处理方法。
  • train_dirvalidation_dirtest_dir 分别是训练集、验证集和测试集的目录路径。
  • target_size 设置了图像的尺寸。
  • batch_size 设置了每个批次的大小。
  • class_mode='categorical' 表示输出为分类标签的 one-hot 编码。

注意:

  • 在实际应用中,应该使用不同的数据增强方法来创建 train_datagenvalidation_datagentest_datagen,以防止验证集和测试集的数据泄露。
  • 在训练模型时,使用 train_generator 来提供训练数据,使用 validation_generator 来评估模型的性能,使用 test_generator 来评估模型在未见过的数据上的泛化能力。
深度学习数据生成器:训练、验证和测试集的构建

原文地址: https://www.cveoy.top/t/topic/pcYE 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录