在每个时代,损失都是纳米

时间:2018-02-13 05:38:10

标签: keras conv-neural-network

我试图通过模型来区分7种不同的情绪。我正在使用keras的VGG16模型。我已经删除了最后一个&soft;' softmax'图层(来自最初的架构)并引入了我的softmax图层,共有7个类。我使用过RMSprop优化器。 但是,在拟合时,每个时代的损失都是纳米。我不明白这个错误。提前致谢。 这是我的代码片段。 (假设我已经导入了所有必需的库)

model_use = keras.applications.vgg16.VGG16()
model= Sequential()
for layer in model_use.layers:
    model.add(layer)
model.layers.pop()
for layer in model.layers:
    layer.trainable = False
model.add(Dense(7, activation='softmax', name='pred',kernel_initializer='random_uniform'))

#Now I imported the training and testing data into images, labels

X_train, X_test, Y_train, Y_test = train_test_split(images, labels, test_size=0.2, random_state=1)
datagen = ImageDataGenerator(
    featurewise_center=True,
    featurewise_std_normalization=True,
    rotation_range=20,
    width_shift_range=0.2,
    height_shift_range=0.2,
    horizontal_flip=True)
datagen.fit(X_train)

model.compile(RMSprop(lr=1e-4),loss="categorical_crossentropy",metrics=["accuracy"])

model.fit_generator(datagen.flow(X_train, Y_train, batch_size=32),verbose = 2 ,steps_per_epoch=int(len(X_train) / 32), epochs=10)

但输出结果是:

Epoch 1/10
 - 180s - loss: nan - acc: 0.1500

我将代码运行到10个时代,但损失仍然是纳米。

0 个答案:

没有答案