keras展平给出错误的输出形状

时间:2019-03-08 06:38:40

标签: python tensorflow keras neural-network

我在输出形状为(?,35,50)的辍学层之后使用keras Flatten()层。 Flatten()的输出为(?,?),而应为(?,35 * 50)。

代码段是-

y2=MyLayer((35,50))(y1)
y2=BatchNormalization()(y2)
y2=Dropout(0.5)(y2)  

y3=Flatten()(y2)

y4=Dense(32)(y2)

辍学层的输出大小为-

  

tf.Tensor'dropout_22 / cond / Merge:0'shape =(?, 35,50)dtype = float32

平坦层的是

  

tf.Tensor'flatten_7 / Reshape:0'shape =(?,?)dtype = float32

请提示出什么问题。

1 个答案:

答案 0 :(得分:0)

“我的图层”可能是您应该检查的问题。没有它的情况下转载时:

from keras.layers import Input, Flatten
from keras.models import Model

input = Input((35, 50))
output = Flatten()(input)

model = Model(input, output)
model.summary()

您会得到

  

flatten_1(Flatten)(无,1750年)