【发布时间】:2020-03-12 18:23:10
【问题描述】:
我正在使用 keras 构建图像分类模型,我的所有数据都在一个目录中,每个目录都有子文件夹:
data/
----class1/
----class2/
----class3/
----class4/
我想知道是否有一种方法可以使用ImageDataGenerator 将我的数据拆分为 keras 中的训练、测试和验证集。
【问题讨论】:
标签: python-3.x keras
我正在使用 keras 构建图像分类模型,我的所有数据都在一个目录中,每个目录都有子文件夹:
data/
----class1/
----class2/
----class3/
----class4/
我想知道是否有一种方法可以使用ImageDataGenerator 将我的数据拆分为 keras 中的训练、测试和验证集。
【问题讨论】:
标签: python-3.x keras
是的,有一种方法可以做到这一点。
train_datagen = ImageDataGenerator(rescale=1./255,
shear_range=0.2,
zoom_range=0.2,
horizontal_flip=True,
validation_split=0.2) # set validation split
train_generator = train_datagen.flow_from_directory(
train_data_dir,
target_size=(img_height, img_width),
batch_size=batch_size,
class_mode='binary',
subset='training') # set as training data
validation_generator = train_datagen.flow_from_directory(
train_data_dir, # same directory as training data
target_size=(img_height, img_width),
batch_size=batch_size,
class_mode='binary',
subset='validation') # set as validation data
model.fit_generator(
train_generator,
steps_per_epoch = train_generator.samples // batch_size,
validation_data = validation_generator,
validation_steps = validation_generator.samples // batch_size,
epochs = nb_epochs)
【讨论】: