训练后如何修改Keras图层

时间:2020-01-30 10:08:28

标签: python-3.x tensorflow keras deep-learning resnet

我已经加载了经过预训练的ResNet(请参见下面的代码),并希望复制作者写过的论文:

然后,我们将conv5 bank的第一卷积层的步幅从2 px减小到1 px,以防止下采样。接下来,我们在conv5中的所有3x3卷积中添加孔,以保留其接收场。这样可以将整个CNN的步幅减小到16像素。 DeeperCut: A Deeper, Stronger, and Faster Multi-Person Pose Estimation Model

使用预训练的ResNet是否有可能,如果在keras中如何完成?

我当前的代码:

base_model = ResNet50(include_top=False, weights='imagenet')

x = base_model.output
x = Conv2DTranspose(1, kernel_size=[3, 3], strides=2, kernel_regularizer=l2(0.0001))(x)
pred = Conv2DTranspose(1, kernel_size=[3, 3], strides=2, kernel_regularizer=l2(0.0001))(x)

model = Model(inputs=base_model.input, outputs=pred)

for layer in base_model.layers:
    layer.trainable = False

model.compile(optimizer='adam', loss='categorical_crossentropy')

如何在这里修改conv5银行?还是我必须为此训练一个全新的网络?

0 个答案:

没有答案