python - Keras log_loss 错误是一样的

标签 python python-3.x tensorflow deep-learning keras

我是 keras 和深度学习的新手。当我创建一个样本基本模型时,我拟合它并且我的模型的对数损失总是相同的。

model = Sequential()
model.add(Convolution2D(32, 3, 3, border_mode='same', init='he_normal',
                        input_shape=(color_type, img_rows, img_cols)))
model.add(MaxPooling2D(pool_size=(2, 2), dim_ordering="th"))
model.add(Dropout(0.5))
model.add(Convolution2D(64, 3, 3, border_mode='same', init='he_normal'))
model.add(MaxPooling2D(pool_size=(2, 2), dim_ordering="th")) #this part is wrong
model.add(Dropout(0.5))

model.add(Convolution2D(128, 3, 3, border_mode='same', init='he_normal'))
model.add(MaxPooling2D(pool_size=(2, 2), dim_ordering="th"))
model.add(Dropout(0.5))

model.add(Flatten())
model.add(Dense(10))
model.add(Activation('softmax'))

model.compile(Adam(lr=1e-3), loss='categorical_crossentropy')


model.fit(x_train, y_train, batch_size=64, nb_epoch=200,
               verbose=1, validation_data=(x_valid,y_valid))

训练 17939 个样本,验证 4485 个样本

纪元 1/200 17939/17939 [==============================] - 8s - 损失:99.8137 - acc:0.3096 - val_loss:99.9626 - val_acc: 0.0000e+00

纪元 2/200 17939/17939 [==============================] - 8s - 损失:99.8135 - acc:0.2864 - val_loss:99.9626 - val_acc: 0.0000e+00

纪元 3/200 17939/17939 [==============================] - 8s - 损失:99.8135 - acc:0.3120 - val_loss:99.9626 - val_acc: 1.0000

时代 4/200 17939/17939 [==============================] - 10s - 损失:99.8135 - acc:0.3315 - val_loss:99.9626 - val_acc: 1.0000

时代 5/200 17939/17939 [==============================] - 10s - 损失:99.8138 - acc:0.3435 - val_loss:99.9626 - val_acc: 0.4620

..

...

是这样的

你知道我哪里错了吗?

最佳答案

这种行为的一个原因可能是学习率太小。尝试使用 Adam(lr=1e-2)Adam(lr=1e-1) 来提高学习率。另外,等待更多的迭代(epochs),看看它是否有所改善。如果不是,您可以尝试减少 dropout。此外,如果您还没有规范化您的输入数据,我建议您规范化。

关于python - Keras log_loss 错误是一样的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45639292/

相关文章:

python - 为什么每次使用 tensorflow 模型时都会得到不同的结果?

python - 压缩的头像图片在Python中变得“旋转”

python - 基于一维唯一元素过滤numpy结构化数组

python - TensorFlow,如何查看 'blob' 内部,通过 CNN 响应

python - 当您要查找的特定值不在列表中时如何说

python - 如何为每个索引值添加差异行?

python - 在 Keras 到 TPU 模型中使用 tensorflow 学习率衰减

python - 队列仍然未知或只是不知道如何调用它们

python - ZeroMQ PUB/SUB 过滤和性能

python-3.x - TypeError : Invalid shape (100, 100, 1) for image data 当plot image