如何解决使用 Keras Datagenerator 时的漫长时代
我正在尝试在 kaggle 数据集 https://www.kaggle.com/franciscoescobar/satellite-images-of-water-bodies 上实现语义分割任务。 我已经使用 Keras 数据生成器处理了数据,它看起来像这样 -
seed = 42
BATCH_SIZE = 50
HEIGHT = 256
WIDTH = 256
image_datagen = ImageDataGenerator(width_shift_range=0.1,rescale=1./255,validation_split=0.1,height_shift_range=0.1,)
mask_datagen = ImageDataGenerator(width_shift_range=0.1,rescale = 1./255,)
train_image_generator =image_datagen.flow_from_directory("data/image/",color_mode = 'grayscale',class_mode=None,seed=seed,subset='training',batch_size = BATCH_SIZE,target_size = (HEIGHT,WIDTH))
train_mask_generator = mask_datagen.flow_from_directory("data/mask/",WIDTH))
validation_image_generator =image_datagen.flow_from_directory("data/image/",subset='validation',WIDTH))
validation_mask_generator = mask_datagen.flow_from_directory("data/mask/",WIDTH))
train_generator = zip(train_image_generator,train_mask_generator)
val_generator = zip(validation_image_generator,validation_mask_generator)
但在那之后,当我使用 model.fit 方法训练模型时, 代码 -
EPOCHS = 70
callbacks = [WandbCallback(),tf.keras.callbacks.EarlyStopping(monitor='val_loss',patience = 1)]
BATCH_SIZE = 50
history = model.fit(train_generator,epochs = EPOCHS,validation_data = val_generator,verbose=1,callbacks=callbacks)
但是 epoch 花费的时间比通常需要的时间多得多,epoch 运行显示类似这样的内容
Epoch 1/70
1557/UnkNown - 2038s 1s/step - loss: 0.2131 - accuracy: 0.5625
为什么要花太多时间??任何人,请帮忙。 我还附上了我制作的相应笔记本:link
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。