DeConvolutionConv2D_transpose层的输入形状的说明

问题描述

我必须复制给定信息为(层,输入形状,过滤器,核,步幅)的模型摘要

 LAYER     INPUT SHAPE        FILTER  KERNEL      STRIDE
 Fc1       [batch,128]          -      -           -
 Reshape   [batch,6x4x256]      -      -           -
 DeConv1   [batch,6,4,256]   128  (5,5,256)  (2,2) 
 DeConv2   [batch,11,8,128]  128  (3,3,128)  (2,1)
 DeConv3   [batch,22,128]   64  (3,128)  (1,1) 
 ....

我设法提出了以下建议:

model.add(Dense(6*4*256,activation="relu",input_dim=128))
           
model.add(Reshape((6,256)))

model.add(Conv2DTranspose(128,kernel_size=(5,5),strides=(2,2),padding="same"))
model.add(Batchnormalization()) 
model.add(Activation("relu"))
        
model.add(Conv2DTranspose(128,kernel_size=(3,3),1),padding="same")) 
model.add(Batchnormalization()) 
model.add(Activation("relu"))
        
model.add(Conv2DTranspose(64,strides=(1,padding="same")) 
model.add(Batchnormalization()) 
model.add(Activation("relu"))
....

但这会产生:

Layer (type)                 Output Shape              Param #   
=================================================================
dense_58 (Dense)             (None,6144)              792576    
_________________________________________________________________
reshape_44 (Reshape)         (None,256)         0         
_________________________________________________________________
conv2d_transpose_155 (Conv2D (None,12,128)        819328    
_________________________________________________________________
batch_normalization_197 (Bat (None,128)        512       
_________________________________________________________________
activation_190 (Activation)  (None,128)        0         
_________________________________________________________________
conv2d_transpose_156 (Conv2D (None,24,128)        147584    
_________________________________________________________________
batch_normalization_198 (Bat (None,128)        512       
_________________________________________________________________
activation_191 (Activation)  (None,128)        0         
_________________________________________________________________
...

因此,我得到的不是(12,128),而是第一个DeConv层的(11,128)。我尝试对herehere给出的输出形状说明进行统计,但仍然无法正确完成。我要去哪里错了,什么会给我(11,128)值?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)