3

在 keras 1 中,我曾经写过

def merge_mode(branches):
   return #merge function

Merge([...], output_shape=(num_classes,), mode=merge_mode)

但现在在 keras 2.0 Merge 已被弃用,您只能添加预定义的函数,如 add、average、concatenate ......

我的问题是如何在 keras 2.0 中添加自定义合并功能

4

1 回答 1

1

如果您正在寻找一个没有可训练权重的层,从您的示例来看,我想就是这种情况。然后您可以使用 Lambda 层。

实际上,我自己编写了一个使用平方距离度量来创建连体 CNN。请参见下面的示例:

from keras.layers import Lambda

# I create the layer structure first.
# This can then be added to a sequential model or used in a functional model.
merge_layer = Lambda(lambda x: K.square(x[0]-[x]), output_shape=lambda x: x[0])

# Inside a functional model you would use it like this:
block_output = merge_layer([left,right])
于 2018-10-01T11:21:51.160 回答