2 回答
TA贡献1752条经验 获得超4个赞
为什么不升级 MNST 进行培训?您的问题是关于图像的分辨率,MNST 数据集是很久以前创建的,当时 GPU 内存还非常小。最近的模型都具有大于 的图像尺寸200 * 200
,例如 resnet224*224
用作输入形状。由于您的图像从一开始就已经是低分辨率的,并且您缩小了尺寸,您将使模型难以相互区分。由于您的模型相当简单,我建议升级训练数据集。
是的,如果你使用你提到的池,你可能也会丢失信息。
希望这可以帮助。
TA贡献1865条经验 获得超7个赞
一种选择是如上所建议的 -例如,从28x28到的高档初始数据集。56x56
第二个选项是在训练模型的开头添加一个附加层MaxPooling或AveragePooling层,例如:
new_input = Input(shape=(56, 56, 1), name='new_input')
x = AveragePooling2D((2,2), name='avg_pool')(new_input)
new_output = trained_model(x)
new_model = Model(new_input, new_output)
以下是新模型的摘要:
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
new_input (InputLayer) (None, 56, 56, 1) 0
_________________________________________________________________
avg_pool (AveragePooling2D) (None, 28, 28, 1) 0
_________________________________________________________________
trained_model (Sequential) (None, 10) 159254
=================================================================
Total params: 159,254
Trainable params: 159,254
Non-trainable params: 0
_________________________________________________________________
添加回答
举报