【发布时间】:2023-03-17 15:07:02
【问题描述】:
我已经使用以下代码实现了一个模型。
model=models.Sequential()
model.add(tf.keras.layers.DepthwiseConv2D((3, 5), padding='valid', depth_multiplier=10, input_shape=(1188,1188,1)))
model.add(layers.MaxPooling2D((3,3), strides=(1, 1)))
model.add(layers.Dropout(.2))
model.add(tf.keras.layers.DepthwiseConv2D((2, 4), padding='valid', depth_multiplier=2))
model.add(layers.MaxPooling2D((2,2), strides=(1, 1)))
model.add(layers.Dropout(.2))
model.add(tf.keras.layers.DepthwiseConv2D((2, 2), padding='valid', depth_multiplier=2))
model.add(layers.MaxPooling2D((3,2), strides=(1, 2)))
model.add(layers.Dropout(.2))
model.add(layers.Flatten())
model.add(layers.Dense(5))
model.summary()
model.compile(optimizer='adam',
loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
metrics=['accuracy'])
model.fit(f1, labels1,batch_size=20,epochs=10)
f1和labels1的形状分别是(1188, 1188, 6)和(1188, 1188, 1)。
运行后,我得到这个错误-: ValueError: Input 0 of layer sequential_4 is incompatible with the layer: expected ndim=4, found ndim=3. Full shape received: (None, 1188, 6)
我还尝试在模型中使用input shape=(1188,1188)。
但我在运行模型时出错-:ValueError: Input 0 of layer depthwise_conv2d is incompatible with the layer: : expected min_ndim=4, found ndim=3. Full shape received: (None, 1188, 1188)
我在选择输入形状时是否犯了错误?
如果是,我应该做什么样的修改?
谢谢
【问题讨论】:
标签: python tensorflow keras deep-learning