【问题标题】:Keras: how to make Keras train layers connected to merge layerKeras:如何使 Keras 训练层连接到合并层
【发布时间】:2016-11-21 13:01:05
【问题描述】:

我对 Keras 中合并层的机制感到困惑。

例如,branch_left 是一个包含两个dense() 层的Sequential()model,而branch_right 是另一个只有一个dense()Sequential() 模型。然后有一个merge() 层以concatenate 方式连接它们,我将merge 层放入Sequential() 模型merged_model。由于我想从这两个branch 模型中获取保存在层中的名称或权重,我尝试调用merged_model.layers 并发现第一层是merge 层。

考虑到len(erge.get_weights())=0,有没有办法让branch_leftbranch_right 中存在的层?如果可以的话,我可以修改属于这些层的属性。

【问题讨论】:

  • 您可以使用它们所属的模型分别访问权重:branch_left.layers[1].get_weights()。 Merge 层本身没有参数!合并中没有可训练的内容。

标签: keras


【解决方案1】:

我不确定将合并层放入顺序...
(顺序模型不支持分支)

最好的办法是创建一个函数式 API 模型:

from keras.models import Model

merged_model = Model([branch_left.input,branch_right.input],concatLayer.output)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-26
    • 2017-10-07
    • 1970-01-01
    • 2019-02-20
    • 1970-01-01
    相关资源
    最近更新 更多