【发布时间】:2021-04-28 03:49:18
【问题描述】:
我目前正在将 kaggle 的笔记本用于卷积神经网络,并使用以下代码运行了一个单元:
model = Sequential()
model.add(Conv2D(32, kernel_size=(3,3), activation='relu', input_shape=(28, 28, 1)))
model.add(MaxPooling2D(2,2))
model.add(BatchNormalization())
model.add(Conv2D(64, kernel_size=(3,3), activation='relu'))
model.add(MaxPooling2D(2,2))
model.add(BatchNormalization())
model.add(Dropout(0.1))
model.add(Dense(10, activation='softmax'))
model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])
model.fit(train_images, train_labels, epochs=5)
单元格运行一秒钟然后突然停止并且没有训练,但是它也没有给我错误消息。它刚刚结束。当我在上面的单元格上运行以下 conv 神经网络结构时,它工作得非常好,并显示了时代和训练:
model = Sequential()
model.add(Flatten(input_shape=(28, 28)))
model.add(Dropout(0.05))
model.add(Dense(128, activation='relu'))
model.add(Dense(10, activation='softmax'))
model_optimizer = Adam(lr=0.001)
model.compile(optimizer=model_optimizer, loss='sparse_categorical_crossentropy', metrics=['accuracy'])
history = model.fit(train_images, train_labels, epochs=10)
对于第一个单元格不工作的原因是否有具体原因或任何想法?跟图层有关系吗?我注意到当我没有 Conv2D / Maxpooling 层时,单元格似乎运行良好。
【问题讨论】:
-
你能分享一个可重现的代码吗?一个公开的 kaggle 笔记本会很棒。
-
@M.Innat,感谢您的评论,但我最终弄明白了!我在 Pycharm 中运行代码,Pycharm 给了我一个尺寸错误,所以我编辑了输入形状,然后返回 kaggle 并编辑 kaggle 版本以匹配编辑并运行。
标签: python tensorflow neural-network conv-neural-network kaggle