如何使用已展平的输入数据实现2D conv

2024-03-29 12:05:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在一个数据集上训练一个带有TensorFlow的CNN模型,该数据集的图像形状为28x28,已经被展平为长度为784的向量

我想在Tensorflow中使用Conv2D层,但由于我的输入已经被展平,我不知道最好的方法是什么

是否有一种层执行与展平相反的操作?我应该用子类API和numpy的重塑来编写自定义模型吗?或者是否可以使用一维数组执行二维卷积

提前感谢您的帮助


Tags: 数据方法模型图像numpyapitensorflow子类
0条回答
网友
1楼 · 发布于 2024-03-29 12:05:24

我不知道你为什么要这么做,但这里有一个方法可能会有所帮助。使用TensorFlow 2和Keras:

model = models.Sequential()
model.add(layers.Conv2D(8,(3,3),padding='same',input_shape=([28,28,3])))
model.add(layers.Flatten())
model.add(layers.Reshape([28,28,8]))
model.add(layers.Conv2D(3,(3,3),padding='same',input_shape=([28,28,3])))

唯一的缺点是,你应该确切地知道你要在这里重塑什么样的维度

如果你需要更多的信息,你必须在你的问题中提供更多。你提供的信息有限,我只能写这封信了

相关问题 更多 >