在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中添加自定义合并功能
答案 0 :(得分: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])