如何在 Keras 中组合 2 个经过训练的模型

Alo*_*orz 5 merge keras

我想在 2 个训练模型的输出之前连接最后一层,并有一个使用合并层进行预测的新模型。以下是我的代码的相关部分:

model1 = load_model("model1_location.model")
model2 = load_model("model1_location.model")
merged_model = Sequential(name='merged_model')
merged_model.add(merge([model1.layers[-1],model2.layers[-1]]))
merged_model.add(Dense(3, activation='softmax'))
Run Code Online (Sandbox Code Playgroud)

上面的代码给出了以下错误:

ValueError: Layer merge_2 was called with an input that isn't a symbolic tensor. Received type: <class 'keras.layers.core.Dense'>.
Run Code Online (Sandbox Code Playgroud)

组合这些模型的正确方法是什么,或者如何从图层中获取符号张量?

lou*_*ton 2

你需要output像这样获取属性:

merged_model.add(merge([model1.layers[-1].output, model2.layers[-1].output]))