我现在正在其上实现Res50主干弧面度量标准,并且在保存模型文件时遇到了麻烦。
显示的错误是
在 init 中带有参数的层必须覆盖get_config。
完整的错误消息如下。 enter image description here
这可能需要覆盖模型的配置,而我对此不太确定。
我从存储库https://github.com/4uiiurz1/keras-arcface中引用了vgg_arcface函数 使Res50_arcface函数及其下面的结果。
# Resnet Backbone
def ResNet50_arcface(args):
y = Input(shape=(200,))
x = inputs = Input([224, 224, 3], name='input_image')
x = ResNet50(input_shape=x.shape[1:], include_top=False, weights='imagenet')(x)
# BN + Dropout + FC + BN ( as paper mentioned )
x = BatchNormalization()(x)
x = Dropout(rate=0.5)(x)
x = Flatten()(x)
x = Dense(args.num_features, kernel_regularizer=regularizers.l2(5e-4))(x)
x = BatchNormalization()(x)
output = ArcFace(200, regularizer=regularizers.l2(weight_decay))([x, y])
return Model([inputs, y], output)
有人可以给我建议吗?
谢谢