У меня есть 8 моделей CNN, модель1, модель2, модель3, модель4, модель5, модель6, модель7, модель8, каждая из которых содержит conv2d, активацию, максимальный пул, выпадающие слои.Я хочу объединить выходные данные, скомпилировать и подогнать мою модель, как показано ниже:
Я путаю в объединении, объединении ифитинг.мой код Python ниже:
out1 = Flatten()(model1)
out2 = Flatten()(model2)
out3 = Flatten()(model3)
out4 = Flatten()(model4)
out5 = Flatten()(model5)
out6 = Flatten()(model6)
out7 = Flatten()(model7)
out8 = Flatten()(model8)
merge = Concatenate([out1, out2, out3, out4, out5, out6, out7, out8])
final_out = Dense(classes, activation='softmax')(merge)
final_model = Model([out1, out2, out3, out4, out5, out6, out7, out8], final_out)
final_model.compile(loss="categorical_crossentr", optimizer= opt, metrics=["accuracy"])
final_model.fit_generator(aug.flow(trainX, trainY, batch_size=BS),validation_data=(testX, testY),
steps_per_epoch=len(trainX) // BS, epochs=EPOCHS, verbose=1)
Когда я запускаю программу, я получаю следующую ошибку:
Layer dense_1 was called with an input that isn't a symbolic tensor
В чем проблема?как я могу объединить, скомпилировать, обучить?Может кто-нибудь, пожалуйста, помогите мне, любая информация будет полезна.