【发布时间】:2021-03-22 05:24:42
【问题描述】:
我正在尝试编写一个模型来对 mnist 数据集中的手写数字进行分类。我目前使用的模型如下所示:
model = tf.keras.models.Sequential([
tf.keras.layers.Conv2D(8,(3,3),input_shape = (28,28,1),padding = "same"),
tf.keras.layers.Dense(4000,activation = 'sigmoid'),
tf.keras.layers.MaxPooling2D(),
tf.keras.layers.Conv2D(8,(3,3),input_shape = (28,28,1),padding = "same"),
tf.keras.layers.Dense(4000,activation = 'sigmoid'),
tf.keras.layers.MaxPooling2D(),
tf.keras.layers.Conv2D(8,(3,3),input_shape = (28,28,1),padding = "same"),
tf.keras.layers.Dense(4000,activation = 'sigmoid'),
tf.keras.layers.MaxPooling2D(),
tf.keras.layers.Conv2D(8,(3,3),input_shape = (28,28,1),padding = "same"),
tf.keras.layers.Dense(4000,activation = 'sigmoid'),
tf.keras.layers.MaxPooling2D(),
tf.keras.layers.Conv2D(8,(3,3),input_shape = (28,28,1),padding = "same"),
tf.keras.layers.Dense(4000,activation = 'sigmoid'),
tf.keras.layers.MaxPooling2D(),
tf.keras.layers.Flatten(input_shape = (28,28)),
tf.keras.layers.Dense(10,'softmax')
])
它应该是一个具有 5 层的卷积深度神经网络,我在模型的最后一行不断收到此错误消息。
ValueError: Negative dimension size caused by subtracting 2 from 1 for '{{node max_pooling2d_9/MaxPool}} = MaxPool[T=DT_FLOAT, data_format="NHWC", ksize=[1, 2, 2, 1], padding="VALID", strides=[1, 2, 2, 1]](dense_10/Sigmoid)' with input shapes: [?,1,1,4000].`
我不明白错误或如何修复它。有人可以帮帮我吗?我已经将填充设置为“相同”,但它没有修复它。如果有帮助,我也在使用 google colab。
【问题讨论】:
-
您的帖子没有以有用的方式格式化 - 您可以使用降价代码格式重新格式化吗?你用```code```封装多行代码
标签: python tensorflow neural-network conv-neural-network mnist