已解决
我想尝试使用tf.keras.models.Sequential
,但我发现Conv图层采用形状(采样,暗淡,暗淡,通道)的数据,但是以(采样,暗淡,暗淡,过滤器)的形式输出。
如何在输出上运行第二个Conv层,最好使用3D(Dim,Dim,Filters)滤镜?
Conv3D要求更多尺寸(可能是额外的Channel尺寸)。我意识到我可以重塑,但考虑到原始tensorflow语法在2D层可以具有3D滤镜的情况下不太钝,这感觉像我做错了。
我在做什么错?相关代码:
model = tf.keras.models.Sequential([
tf.keras.layers.InputLayer((28,28), 60000), # Mnist goes here
tf.keras.layers.Reshape((28,28,1)), # black magic
tf.keras.layers.Conv2D(12, (9,9)), # outputs (60000, 20,20,12)
# So a reshape goes here?
# tf.keras.layers.Conv2D(40, (5,5,12)), # too many dimensions on filter
# tf.keras.layers.Conv3D(40, (5,5,10)) # wants 5 dimensions
tf.keras.layers.Conv2D(40, (5,5)) # should have done this,
# didn't realize it would iterate over all channels
])