深度学习数据生成器:训练、验证和测试集的构建
深度学习数据生成器:训练、验证和测试集的构建
在深度学习中,数据生成器(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_datagen、validation_datagen和test_datagen是ImageDataGenerator对象,它们定义了数据增强和预处理方法。train_dir、validation_dir和test_dir分别是训练集、验证集和测试集的目录路径。target_size设置了图像的尺寸。batch_size设置了每个批次的大小。class_mode='categorical'表示输出为分类标签的 one-hot 编码。
注意:
- 在实际应用中,应该使用不同的数据增强方法来创建
train_datagen、validation_datagen和test_datagen,以防止验证集和测试集的数据泄露。 - 在训练模型时,使用
train_generator来提供训练数据,使用validation_generator来评估模型的性能,使用test_generator来评估模型在未见过的数据上的泛化能力。
原文地址: https://www.cveoy.top/t/topic/pcYE 著作权归作者所有。请勿转载和采集!