出现错误“未知的TensorShape上未定义as_list()”。在尝试创建整体模型时

时间:2019-06-02 11:30:38

标签: python tensorflow neural-network ensembles

我想基于两个相同的cnn模型创建一个集成,在此我将模型的平均输出作为集成的最终输出。但是我收到错误as_list() is not defined on an unknown TensorShape。任何人都知道如何解决此问题?

错误发生在outputs_1 = layers.Average()([model.outputs[1][0] for model in Models])

编辑:我使用model.outputs[1][0]而不是model.outputs[0],因为在“ model.outputs”中也有倒数第二层的输出。

'''

def get_ensemble(Models, input_shape):

    inputs = keras.Input(shape=input_shape) # Same input_shape as models in Models  

    outputs_1 = layers.Average()([model.outputs[1][0] for model in Models])

    model = keras.Model(inputs=inputs, outputs=outputs_1, name='ensemble')

    return model

'''

0 个答案:

没有答案