代码之家  ›  专栏  ›  技术社区  ›  Tom

如何重塑keras中的张量?

  •  4
  • Tom  · 技术社区  · 7 年前

    我想重塑一个张量,它的形状是(?,12,12,5512)变成(?,12,122560)张量的形状。 有人能帮我吗? 我的代码如下。

    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\u 1之后做(?,12,12,2560)张量的形状。 谢谢

    2 回复  |  直到 7 年前
        1
  •  8
  •   hikaru    7 年前

    keras.layers.core.Reshape() 函数很有用(另请参见 document )。

    reshaped = Reshape((12, 12, 2560))(drop5_1)
    
        2
  •  0
  •   HBKfaouzi    3 年前

    你也可以试试这个

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