简体   繁体   English

Keras 在 1 个完成的 epoch 后停止

[英]Keras stops after 1 completed epoch

Trying to run classification on the CIFAR-10 dataset with a simple CNN.尝试使用简单的 CNN 在 CIFAR-10 数据集上运行分类。 However, the model stops after completing the first epoch and doesn't go on to complete all five.但是,模型在完成第一个 epoch 后停止,并且不会继续完成所有五个。 Please help.请帮忙。

INPUT:输入:

cifar10 = tf.keras.datasets.cifar10
(train_images, train_labels), (test_images, test_labels) = cifar10.load_data()

import os
import matplotlib.pyplot as plt
import numpy as np
import time
import tensorflow as tf
from tensorflow import keras 
from tensorflow.keras import layers
from tensorflow.keras import models
from tensorflow.keras import optimizers
from tensorflow.keras.applications import VGG16
from tensorflow.keras.preprocessing.image import ImageDataGenerator

model = models.Sequential()

# Convolutional base (feature extractor)
model.add(layers.Conv2D(32, (3, 3), activation='relu', input_shape=(32, 32, 3)))
model.add(layers.MaxPooling2D((2, 2)))

model.add(layers.Conv2D(64, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))

# Deep feed-forward classifier
model.add(layers.Flatten())
model.add(layers.Dense(64, activation='relu'))
model.add(layers.Dense(10, activation='softmax'))

model.compile(loss='sparse_categorical_crossentropy', optimizer=optimizers.RMSprop(lr=1e-4), metrics=['acc'])

history = model.fit(
    x=train_images,
    y=train_labels,
    steps_per_epoch=100,
    epochs=5,
    verbose=1,
    validation_data=(test_images, test_labels),
    validation_steps=50)

OUTPUT:输出:

Train on 50000 samples, validate on 10000 samples
Epoch 1/5
50000/50000 [==============================] - 28s 564us/sample - loss: 2.1455 - acc: 0.2945 - val_loss: 2.0011 - val_acc: 0.3038

您应该删除 steps_per_epoh 和 validation_steps 并使用 batch_size 参数。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM