将图层的一半过滤器设置为不可训练的keras / tensorflow

时间:2018-09-20 06:16:16

标签: python tensorflow neural-network keras conv-neural-network

我正在尝试训练this研究论文建议的模型,其中将卷积层的一半滤波器设置为Gabor滤波器,其余为随机权重,这些权重默认情况下已初始化。通常,如果必须将图层设置为不可训练,则将trainable属性设置为False。但是在这里,我只需要冻结一层过滤器的一半,而我不知道该怎么做。任何帮助将非常感激。我正在将Keras与Tensorflow后端一起使用。

1 个答案:

答案 0 :(得分:3)

如何使两个卷积层获得相同的输入和(几乎)相同的参数?因此,其中一个是在初始化时可训练的随机权重,而另一层是无法使用gabor滤波器训练的。

然后您可以将两层的输出合并在一起,看起来就像是一个卷积网络的输出。

这是一个演示示例(您需要使用Keras functional API):

{{1}}