【问题标题】:ValueError: Input 0 of layer conv2d is incompatible with the layer: : expected min_ndim=4, found ndim=3. Full shape received: (None, 180, 180)ValueError:conv2d 层的输入 0 与层不兼容::预期 min_ndim=4,发现 ndim=3。收到的完整形状:(无、180、180)
【发布时间】:2021-09-28 16:48:09
【问题描述】:

这是我的代码,

我试图在 CNN 网络下构建,我正在观察这个错误,

model.add(Conv2D(8,3,activation='relu',padding='same',input_shape=(180,180)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(16,3,activation='relu',padding='same',input_shape=(180,180)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(32,3,activation='relu',padding='same',input_shape=(180,180)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(64,3,activation='relu',padding='same',input_shape=(180,180)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(128,3,activation='relu',padding='same',input_shape=(180,180)))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Flatten())
model.add(Dense(254, activation='relu'))
model.add(Dense(9, activation='softmax'))

image_batch 是形状 (32, 180, 180, 3) 的张量。这是一组 32 张形状为 180x180x3 的图像(最后一个维度是指颜色通道 RGB)。 label_batch 是形状 (32,) 的张量,这些是对应于 32 张图像的标签

【问题讨论】:

    标签: python tensorflow conv-neural-network


    【解决方案1】:

    你需要配置 CNN 来处理 shape 的输入

    model.add(layers.Conv2D(8, (3, 3), activation='relu', input_shape=(180, 180, 3)))
    

    第一个维度被认为是batch_size。如果您指定input_shape=(180,180),则意味着image_height=180, image_width=180batch_size=None 意味着可以在模型拟合阶段提供任意数量的样本作为输入。

    【讨论】:

      猜你喜欢
      • 2021-11-13
      • 2021-08-10
      • 2022-12-10
      • 2021-06-17
      • 2021-06-16
      • 1970-01-01
      • 2021-10-18
      • 2020-11-15
      • 2020-12-24
      相关资源
      最近更新 更多