【问题标题】:Error when checking input: expected dense_8_input to have 2 dimensions检查输入时出错:预期的 dense_8_input 有 2 个维度
【发布时间】:2020-01-04 06:48:17
【问题描述】:

我正在尝试运行一个简单的网络来对 MNIST 进行分类:

network = models.Sequential()
network.add(layers.Dense(512, activation = 'relu', input_shape=(28 * 28,)))
network.add(layers.Dense(10, activation='softmax'))

当我尝试适应时:

network.fit(train_images, train_labels, epochs =5, batch_size = 128)

我收到此错误:

检查输入时出错:预期的 dense_8_input 有 2 尺寸,但得到了形状为 (60000, 28, 28) 的数组

我在做什么?

【问题讨论】:

  • input_shape = (28,28,) 不是 (28*28)

标签: python keras neural-network mnist


【解决方案1】:

您的模型期望每个输入样本的形状为(784,)(即input_shape=(28 * 28,))。但是,如错误所示,输入数组当前的形状为(num_samples, 28, 28)。所以你需要重塑它:

import numpy as np

train_images = np.reshape(train_images, (-1, 28*28))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-11-18
    • 1970-01-01
    • 1970-01-01
    • 2018-07-25
    • 1970-01-01
    • 2021-06-17
    • 2020-05-04
    • 2020-04-15
    相关资源
    最近更新 更多