簡體   English   中英

為什么 Keras 在 25 個 epoch 中只運行 5 個?

[英]Why does Keras run only 5 epochs out of 25?

我已經卸載了 Keras 和 Tensorflow 並使用它們安裝了它們

 pip install tensorflow == 2.6


 pip install keras == 2.6

但即使在之后,我仍然有一個奇怪的事情,它只有 5 個 epoch 正在運行:

在此處輸入圖像描述

我無法追蹤這種情況何時發生,但它曾經運行過所有的時代。 這是我的代碼:

train_datagen = ImageDataGenerator(rescale = 1.0/255.)
test_datagen = ImageDataGenerator(rescale = 1.0/255.)

train_generator = tf.keras.utils.image_dataset_from_directory(base_dir,
                                                    batch_size=20,
                                                    label_mode='categorical',
                                                    validation_split = 0.2,
                                                    subset='training',
                                                    seed=123,
                                                    image_size=(200, 200))

validation_generator = tf.keras.utils.image_dataset_from_directory(base_dir,
                                                        batch_size=20,
                                                        label_mode='categorical',
                                                        validation_split = 0.2,
                                                        subset='validation',
                                                        seed=123,
                                                        image_size=(200, 200))
model = Sequential([
    Conv2D(32, (3, 3), activation='relu', input_shape=(200, 200, 3)),
    MaxPooling2D((2, 2)),
    Conv2D(64, (3, 3), activation='relu'),
    MaxPooling2D((2, 2)),
    Conv2D(128, (3, 3), activation='relu'),
    tf.keras.layers.Dropout(0.2),
    Flatten(),
    Dense(256, activation='relu'),
    Dense(4, activation='softmax')
])

model.compile(optimizer='Adam',
              loss='categorical_crossentropy',
              metrics=['accuracy']
)

history = model.fit(
    train_generator,
    steps_per_epoch = 25,   
    epochs = 25,
    validation_data = validation_generator,
    validation_steps = 25,    
    verbose = 1
)

plot_loss(history)

我也用

import logging
logging.getLogger("tensorflow").setLevel(logging.ERROR)

請指導我。

嘗試將steps_per_epoch = 25steps_per_epoch = 25替換為batch_size = 25

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM