Skip to content

Commit b669f4a

Browse files
committed
Add ConvNeXt 22k->1k fine-tuned and 384 22k-1k fine-tuned weights after testing
1 parent 6dcbaf2 commit b669f4a

File tree

2 files changed

+62
-3
lines changed

2 files changed

+62
-3
lines changed

timm/models/convnext.py

Lines changed: 61 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,23 @@ def _cfg(url='', **kwargs):
4545

4646
convnext_tiny_hnf=_cfg(url=''),
4747

48+
convnext_base_in22ft1k=_cfg(
49+
url='https://dl.fbaipublicfiles.com/convnext/convnext_base_22k_1k_224.pth'),
50+
convnext_large_in22ft1k=_cfg(
51+
url='https://dl.fbaipublicfiles.com/convnext/convnext_large_22k_1k_224.pth'),
52+
convnext_xlarge_in22ft1k=_cfg(
53+
url='https://dl.fbaipublicfiles.com/convnext/convnext_xlarge_22k_1k_224_ema.pth'),
54+
55+
convnext_base_384_in22ft1k=_cfg(
56+
url='https://dl.fbaipublicfiles.com/convnext/convnext_base_22k_1k_384.pth',
57+
input_size=(3, 384, 384), pool_size=(12, 12), crop_pct=1.0),
58+
convnext_large_384_in22ft1k=_cfg(
59+
url='https://dl.fbaipublicfiles.com/convnext/convnext_large_22k_1k_384.pth',
60+
input_size=(3, 384, 384), pool_size=(12, 12), crop_pct=1.0),
61+
convnext_xlarge_384_in22ft1k=_cfg(
62+
url='https://dl.fbaipublicfiles.com/convnext/convnext_xlarge_22k_1k_384_ema.pth',
63+
input_size=(3, 384, 384), pool_size=(12, 12), crop_pct=1.0),
64+
4865
convnext_base_in22k=_cfg(
4966
url="https://dl.fbaipublicfiles.com/convnext/convnext_base_22k_224.pth", num_classes=21841),
5067
convnext_large_in22k=_cfg(
@@ -339,11 +356,53 @@ def convnext_base(pretrained=False, **kwargs):
339356

340357
@register_model
341358
def convnext_large(pretrained=False, **kwargs):
342-
model_args = dict(depths=[3, 3, 27, 3], dims=[192, 384, 768, 1536], **kwargs)
359+
model_args = dict(depths=[3, 3, 27, 3], dims=[192, 384, 768, 1536], conv_mlp=False, **kwargs)
343360
model = _create_convnext('convnext_large', pretrained=pretrained, **model_args)
344361
return model
345362

346363

364+
@register_model
365+
def convnext_base_in22ft1k(pretrained=False, **kwargs):
366+
model_args = dict(depths=[3, 3, 27, 3], dims=[128, 256, 512, 1024], **kwargs)
367+
model = _create_convnext('convnext_base_in22ft1k', pretrained=pretrained, **model_args)
368+
return model
369+
370+
371+
@register_model
372+
def convnext_large_in22ft1k(pretrained=False, **kwargs):
373+
model_args = dict(depths=[3, 3, 27, 3], dims=[192, 384, 768, 1536], conv_mlp=False, **kwargs)
374+
model = _create_convnext('convnext_large_in22ft1k', pretrained=pretrained, **model_args)
375+
return model
376+
377+
378+
@register_model
379+
def convnext_xlarge_in22ft1k(pretrained=False, **kwargs):
380+
model_args = dict(depths=[3, 3, 27, 3], dims=[256, 512, 1024, 2048], conv_mlp=False, **kwargs)
381+
model = _create_convnext('convnext_xlarge_in22ft1k', pretrained=pretrained, **model_args)
382+
return model
383+
384+
385+
@register_model
386+
def convnext_base_384_in22ft1k(pretrained=False, **kwargs):
387+
model_args = dict(depths=[3, 3, 27, 3], dims=[128, 256, 512, 1024], **kwargs)
388+
model = _create_convnext('convnext_base_384_in22ft1k', pretrained=pretrained, **model_args)
389+
return model
390+
391+
392+
@register_model
393+
def convnext_large_384_in22ft1k(pretrained=False, **kwargs):
394+
model_args = dict(depths=[3, 3, 27, 3], dims=[192, 384, 768, 1536], conv_mlp=False, **kwargs)
395+
model = _create_convnext('convnext_large_384_in22ft1k', pretrained=pretrained, **model_args)
396+
return model
397+
398+
399+
@register_model
400+
def convnext_xlarge_384_in22ft1k(pretrained=False, **kwargs):
401+
model_args = dict(depths=[3, 3, 27, 3], dims=[256, 512, 1024, 2048], conv_mlp=False, **kwargs)
402+
model = _create_convnext('convnext_xlarge_384_in22ft1k', pretrained=pretrained, **model_args)
403+
return model
404+
405+
347406
@register_model
348407
def convnext_base_in22k(pretrained=False, **kwargs):
349408
model_args = dict(depths=[3, 3, 27, 3], dims=[128, 256, 512, 1024], **kwargs)
@@ -353,7 +412,7 @@ def convnext_base_in22k(pretrained=False, **kwargs):
353412

354413
@register_model
355414
def convnext_large_in22k(pretrained=False, **kwargs):
356-
model_args = dict(depths=[3, 3, 27, 3], dims=[192, 384, 768, 1536], **kwargs)
415+
model_args = dict(depths=[3, 3, 27, 3], dims=[192, 384, 768, 1536], conv_mlp=False, **kwargs)
357416
model = _create_convnext('convnext_large_in22k', pretrained=pretrained, **model_args)
358417
return model
359418

validate.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -291,7 +291,7 @@ def main():
291291
if args.model == 'all':
292292
# validate all models in a list of names with pretrained checkpoints
293293
args.pretrained = True
294-
model_names = list_models(pretrained=True, exclude_filters=['*_in21k', '*_in22k'])
294+
model_names = list_models(pretrained=True, exclude_filters=['*_in21k', '*_in22k', '*_dino'])
295295
model_cfgs = [(n, '') for n in model_names]
296296
elif not is_model(args.model):
297297
# model name doesn't exist, try as wildcard filter

0 commit comments

Comments
 (0)