【发布时间】:2018-01-20 05:06:37
【问题描述】:
我是 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
..
...
事情是这样的
你知道我做错了什么吗?
【问题讨论】:
-
您需要提供更多信息,例如网络架构和您要解决的问题。
-
好吧,我编辑了,我的问题有 10 个不同的类
-
@matiasValdengro 表示您需要为整个网络添加代码。您所有的密集层、model.compile,甚至可能是数据样本
标签: python python-3.x tensorflow deep-learning keras