|
|
@ -120,6 +120,13 @@ default_cfgs = {
|
|
|
|
interpolation='bicubic'),
|
|
|
|
interpolation='bicubic'),
|
|
|
|
'resnetv2_152d': _cfg(
|
|
|
|
'resnetv2_152d': _cfg(
|
|
|
|
interpolation='bicubic', first_conv='stem.conv1'),
|
|
|
|
interpolation='bicubic', first_conv='stem.conv1'),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
'resnetv2_50d_gn': _cfg(
|
|
|
|
|
|
|
|
interpolation='bicubic', first_conv='stem.conv1'),
|
|
|
|
|
|
|
|
'resnetv2_50d_evob': _cfg(
|
|
|
|
|
|
|
|
interpolation='bicubic', first_conv='stem.conv1'),
|
|
|
|
|
|
|
|
'resnetv2_50d_evos': _cfg(
|
|
|
|
|
|
|
|
interpolation='bicubic', first_conv='stem.conv1'),
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -639,19 +646,27 @@ def resnetv2_152d(pretrained=False, **kwargs):
|
|
|
|
stem_type='deep', avg_down=True, **kwargs)
|
|
|
|
stem_type='deep', avg_down=True, **kwargs)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# @register_model
|
|
|
|
# Experimental configs (may change / be removed)
|
|
|
|
# def resnetv2_50ebd(pretrained=False, **kwargs):
|
|
|
|
|
|
|
|
# # FIXME for testing w/ TPU + PyTorch XLA
|
|
|
|
@register_model
|
|
|
|
# return _create_resnetv2(
|
|
|
|
def resnetv2_50d_gn(pretrained=False, **kwargs):
|
|
|
|
# 'resnetv2_50d', pretrained=pretrained,
|
|
|
|
return _create_resnetv2(
|
|
|
|
# layers=[3, 4, 6, 3], conv_layer=create_conv2d, norm_layer=EvoNormBatch2d,
|
|
|
|
'resnetv2_50d_gn', pretrained=pretrained,
|
|
|
|
# stem_type='deep', avg_down=True, **kwargs)
|
|
|
|
layers=[3, 4, 6, 3], conv_layer=create_conv2d, norm_layer=GroupNormAct,
|
|
|
|
#
|
|
|
|
stem_type='deep', avg_down=True, **kwargs)
|
|
|
|
#
|
|
|
|
|
|
|
|
# @register_model
|
|
|
|
|
|
|
|
# def resnetv2_50esd(pretrained=False, **kwargs):
|
|
|
|
@register_model
|
|
|
|
# # FIXME for testing w/ TPU + PyTorch XLA
|
|
|
|
def resnetv2_50d_evob(pretrained=False, **kwargs):
|
|
|
|
# return _create_resnetv2(
|
|
|
|
return _create_resnetv2(
|
|
|
|
# 'resnetv2_50d', pretrained=pretrained,
|
|
|
|
'resnetv2_50d_evob', pretrained=pretrained,
|
|
|
|
# layers=[3, 4, 6, 3], conv_layer=create_conv2d, norm_layer=EvoNormSample2d,
|
|
|
|
layers=[3, 4, 6, 3], conv_layer=create_conv2d, norm_layer=EvoNormBatch2d,
|
|
|
|
# stem_type='deep', avg_down=True, **kwargs)
|
|
|
|
stem_type='deep', avg_down=True, **kwargs)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@register_model
|
|
|
|
|
|
|
|
def resnetv2_50d_evos(pretrained=False, **kwargs):
|
|
|
|
|
|
|
|
return _create_resnetv2(
|
|
|
|
|
|
|
|
'resnetv2_50d_evos', pretrained=pretrained,
|
|
|
|
|
|
|
|
layers=[3, 4, 6, 3], conv_layer=create_conv2d, norm_layer=EvoNormSample2d,
|
|
|
|
|
|
|
|
stem_type='deep', avg_down=True, **kwargs)
|
|
|
|