检查输入时出错:预期conv2d_input具有4个维度, 但是得到了形状为(1000,32,32)的数组
当我尝试将Conv2d添加为第一层时,这就是我得到的。我为网络提供了[1000,32,32]数组,这是一千个32x32的图片
model = keras.Sequential([
keras.layers.Conv2D(32, (3, 3), padding='same',data_format="channels_first", input_shape=(1,32,32)),
keras.layers.Dense(128, activation=tf.tanh),
keras.layers.Dense(128,activation=tf.tanh)
])
出什么问题了?如何设置输入的尺寸?
答案 0 :(得分:0)
即使您只有一个通道,您的模型也希望输入中的通道具有明确的尺寸。如果您的图片是np arrays
,则可以如下添加尺寸:
import numpy as np
image = np.random.rand(1000,32,32)
image = np.expand_dims(image, axis=1)
image.shape
output: (1000, 1, 32, 32)