machine-learning - ValueError : The name "Sequential" is used 4 times in the model. 所有图层名称都应该是唯一的吗?

标签 machine-learning keras ensemble-learning federated-learning

让我们考虑一下,我有四个模型,分别是 M1(客户端 1)、M2(客户端 2)、M3(客户端 3)和 M4(客户端 4)。每个模型都有相似的结构。

Model Structure

对每个客户端模型进行培训后。我将这些模型聚合在一起并创建一个新模型,我们可以说“EnsModel”。之后,我再次使用这个集成模型为每个客户端重新训练新数据。然而,当我尝试再次集成更新的模型时,我遇到了这个问题: “ValueError:名称“Sequential”在模型中使用了 4 次。所有层名称都应该是唯一的吗?”

有人可以帮我吗?我也有一个问题。有什么方法可以对每个客户端的集成模型结构进行建模修改吗?

谢谢。

最佳答案

尝试命名每个模型,然后将它们合并,如下所示。

    M1.name = 'Client1'
    M2.name = 'Client2'
    M3.name = 'Client3'
    M4.name = 'Client4'

    commonInput = Input((x, x, y))

    outM1 = M1(commonInput)
    outM2 = M2(commonInput)
    // outM3
    // outM4 also like the first two

    mergedM1M2 = keras.layers.Add()([outM1,outM2])

    //mergedM3M4 

    FinalMerged = keras.layers.Add()([mergedM1M2,mergedM3M4])

    FinalModel = Model(commonInput, Finalmerged)

关于machine-learning - ValueError : The name "Sequential" is used 4 times in the model. 所有图层名称都应该是唯一的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59481435/

相关文章:

python - 如何将 Python 中的 Azure 认知服务中经过训练的分类器与 Keras 结合使用

scikit-learn - 其他参数中的参数 - 在集成学习中使用带有随机森林的引导聚合

r - h2o.gbm 中的树木数量

c++ - 'Attempting to upgrade input file specified using deprecated transformation parameters' 是什么意思?

python - 输入层在分层注意网络中代表什么

machine-learning - TensorFlow 二元分类任务精度较差,但 SciKit-Learn GBM 效果良好

scikit-learn - GridSearchCV 最佳模型 CV 历史

tensorflow - 使用 albumentations 增强 keras 中的数据

machine-learning - 随机森林,文本分类

检索插入符号中保留折叠的预测