在没有输入形状的情况下在keras图层之间共享权重

时间:2018-09-19 03:27:12

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

Can I share weights between keras layers but have other parameters differ?

以上问题的答案就两个conv层之间的权重共享提供了深刻的见解。在conv2conv2'之间共享权重来实现它时,由于conv2并不直接连接到数据,因此我难以确定input (shape: 32,32,3)的输入形状。

例如,在具有以下结构的模型中:

conv1-> [0][0](连接到输入(None,32,32,32),根据模型摘要输出形状conv2)-> conv1 [29][0](连接到{{ 1}},输出形状为(None,30,30,32)

conv1 = layers.Conv2D(32, 3, activation='relu', padding='same', input_shape=(32,32,3))
conv2 = layers.Conv2D(32, 3, activation='relu',name = 'conv2')

我正在尝试创建conv1'并与conv1共享权重的conv2'。我知道conv2的输入形状为conv1,但是conv2的输入形状是什么? (我尝试过(32,32,3),因为(32,32,32)conv2的权重不同而无法使用)

是否可以在不指定输入形状的情况下进行操作?还...为什么将conv2'连接到conv2

0 个答案:

没有答案