Add latest mobilenetv4 and baseline updates for mobilenetv1 and efficientnet_b0 weights

This commit is contained in:
Ross Wightman 2024-07-25 14:20:54 -07:00
parent 7b6a406474
commit 9aa2930760
2 changed files with 49 additions and 25 deletions

View File

@ -1238,9 +1238,17 @@ default_cfgs = generate_default_cfgs({
url='https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/mnasnet_small_lamb-aff75073.pth', url='https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/mnasnet_small_lamb-aff75073.pth',
hf_hub_id='timm/'), hf_hub_id='timm/'),
'mobilenet_100.untrained': _cfg(), 'mobilenetv1_100.ra4_e3600_r224_in1k': _cfg(
'mobilenet_100h.untrained': _cfg(), hf_hub_id='timm/',
'mobilenet_125.untrained': _cfg(), mean=IMAGENET_INCEPTION_MEAN, std=IMAGENET_INCEPTION_STD,
test_input_size=(3, 256, 256), test_crop_pct=0.95,
),
'mobilenetv1_100h.ra4_e3600_r224_in1k': _cfg(
hf_hub_id='timm/',
mean=IMAGENET_INCEPTION_MEAN, std=IMAGENET_INCEPTION_STD,
test_input_size=(3, 256, 256), test_crop_pct=0.95,
),
'mobilenetv1_125.untrained': _cfg(),
'mobilenetv2_035.untrained': _cfg(), 'mobilenetv2_035.untrained': _cfg(),
'mobilenetv2_050.lamb_in1k': _cfg( 'mobilenetv2_050.lamb_in1k': _cfg(
@ -1275,22 +1283,27 @@ default_cfgs = generate_default_cfgs({
'efficientnet_b0.ra_in1k': _cfg( 'efficientnet_b0.ra_in1k': _cfg(
url='https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/efficientnet_b0_ra-3dd342df.pth', url='https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/efficientnet_b0_ra-3dd342df.pth',
hf_hub_id='timm/'), hf_hub_id='timm/'),
'efficientnet_b0.ra4_e3600_r224_in1k': _cfg(
hf_hub_id='timm/',
mean=IMAGENET_INCEPTION_MEAN, std=IMAGENET_INCEPTION_STD,
crop_pct=0.9, test_input_size=(3, 256, 256), test_crop_pct=1.0
),
'efficientnet_b1.ft_in1k': _cfg( 'efficientnet_b1.ft_in1k': _cfg(
url='https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/efficientnet_b1-533bc792.pth', url='https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/efficientnet_b1-533bc792.pth',
hf_hub_id='timm/', hf_hub_id='timm/',
test_input_size=(3, 256, 256), crop_pct=1.0), test_input_size=(3, 256, 256), test_crop_pct=1.0),
'efficientnet_b2.ra_in1k': _cfg( 'efficientnet_b2.ra_in1k': _cfg(
url='https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/efficientnet_b2_ra-bcdf34b7.pth', url='https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/efficientnet_b2_ra-bcdf34b7.pth',
hf_hub_id='timm/', hf_hub_id='timm/',
input_size=(3, 256, 256), pool_size=(8, 8), test_input_size=(3, 288, 288), crop_pct=1.0), input_size=(3, 256, 256), pool_size=(8, 8), test_input_size=(3, 288, 288), test_crop_pct=1.0),
'efficientnet_b3.ra2_in1k': _cfg( 'efficientnet_b3.ra2_in1k': _cfg(
url='https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/efficientnet_b3_ra2-cf984f9c.pth', url='https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/efficientnet_b3_ra2-cf984f9c.pth',
hf_hub_id='timm/', hf_hub_id='timm/',
input_size=(3, 288, 288), pool_size=(9, 9), test_input_size=(3, 320, 320), crop_pct=1.0), input_size=(3, 288, 288), pool_size=(9, 9), test_input_size=(3, 320, 320), test_crop_pct=1.0),
'efficientnet_b4.ra2_in1k': _cfg( 'efficientnet_b4.ra2_in1k': _cfg(
url='https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/efficientnet_b4_ra2_320-7eb33cd5.pth', url='https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/efficientnet_b4_ra2_320-7eb33cd5.pth',
hf_hub_id='timm/', hf_hub_id='timm/',
input_size=(3, 320, 320), pool_size=(10, 10), test_input_size=(3, 384, 384), crop_pct=1.0), input_size=(3, 320, 320), pool_size=(10, 10), test_input_size=(3, 384, 384), test_crop_pct=1.0),
'efficientnet_b5.sw_in12k_ft_in1k': _cfg( 'efficientnet_b5.sw_in12k_ft_in1k': _cfg(
hf_hub_id='timm/', hf_hub_id='timm/',
input_size=(3, 448, 448), pool_size=(14, 14), crop_pct=1.0, crop_mode='squash'), input_size=(3, 448, 448), pool_size=(14, 14), crop_pct=1.0, crop_mode='squash'),
@ -1826,23 +1839,23 @@ def mnasnet_small(pretrained=False, **kwargs) -> EfficientNet:
@register_model @register_model
def mobilenet_100(pretrained=False, **kwargs) -> EfficientNet: def mobilenetv1_100(pretrained=False, **kwargs) -> EfficientNet:
""" MobileNet V1 """ """ MobileNet V1 """
model = _gen_mobilenet_v1('mobilenet_100', 1.0, pretrained=pretrained, **kwargs) model = _gen_mobilenet_v1('mobilenetv1_100', 1.0, pretrained=pretrained, **kwargs)
return model return model
@register_model @register_model
def mobilenet_100h(pretrained=False, **kwargs) -> EfficientNet: def mobilenetv1_100h(pretrained=False, **kwargs) -> EfficientNet:
""" MobileNet V1 """ """ MobileNet V1 """
model = _gen_mobilenet_v1('mobilenet_100h', 1.0, head_conv=True, pretrained=pretrained, **kwargs) model = _gen_mobilenet_v1('mobilenetv1_100h', 1.0, head_conv=True, pretrained=pretrained, **kwargs)
return model return model
@register_model @register_model
def mobilenet_125(pretrained=False, **kwargs) -> EfficientNet: def mobilenetv1_125(pretrained=False, **kwargs) -> EfficientNet:
""" MobileNet V1 """ """ MobileNet V1 """
model = _gen_mobilenet_v1('mobilenet_125', 1.25, pretrained=pretrained, **kwargs) model = _gen_mobilenet_v1('mobilenetv1_125', 1.25, pretrained=pretrained, **kwargs)
return model return model

View File

@ -1018,6 +1018,10 @@ default_cfgs = generate_default_cfgs({
input_size=(3, 256, 256), pool_size=(8, 8), input_size=(3, 256, 256), pool_size=(8, 8),
crop_pct=0.95, test_input_size=(3, 320, 320), test_crop_pct=1.0, interpolation='bicubic'), crop_pct=0.95, test_input_size=(3, 320, 320), test_crop_pct=1.0, interpolation='bicubic'),
'mobilenetv4_hybrid_medium.e200_r256_in12k_ft_in1k': _cfg(
hf_hub_id='timm/',
input_size=(3, 256, 256), pool_size=(12, 12),
crop_pct=0.95, test_input_size=(3, 320, 320), test_crop_pct=1.0, interpolation='bicubic'),
'mobilenetv4_hybrid_medium.ix_e550_r256_in1k': _cfg( 'mobilenetv4_hybrid_medium.ix_e550_r256_in1k': _cfg(
hf_hub_id='timm/', hf_hub_id='timm/',
input_size=(3, 256, 256), pool_size=(8, 8), input_size=(3, 256, 256), pool_size=(8, 8),
@ -1029,6 +1033,11 @@ default_cfgs = generate_default_cfgs({
'mobilenetv4_hybrid_medium.e500_r224_in1k': _cfg( 'mobilenetv4_hybrid_medium.e500_r224_in1k': _cfg(
hf_hub_id='timm/', hf_hub_id='timm/',
crop_pct=0.95, test_input_size=(3, 256, 256), test_crop_pct=1.0, interpolation='bicubic'), crop_pct=0.95, test_input_size=(3, 256, 256), test_crop_pct=1.0, interpolation='bicubic'),
'mobilenetv4_hybrid_medium.e200_r256_in12k': _cfg(
hf_hub_id='timm/',
num_classes=11821,
input_size=(3, 256, 256), pool_size=(12, 12),
crop_pct=0.95, test_input_size=(3, 320, 320), test_crop_pct=1.0, interpolation='bicubic'),
'mobilenetv4_hybrid_large.ix_e600_r384_in1k': _cfg( 'mobilenetv4_hybrid_large.ix_e600_r384_in1k': _cfg(
hf_hub_id='timm/', hf_hub_id='timm/',
input_size=(3, 384, 384), pool_size=(12, 12), input_size=(3, 384, 384), pool_size=(12, 12),
@ -1045,12 +1054,21 @@ default_cfgs = generate_default_cfgs({
'mobilenetv4_conv_blur_medium.e500_r224_in1k': _cfg( 'mobilenetv4_conv_blur_medium.e500_r224_in1k': _cfg(
hf_hub_id='timm/', hf_hub_id='timm/',
crop_pct=0.95, test_input_size=(3, 256, 256), test_crop_pct=1.0, interpolation='bicubic'), crop_pct=0.95, test_input_size=(3, 256, 256), test_crop_pct=1.0, interpolation='bicubic'),
'mobilenetv4_conv_aa_large.e600_r384_in1k': _cfg( 'mobilenetv4_conv_aa_large.e230_r448_in12k_ft_in1k': _cfg(
# hf_hub_id='timm/', hf_hub_id='timm/',
input_size=(3, 448, 448), pool_size=(14, 14),
crop_pct=0.95, test_input_size=(3, 544, 544), test_crop_pct=1.0, interpolation='bicubic'),
'mobilenetv4_conv_aa_large.e230_r384_in12k_ft_in1k': _cfg(
hf_hub_id='timm/',
input_size=(3, 384, 384), pool_size=(12, 12), input_size=(3, 384, 384), pool_size=(12, 12),
crop_pct=0.95, test_input_size=(3, 448, 448), test_crop_pct=1.0, interpolation='bicubic'), crop_pct=0.95, test_input_size=(3, 480, 480), test_crop_pct=1.0, interpolation='bicubic'),
'mobilenetv4_conv_blur_large.e600_r384_in1k': _cfg( 'mobilenetv4_conv_aa_large.e600_r384_in1k': _cfg(
# hf_hub_id='timm/', hf_hub_id='timm/',
input_size=(3, 384, 384), pool_size=(12, 12),
crop_pct=0.95, test_input_size=(3, 480, 480), test_crop_pct=1.0, interpolation='bicubic'),
'mobilenetv4_conv_aa_large.e230_r384_in12k': _cfg(
hf_hub_id='timm/',
num_classes=11821,
input_size=(3, 384, 384), pool_size=(12, 12), input_size=(3, 384, 384), pool_size=(12, 12),
crop_pct=0.95, test_input_size=(3, 448, 448), test_crop_pct=1.0, interpolation='bicubic'), crop_pct=0.95, test_input_size=(3, 448, 448), test_crop_pct=1.0, interpolation='bicubic'),
'mobilenetv4_hybrid_medium_075.untrained': _cfg( 'mobilenetv4_hybrid_medium_075.untrained': _cfg(
@ -1271,13 +1289,6 @@ def mobilenetv4_conv_aa_large(pretrained: bool = False, **kwargs) -> MobileNetV3
return model return model
@register_model
def mobilenetv4_conv_blur_large(pretrained: bool = False, **kwargs) -> MobileNetV3:
""" MobileNet V4 Conv w/ Blur AA """
model = _gen_mobilenet_v4('mobilenetv4_conv_blur_large', 1.0, pretrained=pretrained, aa_layer='blurpc', **kwargs)
return model
@register_model @register_model
def mobilenetv4_hybrid_medium_075(pretrained: bool = False, **kwargs) -> MobileNetV3: def mobilenetv4_hybrid_medium_075(pretrained: bool = False, **kwargs) -> MobileNetV3:
""" MobileNet V4 Hybrid """ """ MobileNet V4 Hybrid """