我的网络真的有两条路径吗?

时间:2017-07-12 16:50:27

标签: machine-learning keras conv-neural-network

我想比较两个类似性质的图像与Keras模型。所以,我正在考虑建立这样的东西

enter image description here

同时,我虽然在两个分支中分享卷积权重,所以我写了

    input1 = Input((resample_size[0], resample_size[1], image_channels))
    input2 = Input((resample_size[0], resample_size[1], image_channels))

    # VGG-like layer sequence
    conv_layers = [
        Conv2D(32, (3, 3), activation='relu'),
        Conv2D(32, (3, 3), activation='relu'),
        MaxPool2D(pool_size=(2, 2)),
        Dropout(0.25),

        ...

    ]

    prev = input1
    for layer in conv_layers:
        prev = layer(prev)

    out1 = prev

    prev = input2
    for layer in conv_layers:
        prev = layer(prev)

    out2 = prev

    final_layers = [
        Flatten(),

        Dense(512, activation='relu'),
        ...
    ]

    concat = Concatenate()
    prev = concat([out1, out2])
    ...

我在想这会给我两个分支,它们将学习相同的功能,最后会对它们进行比较。

不幸的是,Keras策划的东西吸引了我

enter image description here

即。不明显的是,我的网络有两个分支。

问题是:我的网络真的有两个分支吗?或者结构以某种方式被破坏了?

0 个答案:

没有答案