【问题标题】:Keras infinite loopKeras 无限循环
【发布时间】:2020-04-02 17:37:47
【问题描述】:

代码从 colab 文件夹中读取我的图像。然后它使用生成器将代码拆分为训练集和验证集。我使用现有的预模型 Dense201 来训练它。但是我不确定为什么,因为生成器仍然陷入无限循环,并且生成验证数据的循环永远不会执行。有谁知道如何规避这个?

    import tensorflow as tf



    IMAGE_SIZE = 224
     BATCH_SIZE = 64

datagen = tf.keras.preprocessing.image.ImageDataGenerator(
    rescale=1./255, 
    validation_split=0.2)

train_generator = datagen.flow_from_directory(
    base_dir,
    target_size=(IMAGE_SIZE, IMAGE_SIZE),
    batch_size=BATCH_SIZE, 
    subset='training')

val_generator = datagen.flow_from_directory(
    base_dir,
    target_size=(IMAGE_SIZE, IMAGE_SIZE),
    batch_size=BATCH_SIZE, 
    subset='validation')

base_model = tf.keras.applications.DenseNet201(input_shape=IMG_SHAPE,
                                              include_top=False, 
                                              weights='imagenet')
model = tf.keras.Sequential([
  base_model,
  tf.keras.layers.Conv2D(32, 3, activation='relu'),
  tf.keras.layers.Dropout(0.2),
  tf.keras.layers.GlobalAveragePooling2D(),
  tf.keras.layers.Dense(5, activation='softmax')
])
model.compile(optimizer=tf.keras.optimizers.Adam(), 
              loss='categorical_crossentropy', 
              metrics=['accuracy'])

history = model.fit(train_generator, 
                    epochs=2, 
                    steps_per_epoch=100,
                    validation_data=val_generator)

【问题讨论】:

  • 补充一下,两周前我在 colab 中跑步时一切正常
  • 我遇到了同样的问题。将 Tensorflow 降级到 2.1.0 版本将解决一次问题。 (pip install tensorflow==2.1.0)

标签: tf.keras


【解决方案1】:

行内:

history = model.fit(train_generator, 
                epochs=2, 
                steps_per_epoch=100,
                validation_data=val_generator)

steps_per_epoch=100 更改为steps_per_epoch=(len(train_generator)//BATCH_SIZE)

【讨论】:

  • 它仍然在无限循环中,它不是这样早期的 epochs = 2 history = model.fit(train_generator, epochs=epochs, steps_per_epoch=(train_generator.n//BATCH_SIZE), validation_data=val_generator)
【解决方案2】:

终于成功了!

!pip uninstall tensorflow

!pip install tensorflow==2.1.0

【讨论】:

    猜你喜欢
    • 2019-12-09
    • 1970-01-01
    • 1970-01-01
    • 2015-06-25
    • 1970-01-01
    • 2013-09-05
    • 1970-01-01
    相关资源
    最近更新 更多