如何重塑keras中的张量?

How to reshape the tensor in keras?

我想重塑一个张量,它的形状是 (?,12,12,5,512) 成 (?,12,12,2560) 形状的张量。 有没有人可以帮助我? 我的代码如下。

conv5_1 = Conv3D(512, (3, 3, 3), activation='relu', padding='same')(drop4_1) # conv5_1: Tensor("conv3d_10/Relu:0", shape=(", 12, 12, 5, 512), dtype=float32)
conv5_1 = Conv3D(512, (3, 3, 3), activation='relu', padding='same')(conv5_1)
drop5_1 = Dropout(0.2)(conv5_1) # drop5_1: Tensor("dropout_8/cond/Merge:0", shape=(", 12, 12, 5, 512), dtype=float32)

我想在 drop5_1 之后制作 (?, 12, 12, 2560) 张量形状。 谢谢

keras.layers.core.Reshape() 函数很有帮助(另请参阅 document)。

reshaped = Reshape((12, 12, 2560))(drop5_1)

你也可以试试这个

reshaped = tf.reshape(drop5_1 , [-1,12,12,2560])