首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从tensorflow看input_shape在keras.layers中的应用

从tensorflow看input_shape在keras.layers中的应用
EN

Stack Overflow用户
提问于 2022-02-09 09:50:21
回答 1查看 91关注 0票数 2

我是tensorflow的初学者。我刚刚尝试为mnist数据安装一个简单的LeNet-5。

我的训练和测试数据是第一次以Numpy格式。即(60000,28,28)。然后我把我的模型设置如下。

代码语言:javascript
复制
model_LeNet5 = Sequential([ 
    layers.Conv2D(6, kernel_size=3, strides=1, input_shape=(28, 28, 1)),
    layers.MaxPooling2D(pool_size=2,strides=2), 
    layers.ReLU(), 
    layers.Conv2D(16,kernel_size=3,strides=1), 
    layers.MaxPooling2D(pool_size=2,strides=2), 
    layers.ReLU(), 
    layers.Flatten(), 
    layers.Dense(120, activation='relu'), 
    layers.Dense(84, activation='relu'), 
    layers.Dense(10) 
])

我可以理解,当我将input_shape设置为(28,28)或train_images.shape1:时,我获得了成功,但我无法理解input_shape = (28,28,1)也是工作的(如上面的代码所示)。

数据的形状和输入大小的设置似乎不一致(即60万、28、28和28、28、1)。另外,广播规则不能将60万、28、28和28、28、1连接起来。谢谢任何解释input_shape机制的人。

EN

回答 1

Stack Overflow用户

发布于 2022-02-09 10:11:46

单个灰度图像可以用二维(2D) NumPy阵列或张量表示.由于灰度图像中只有一个通道,所以我们不需要额外的维度来表示颜色通道。这两个维度表示图像的高度和宽度。

一批3幅灰度图像可以用三维NumPy阵列或张量表示。在这里,我们需要一个额外的维度来表示图像的数量。

有关更多信息,请参阅本文在数据科学上的内容。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71047310

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档