我有xtrain.shape
(60000, 28, 28)
它意味着60000个通道,图像大小为28 * 28
我想制作一个keras顺序模型 .
指定模型形状
model = Sequential()
model.add(Convolution2D(32,3,activation='relu',input_shape=(????)))
model.add(Dense(10, activation='relu'))
model.summary()
input_shape应该是什么样的?
model = Sequential()
model.add(Dense(64,input_shape=(1,28,28)))
当我把它我得到一个跟随错误
Error when checking input: expected dense_31_input to have 4 dimensions, but got array with shape (60000, 28, 28)
为什么这需要4个尺寸?以及如何修复表单代码?
3 回答
尝试将数据重塑为(60000,28,28,1)或(60000,1,28,28) .
嗯,这当然不代表;它意味着60000个样本,而不是通道(MNIST是单通道数据集) .
在这种情况下无需重新发明轮子 - 看看Keras的MNIST CNN example:
您还应该将最终图层的激活更改为
softmax
(并且最可能在最终密集图层之前添加一些合并和展平图层) .第一,
第二个,