在keras模型中获取中间层的输出有几个很好的答案。但是我想在keras模型中提取一层,并将该层的输入用作新模型的输入,将输出用作新模型的输出。我已经尝试过:
extractor = Model(model.get_layer('dw_conv5').input, model.get_layer('dw_conv5').output)
但是有一个错误:
Model
的输入层必须是InputLayer
对象。接收到的输入:Tensor(“ leaky_re_lu_4 / LeakyRelu / Maximum:0”,shape =(?, 3,3,256),dtype = float32)。输入0(基于0)源自图层类型LeakyReLU
。
答案 0 :(得分:1)
inputs = Input(a_compatible_shape)
outputs = model.get_layer('dw_conv5')(inputs)
model = Model(inputs,outputs)