├── .gitignore ├── LICENSE ├── README.md ├── build └── lib │ └── mmcls │ ├── __init__.py │ ├── apis │ ├── __init__.py │ ├── inference.py │ └── model.py │ ├── datasets │ ├── __init__.py │ ├── base_dataset.py │ ├── builder.py │ ├── categories.py │ ├── cifar.py │ ├── cub.py │ ├── custom.py │ ├── dataset_wrappers.py │ ├── imagenet.py │ ├── inshop.py │ ├── mnist.py │ ├── multi_label.py │ ├── multi_task.py │ ├── samplers │ │ ├── __init__.py │ │ └── repeat_aug.py │ ├── transforms │ │ ├── __init__.py │ │ ├── auto_augment.py │ │ ├── formatting.py │ │ └── processing.py │ ├── utils.py │ └── voc.py │ ├── engine │ ├── __init__.py │ ├── hooks │ │ ├── __init__.py │ │ ├── class_num_check_hook.py │ │ ├── ema_hook.py │ │ ├── margin_head_hooks.py │ │ ├── precise_bn_hook.py │ │ ├── retriever_hooks.py │ │ ├── switch_recipe_hook.py │ │ └── visualization_hook.py │ └── optimizers │ │ ├── __init__.py │ │ ├── adan_t.py │ │ └── lamb.py │ ├── evaluation │ ├── __init__.py │ └── metrics │ │ ├── __init__.py │ │ ├── corruption_error.py │ │ ├── multi_label.py │ │ ├── multi_task.py │ │ ├── retrieval.py │ │ ├── single_label.py │ │ └── voc_multi_label.py │ ├── models │ ├── __init__.py │ ├── backbones │ │ ├── __init__.py │ │ ├── alexnet.py │ │ ├── base_backbone.py │ │ ├── beit.py │ │ ├── conformer.py │ │ ├── convmixer.py │ │ ├── convnext.py │ │ ├── cspnet.py │ │ ├── davit.py │ │ ├── deit.py │ │ ├── deit3.py │ │ ├── densenet.py │ │ ├── edgenext.py │ │ ├── efficientformer.py │ │ ├── efficientnet.py │ │ ├── efficientnet_v2.py │ │ ├── hornet.py │ │ ├── hrnet.py │ │ ├── inception_v3.py │ │ ├── lenet.py │ │ ├── levit.py │ │ ├── mixmim.py │ │ ├── mlp_mixer.py │ │ ├── mobilenet_v1.py │ │ ├── mobilenet_v2.py │ │ ├── mobilenet_v3.py │ │ ├── mobileone.py │ │ ├── mobilevit.py │ │ ├── mvit.py │ │ ├── poolformer.py │ │ ├── regnet.py │ │ ├── replknet.py │ │ ├── repmlp.py │ │ ├── repvgg.py │ │ ├── res2net.py │ │ ├── resnest.py │ │ ├── resnet.py │ │ ├── resnet_cifar.py │ │ ├── resnext.py │ │ ├── revvit.py │ │ ├── seresnet.py │ │ ├── seresnext.py │ │ ├── shufflenet_v1.py │ │ ├── shufflenet_v2.py │ │ ├── swin_transformer.py │ │ ├── swin_transformer_v2.py │ │ ├── t2t_vit.py │ │ ├── timm_backbone.py │ │ ├── tinyvit.py │ │ ├── tnt.py │ │ ├── twins.py │ │ ├── van.py │ │ ├── vgg.py │ │ ├── vig.py │ │ ├── vision_transformer.py │ │ └── xcit.py │ ├── builder.py │ ├── classifiers │ │ ├── __init__.py │ │ ├── base.py │ │ ├── distiller.py │ │ ├── hugging_face.py │ │ ├── image.py │ │ ├── multi_layer_distiller.py │ │ └── timm.py │ ├── dis_losses │ │ ├── __init__.py │ │ ├── attention.py │ │ ├── fd.py │ │ ├── kd.py │ │ ├── mfd.py │ │ ├── mgd.py │ │ ├── old_version_loss.py │ │ ├── tcd.py │ │ ├── tfd.py │ │ └── vitkd.py │ ├── heads │ │ ├── __init__.py │ │ ├── base_head.py │ │ ├── cls_head.py │ │ ├── conformer_head.py │ │ ├── deit_head.py │ │ ├── efficientformer_head.py │ │ ├── levit_head.py │ │ ├── linear_head.py │ │ ├── margin_head.py │ │ ├── multi_label_cls_head.py │ │ ├── multi_label_csra_head.py │ │ ├── multi_label_linear_head.py │ │ ├── multi_task_head.py │ │ ├── stacked_head.py │ │ ├── vig_head.py │ │ └── vision_transformer_head.py │ ├── losses │ │ ├── __init__.py │ │ ├── asymmetric_loss.py │ │ ├── cross_entropy_loss.py │ │ ├── focal_loss.py │ │ ├── label_smooth_loss.py │ │ ├── seesaw_loss.py │ │ └── utils.py │ ├── necks │ │ ├── __init__.py │ │ ├── gap.py │ │ ├── gem.py │ │ ├── hr_fuse.py │ │ └── reduction.py │ ├── retrievers │ │ ├── __init__.py │ │ ├── base.py │ │ └── image2image.py │ ├── tta │ │ ├── __init__.py │ │ └── score_tta.py │ └── utils │ │ ├── __init__.py │ │ ├── attention.py │ │ ├── batch_augments │ │ ├── __init__.py │ │ ├── cutmix.py │ │ ├── mixup.py │ │ ├── resizemix.py │ │ └── wrapper.py │ │ ├── channel_shuffle.py │ │ ├── data_preprocessor.py │ │ ├── embed.py │ │ ├── helpers.py │ │ ├── inverted_residual.py │ │ ├── layer_scale.py │ │ ├── make_divisible.py │ │ ├── norm.py │ │ ├── position_encoding.py │ │ └── se_layer.py │ ├── registry.py │ ├── structures │ ├── __init__.py │ ├── cls_data_sample.py │ ├── multi_task_data_sample.py │ └── utils.py │ ├── utils │ ├── __init__.py │ ├── analyze.py │ ├── collect_env.py │ ├── progress.py │ └── setup_env.py │ ├── version.py │ └── visualization │ ├── __init__.py │ └── cls_visualizer.py ├── configs ├── _base_ │ ├── datasets │ │ ├── cifar100_bs16.py │ │ ├── cifar10_bs16.py │ │ ├── cub_bs8_384.py │ │ ├── cub_bs8_448.py │ │ ├── imagenet21k_bs128.py │ │ ├── imagenet_bs128_mbv3.py │ │ ├── imagenet_bs128_mlp_224.py │ │ ├── imagenet_bs128_poolformer_medium_224.py │ │ ├── imagenet_bs128_poolformer_small_224.py │ │ ├── imagenet_bs128_revvit_224.py │ │ ├── imagenet_bs128_swin_224.py │ │ ├── imagenet_bs128_vig_224.py │ │ ├── imagenet_bs16_eva02_336.py │ │ ├── imagenet_bs16_eva_196.py │ │ ├── imagenet_bs16_eva_224.py │ │ ├── imagenet_bs16_eva_336.py │ │ ├── imagenet_bs16_eva_560.py │ │ ├── imagenet_bs16_pil_bicubic_384.py │ │ ├── imagenet_bs256_davit_224.py │ │ ├── imagenet_bs256_levit_224.py │ │ ├── imagenet_bs256_resnet_224.py │ │ ├── imagenet_bs256_rsb_a12.py │ │ ├── imagenet_bs256_rsb_a3.py │ │ ├── imagenet_bs32.py │ │ ├── imagenet_bs32_pil_bicubic.py │ │ ├── imagenet_bs32_pil_resize.py │ │ ├── imagenet_bs32_swin_224.py │ │ ├── imagenet_bs64.py │ │ ├── imagenet_bs64_autoaug.py │ │ ├── imagenet_bs64_clip_224.py │ │ ├── imagenet_bs64_clip_384.py │ │ ├── imagenet_bs64_clip_448.py │ │ ├── imagenet_bs64_convmixer_224.py │ │ ├── imagenet_bs64_deit3_224.py │ │ ├── imagenet_bs64_deit3_384.py │ │ ├── imagenet_bs64_edgenext_256.py │ │ ├── imagenet_bs64_efficient_224.py │ │ ├── imagenet_bs64_mbv1_224.py │ │ ├── imagenet_bs64_mixer_224.py │ │ ├── imagenet_bs64_pil_resize.py │ │ ├── imagenet_bs64_pil_resize_autoaug.py │ │ ├── imagenet_bs64_swin_224.py │ │ ├── imagenet_bs64_swin_256.py │ │ ├── imagenet_bs64_swin_384.py │ │ ├── imagenet_bs64_t2t_224.py │ │ ├── imagenet_bs8_pil_bicubic_320.py │ │ ├── inshop_bs32_448.py │ │ ├── pipelines │ │ │ ├── auto_aug.py │ │ │ └── rand_aug.py │ │ └── voc_bs16.py │ ├── default_runtime.py │ ├── models │ │ ├── bit_resnet50.py │ │ ├── conformer │ │ │ ├── base-p16.py │ │ │ ├── small-p16.py │ │ │ ├── small-p32.py │ │ │ └── tiny-p16.py │ │ ├── convmixer │ │ │ ├── convmixer-1024-20.py │ │ │ ├── convmixer-1536-20.py │ │ │ └── convmixer-768-32.py │ │ ├── convnext │ │ │ ├── convnext-base.py │ │ │ ├── convnext-large.py │ │ │ ├── convnext-small.py │ │ │ ├── convnext-tiny.py │ │ │ └── convnext-xlarge.py │ │ ├── convnext_v2 │ │ │ ├── atto.py │ │ │ ├── base.py │ │ │ ├── femto.py │ │ │ ├── huge.py │ │ │ ├── large.py │ │ │ ├── nano.py │ │ │ ├── pico.py │ │ │ └── tiny.py │ │ ├── davit │ │ │ ├── davit-base.py │ │ │ ├── davit-small.py │ │ │ └── davit-tiny.py │ │ ├── deit3 │ │ │ ├── deit3-base-p16-224.py │ │ │ ├── deit3-base-p16-384.py │ │ │ ├── deit3-huge-p14-224.py │ │ │ ├── deit3-large-p16-224.py │ │ │ ├── deit3-large-p16-384.py │ │ │ ├── deit3-medium-p16-224.py │ │ │ ├── deit3-small-p16-224.py │ │ │ └── deit3-small-p16-384.py │ │ ├── densenet │ │ │ ├── densenet121.py │ │ │ ├── densenet161.py │ │ │ ├── densenet169.py │ │ │ └── densenet201.py │ │ ├── edgenext │ │ │ ├── edgenext-base.py │ │ │ ├── edgenext-small.py │ │ │ ├── edgenext-xsmall.py │ │ │ └── edgenext-xxsmall.py │ │ ├── efficientformer-l1.py │ │ ├── efficientnet_b0.py │ │ ├── efficientnet_b1.py │ │ ├── efficientnet_b2.py │ │ ├── efficientnet_b3.py │ │ ├── efficientnet_b4.py │ │ ├── efficientnet_b5.py │ │ ├── efficientnet_b6.py │ │ ├── efficientnet_b7.py │ │ ├── efficientnet_b8.py │ │ ├── efficientnet_em.py │ │ ├── efficientnet_es.py │ │ ├── efficientnet_l2.py │ │ ├── efficientnet_v2 │ │ │ ├── efficientnetv2_b0.py │ │ │ ├── efficientnetv2_b1.py │ │ │ ├── efficientnetv2_b2.py │ │ │ ├── efficientnetv2_b3.py │ │ │ ├── efficientnetv2_l.py │ │ │ ├── efficientnetv2_m.py │ │ │ ├── efficientnetv2_s.py │ │ │ └── efficientnetv2_xl.py │ │ ├── eva │ │ │ ├── eva-g.py │ │ │ ├── eva-l.py │ │ │ └── vit-b-eva.py │ │ ├── hornet │ │ │ ├── hornet-base-gf.py │ │ │ ├── hornet-base.py │ │ │ ├── hornet-large-gf.py │ │ │ ├── hornet-large-gf384.py │ │ │ ├── hornet-large.py │ │ │ ├── hornet-small-gf.py │ │ │ ├── hornet-small.py │ │ │ ├── hornet-tiny-gf.py │ │ │ └── hornet-tiny.py │ │ ├── hrnet │ │ │ ├── hrnet-w18.py │ │ │ ├── hrnet-w30.py │ │ │ ├── hrnet-w32.py │ │ │ ├── hrnet-w40.py │ │ │ ├── hrnet-w44.py │ │ │ ├── hrnet-w48.py │ │ │ └── hrnet-w64.py │ │ ├── inception_v3.py │ │ ├── levit-256-p16.py │ │ ├── mixmim │ │ │ └── mixmim_base.py │ │ ├── mlp_mixer_base_patch14.py │ │ ├── mlp_mixer_base_patch16.py │ │ ├── mlp_mixer_large_patch16.py │ │ ├── mlp_mixer_small_patch16.py │ │ ├── mobilenet_v1_1x.py │ │ ├── mobilenet_v2_1x.py │ │ ├── mobilenet_v3 │ │ │ ├── mobilenet_v3_large_imagenet.py │ │ │ ├── mobilenet_v3_small_050_imagenet.py │ │ │ ├── mobilenet_v3_small_075_imagenet.py │ │ │ ├── mobilenet_v3_small_cifar.py │ │ │ └── mobilenet_v3_small_imagenet.py │ │ ├── mobileone │ │ │ ├── mobileone_s0.py │ │ │ ├── mobileone_s1.py │ │ │ ├── mobileone_s2.py │ │ │ ├── mobileone_s3.py │ │ │ └── mobileone_s4.py │ │ ├── mobilevit │ │ │ ├── mobilevit_s.py │ │ │ ├── mobilevit_xs.py │ │ │ └── mobilevit_xxs.py │ │ ├── mvit │ │ │ ├── mvitv2-base.py │ │ │ ├── mvitv2-large.py │ │ │ ├── mvitv2-small.py │ │ │ └── mvitv2-tiny.py │ │ ├── poolformer │ │ │ ├── poolformer_m36.py │ │ │ ├── poolformer_m48.py │ │ │ ├── poolformer_s12.py │ │ │ ├── poolformer_s24.py │ │ │ └── poolformer_s36.py │ │ ├── regnet │ │ │ ├── regnetx_1.6gf.py │ │ │ ├── regnetx_12gf.py │ │ │ ├── regnetx_3.2gf.py │ │ │ ├── regnetx_4.0gf.py │ │ │ ├── regnetx_400mf.py │ │ │ ├── regnetx_6.4gf.py │ │ │ ├── regnetx_8.0gf.py │ │ │ └── regnetx_800mf.py │ │ ├── replknet-31B_in1k.py │ │ ├── replknet-31L_in1k.py │ │ ├── replknet-XL_in1k.py │ │ ├── repmlp-base_224.py │ │ ├── repvgg-A0_in1k.py │ │ ├── repvgg-B3_lbs-mixup_in1k.py │ │ ├── res2net101-w26-s4.py │ │ ├── res2net50-w14-s8.py │ │ ├── res2net50-w26-s4.py │ │ ├── res2net50-w26-s6.py │ │ ├── res2net50-w26-s8.py │ │ ├── res2net50-w48-s2.py │ │ ├── resnest101.py │ │ ├── resnest200.py │ │ ├── resnest269.py │ │ ├── resnest50.py │ │ ├── resnet101.py │ │ ├── resnet101_cifar.py │ │ ├── resnet152.py │ │ ├── resnet152_cifar.py │ │ ├── resnet152d_strong_aug.py │ │ ├── resnet18.py │ │ ├── resnet18_cifar.py │ │ ├── resnet34.py │ │ ├── resnet34_cifar.py │ │ ├── resnet34_gem.py │ │ ├── resnet50.py │ │ ├── resnet50_cifar.py │ │ ├── resnet50_cifar_cutmix.py │ │ ├── resnet50_cifar_mixup.py │ │ ├── resnet50_cutmix.py │ │ ├── resnet50_label_smooth.py │ │ ├── resnet50_mixup.py │ │ ├── resnet50_strong_aug.py │ │ ├── resnet50d_strong_aug.py │ │ ├── resnetv1c50.py │ │ ├── resnetv1d101.py │ │ ├── resnetv1d152.py │ │ ├── resnetv1d50.py │ │ ├── resnext101_32x4d.py │ │ ├── resnext101_32x8d.py │ │ ├── resnext152_32x4d.py │ │ ├── resnext50_32x4d.py │ │ ├── revvit │ │ │ ├── revvit-base.py │ │ │ └── revvit-small.py │ │ ├── seresnet101.py │ │ ├── seresnet50.py │ │ ├── seresnext101_32x4d.py │ │ ├── seresnext50_32x4d.py │ │ ├── shufflenet_v1_1x.py │ │ ├── shufflenet_v2_1x.py │ │ ├── swin_transformer │ │ │ ├── base_224.py │ │ │ ├── base_384.py │ │ │ ├── large_224.py │ │ │ ├── large_384.py │ │ │ ├── small_224.py │ │ │ └── tiny_224.py │ │ ├── swin_transformer_v2 │ │ │ ├── base_256.py │ │ │ ├── base_384.py │ │ │ ├── large_256.py │ │ │ ├── large_384.py │ │ │ ├── small_256.py │ │ │ └── tiny_256.py │ │ ├── t2t-vit-t-14.py │ │ ├── t2t-vit-t-19.py │ │ ├── t2t-vit-t-24.py │ │ ├── tinyvit │ │ │ ├── tinyvit-11m.py │ │ │ ├── tinyvit-21m.py │ │ │ └── tinyvit-5m.py │ │ ├── tnt_s_patch16_224.py │ │ ├── twins_pcpvt_base.py │ │ ├── twins_svt_base.py │ │ ├── van │ │ │ ├── van_base.py │ │ │ ├── van_large.py │ │ │ ├── van_small.py │ │ │ └── van_tiny.py │ │ ├── vgg11.py │ │ ├── vgg11bn.py │ │ ├── vgg13.py │ │ ├── vgg13bn.py │ │ ├── vgg16.py │ │ ├── vgg16bn.py │ │ ├── vgg19.py │ │ ├── vgg19bn.py │ │ ├── vig │ │ │ ├── pyramid_vig_base.py │ │ │ ├── pyramid_vig_medium.py │ │ │ ├── pyramid_vig_small.py │ │ │ ├── pyramid_vig_tiny.py │ │ │ ├── vig_base.py │ │ │ ├── vig_small.py │ │ │ └── vig_tiny.py │ │ ├── vit-base-p16.py │ │ ├── vit-base-p32.py │ │ ├── vit-large-p16.py │ │ ├── vit-large-p32.py │ │ └── wide-resnet50.py │ └── schedules │ │ ├── cifar10_bs128.py │ │ ├── cub_bs64.py │ │ ├── imagenet_bs1024_AdamW_mlp.py │ │ ├── imagenet_bs1024_adamw_conformer.py │ │ ├── imagenet_bs1024_adamw_eva02.py │ │ ├── imagenet_bs1024_adamw_resnet.py │ │ ├── imagenet_bs1024_adamw_revvit.py │ │ ├── imagenet_bs1024_adamw_swin.py │ │ ├── imagenet_bs1024_coslr.py │ │ ├── imagenet_bs1024_linearlr_bn_nowd.py │ │ ├── imagenet_bs2048.py │ │ ├── imagenet_bs2048_AdamW.py │ │ ├── imagenet_bs2048_adamw_levit.py │ │ ├── imagenet_bs2048_coslr.py │ │ ├── imagenet_bs2048_coslr_Lamb.py │ │ ├── imagenet_bs2048_rsb.py │ │ ├── imagenet_bs256.py │ │ ├── imagenet_bs256_140e.py │ │ ├── imagenet_bs256_200e_coslr_warmup.py │ │ ├── imagenet_bs256_cos_lr_SGD_150e.py │ │ ├── imagenet_bs256_coslr.py │ │ ├── imagenet_bs256_coslr_coswd_300e.py │ │ ├── imagenet_bs256_epochstep.py │ │ ├── imagenet_bs4096_AdamW.py │ │ └── imagenet_bs512_coslr.py ├── arcface │ ├── README.md │ ├── metafile.yml │ └── resnet50-arcface_8xb32_inshop.py ├── beit │ ├── README.md │ ├── beit-base-p16_8xb64_in1k.py │ └── metafile.yml ├── beitv2 │ ├── README.md │ ├── beitv2-base-p16_8xb64_in1k.py │ └── metafile.yml ├── clip │ ├── README.md │ ├── metafile.yml │ ├── vit-base-p16_pt-64xb64_in1k-384px.py │ ├── vit-base-p16_pt-64xb64_in1k-448px.py │ ├── vit-base-p16_pt-64xb64_in1k.py │ ├── vit-base-p32_pt-64xb64_in1k-384px.py │ ├── vit-base-p32_pt-64xb64_in1k-448px.py │ └── vit-base-p32_pt-64xb64_in1k.py ├── conformer │ ├── README.md │ ├── conformer-base-p16_8xb128_in1k.py │ ├── conformer-small-p16_8xb128_in1k.py │ ├── conformer-small-p32_8xb128_in1k.py │ ├── conformer-tiny-p16_8xb128_in1k.py │ └── metafile.yml ├── convmixer │ ├── README.md │ ├── convmixer-1024-20_10xb64_in1k.py │ ├── convmixer-1536-20_10xb64_in1k.py │ ├── convmixer-768-32_10xb64_in1k.py │ └── metafile.yml ├── convnext │ ├── README.md │ ├── convnext-base_32xb128_in1k-384px.py │ ├── convnext-base_32xb128_in1k.py │ ├── convnext-base_32xb128_in21k.py │ ├── convnext-large_64xb64_in1k-384px.py │ ├── convnext-large_64xb64_in1k.py │ ├── convnext-large_64xb64_in21k.py │ ├── convnext-small_32xb128_in1k-384px.py │ ├── convnext-small_32xb128_in1k.py │ ├── convnext-tiny_32xb128_in1k-384px.py │ ├── convnext-tiny_32xb128_in1k.py │ ├── convnext-xlarge_64xb64_in1k-384px.py │ ├── convnext-xlarge_64xb64_in1k.py │ ├── convnext-xlarge_64xb64_in21k.py │ └── metafile.yml ├── convnext_v2 │ ├── README.md │ ├── convnext-v2-atto_32xb32_in1k.py │ ├── convnext-v2-base_32xb32_in1k-384px.py │ ├── convnext-v2-base_32xb32_in1k.py │ ├── convnext-v2-femto_32xb32_in1k.py │ ├── convnext-v2-huge_32xb32_in1k-384px.py │ ├── convnext-v2-huge_32xb32_in1k-512px.py │ ├── convnext-v2-huge_32xb32_in1k.py │ ├── convnext-v2-large_32xb32_in1k-384px.py │ ├── convnext-v2-large_32xb32_in1k.py │ ├── convnext-v2-nano_32xb32_in1k-384px.py │ ├── convnext-v2-nano_32xb32_in1k.py │ ├── convnext-v2-pico_32xb32_in1k.py │ ├── convnext-v2-tiny_32xb32_in1k-384px.py │ ├── convnext-v2-tiny_32xb32_in1k.py │ └── metafile.yml ├── cspnet │ ├── README.md │ ├── cspdarknet50_8xb32_in1k.py │ ├── cspresnet50_8xb32_in1k.py │ ├── cspresnext50_8xb32_in1k.py │ └── metafile.yml ├── csra │ ├── README.md │ ├── metafile.yml │ └── resnet101-csra_1xb16_voc07-448px.py ├── davit │ ├── README.md │ ├── davit-base_4xb256_in1k.py │ ├── davit-small_4xb256_in1k.py │ ├── davit-tiny_4xb256_in1k.py │ └── metafile.yml ├── deit │ ├── README.md │ ├── deit-base-distilled_ft-16xb32_in1k-384px.py │ ├── deit-base-distilled_pt-16xb64_in1k.py │ ├── deit-base_ft-16xb32_in1k-384px.py │ ├── deit-base_pt-16xb64_in1k.py │ ├── deit-base_pt-4xb256_in1k.py │ ├── deit-base_pt-4xb256_p14_in1k.py │ ├── deit-small-distilled_pt-4xb256_in1k.py │ ├── deit-small_pt-4xb256_in1k.py │ ├── deit-small_pt-4xb256_in1k_with_token.py │ ├── deit-small_pt-4xb256_p16_in1k.py │ ├── deit-tiny-distilled_pt-4xb256_in1k.py │ ├── deit-tiny_pt-4xb256_in1k.py │ ├── deit-tiny_pt-4xb256_in1k_with_token.py │ └── metafile.yml ├── deit3 │ ├── README.md │ ├── deit3-base-p16_64xb32_in1k-384px.py │ ├── deit3-base-p16_64xb64_in1k.py │ ├── deit3-huge-p14_64xb32_in1k.py │ ├── deit3-large-p16_64xb16_in1k-384px.py │ ├── deit3-large-p16_64xb64_in1k.py │ ├── deit3-medium-p16_64xb64_in1k.py │ ├── deit3-small-p16_64xb64_in1k-384px.py │ ├── deit3-small-p16_64xb64_in1k.py │ └── metafile.yml ├── densenet │ ├── README.md │ ├── densenet121_4xb256_in1k.py │ ├── densenet161_4xb256_in1k.py │ ├── densenet169_4xb256_in1k.py │ ├── densenet201_4xb256_in1k.py │ └── metafile.yml ├── distillers │ ├── advanced_training_strategy │ │ ├── swin-l_distill_deit-b_img_s3_s4.py │ │ └── swin-l_distill_res50_img_s3_s4.py │ └── traditional_traning_strategy │ │ ├── swin-b_distill_res50_img_s3_s4.py │ │ ├── swin-l_distill_mbv1_img_s3_s4.py │ │ ├── swin-l_distill_res50_img_s3_s4.py │ │ └── swin-s_distill_res50_img_s3_s4.py ├── edgenext │ ├── README.md │ ├── edgenext-base_8xb256-usi_in1k.py │ ├── edgenext-base_8xb256_in1k.py │ ├── edgenext-small_8xb256-usi_in1k.py │ ├── edgenext-small_8xb256_in1k.py │ ├── edgenext-xsmall_8xb256_in1k.py │ ├── edgenext-xxsmall_8xb256_in1k.py │ └── metafile.yml ├── efficientformer │ ├── README.md │ ├── efficientformer-l1_8xb128_in1k.py │ ├── efficientformer-l3_8xb128_in1k.py │ ├── efficientformer-l7_8xb128_in1k.py │ └── metafile.yml ├── efficientnet │ ├── README.md │ ├── efficientnet-b0_8xb32-01norm_in1k.py │ ├── efficientnet-b0_8xb32_in1k.py │ ├── efficientnet-b1_8xb32-01norm_in1k.py │ ├── efficientnet-b1_8xb32_in1k.py │ ├── efficientnet-b2_8xb32-01norm_in1k.py │ ├── efficientnet-b2_8xb32_in1k.py │ ├── efficientnet-b3_8xb32-01norm_in1k.py │ ├── efficientnet-b3_8xb32_in1k.py │ ├── efficientnet-b4_8xb32-01norm_in1k.py │ ├── efficientnet-b4_8xb32_in1k.py │ ├── efficientnet-b5_8xb32-01norm_in1k.py │ ├── efficientnet-b5_8xb32_in1k.py │ ├── efficientnet-b6_8xb32-01norm_in1k.py │ ├── efficientnet-b6_8xb32_in1k.py │ ├── efficientnet-b7_8xb32-01norm_in1k.py │ ├── efficientnet-b7_8xb32_in1k.py │ ├── efficientnet-b8_8xb32-01norm_in1k.py │ ├── efficientnet-b8_8xb32_in1k.py │ ├── efficientnet-em_8xb32-01norm_in1k.py │ ├── efficientnet-es_8xb32-01norm_in1k.py │ ├── efficientnet-l2_8xb32_in1k-475px.py │ ├── efficientnet-l2_8xb8_in1k-800px.py │ └── metafile.yml ├── efficientnet_v2 │ ├── README.md │ ├── efficientnetv2-b0_8xb32_in1k.py │ ├── efficientnetv2-b1_8xb32_in1k.py │ ├── efficientnetv2-b2_8xb32_in1k.py │ ├── efficientnetv2-b3_8xb32_in1k.py │ ├── efficientnetv2-l_8xb32_in1k-480px.py │ ├── efficientnetv2-l_8xb32_in21k.py │ ├── efficientnetv2-m_8xb32_in1k-480px.py │ ├── efficientnetv2-m_8xb32_in21k.py │ ├── efficientnetv2-s_8xb32_in1k-384px.py │ ├── efficientnetv2-s_8xb32_in21k.py │ ├── efficientnetv2-xl_8xb32_in1k-512px.py │ ├── efficientnetv2-xl_8xb32_in21k.py │ └── metafile.yml ├── eva │ ├── README.md │ ├── eva-02-b_in1k-224px.py │ ├── eva-02-s_in1k-336px.py │ ├── eva-g-p14_8xb16_in1k-336px.py │ ├── eva-g-p14_8xb16_in1k-560px.py │ ├── eva-g-p14_headless.py │ ├── eva-g-p16_headless.py │ ├── eva-l-p14_8xb16_in1k-196px.py │ ├── eva-l-p14_8xb16_in1k-224px.py │ ├── eva-l-p14_8xb16_in1k-336px.py │ ├── eva-l-p14_headless.py │ ├── metafile.yml │ └── vit-b-eva.py ├── hornet │ ├── README.md │ ├── hornet-base-gf_8xb64_in1k.py │ ├── hornet-base_8xb64_in1k.py │ ├── hornet-small-gf_8xb64_in1k.py │ ├── hornet-small_8xb64_in1k.py │ ├── hornet-tiny-gf_8xb128_in1k.py │ ├── hornet-tiny_8xb128_in1k.py │ └── metafile.yml ├── hrnet │ ├── README.md │ ├── hrnet-w18_4xb32_in1k.py │ ├── hrnet-w30_4xb32_in1k.py │ ├── hrnet-w32_4xb32_in1k.py │ ├── hrnet-w40_4xb32_in1k.py │ ├── hrnet-w44_4xb32_in1k.py │ ├── hrnet-w48_4xb32_in1k.py │ ├── hrnet-w64_4xb32_in1k.py │ └── metafile.yml ├── inception_v3 │ ├── README.md │ ├── inception-v3_8xb32_in1k.py │ └── metafile.yml ├── lenet │ ├── README.md │ └── lenet5_mnist.py ├── levit │ ├── README.md │ ├── deploy │ │ ├── levit-128_8xb256_in1k.py │ │ ├── levit-128s_8xb256_in1k.py │ │ ├── levit-192_8xb256_in1k.py │ │ ├── levit-256_8xb256_in1k.py │ │ └── levit-384_8xb256_in1k.py │ ├── levit-128_8xb256_in1k.py │ ├── levit-128s_8xb256_in1k.py │ ├── levit-192_8xb256_in1k.py │ ├── levit-256_8xb256_in1k.py │ ├── levit-384_8xb256_in1k.py │ └── metafile.yml ├── mixmim │ ├── README.md │ ├── metafile.yml │ └── mixmim-base_8xb64_in1k.py ├── mlp_mixer │ ├── README.md │ ├── metafile.yml │ ├── mlp-mixer-base-p14_64xb64_in1k.py │ ├── mlp-mixer-base-p16_64xb64_in1k.py │ ├── mlp-mixer-large-p16_64xb64_in1k.py │ └── mlp-mixer-small-p16_64xb64_in1k.py ├── mobilenet_v1 │ ├── mobilenet_v1.py │ └── mobilenet_v1_refine.py ├── mobilenet_v2 │ ├── README.md │ ├── metafile.yml │ └── mobilenet-v2_8xb32_in1k.py ├── mobilenet_v3 │ ├── README.md │ ├── metafile.yml │ ├── mobilenet-v3-large_8xb128_in1k.py │ ├── mobilenet-v3-small-050_8xb128_in1k.py │ ├── mobilenet-v3-small-075_8xb128_in1k.py │ ├── mobilenet-v3-small_8xb128_in1k.py │ └── mobilenet-v3-small_8xb16_cifar10.py ├── mobileone │ ├── README.md │ ├── deploy │ │ ├── mobileone-s0_deploy_8xb32_in1k.py │ │ ├── mobileone-s1_deploy_8xb32_in1k.py │ │ ├── mobileone-s2_deploy_8xb32_in1k.py │ │ ├── mobileone-s3_deploy_8xb32_in1k.py │ │ └── mobileone-s4_deploy_8xb32_in1k.py │ ├── metafile.yml │ ├── mobileone-s0_8xb32_in1k.py │ ├── mobileone-s1_8xb32_in1k.py │ ├── mobileone-s2_8xb32_in1k.py │ ├── mobileone-s3_8xb32_in1k.py │ └── mobileone-s4_8xb32_in1k.py ├── mobilevit │ ├── README.md │ ├── metafile.yml │ ├── mobilevit-small_8xb128_in1k.py │ ├── mobilevit-xsmall_8xb128_in1k.py │ └── mobilevit-xxsmall_8xb128_in1k.py ├── mvit │ ├── README.md │ ├── metafile.yml │ ├── mvitv2-base_8xb256_in1k.py │ ├── mvitv2-large_8xb256_in1k.py │ ├── mvitv2-small_8xb256_in1k.py │ └── mvitv2-tiny_8xb256_in1k.py ├── poolformer │ ├── README.md │ ├── metafile.yml │ ├── poolformer-m36_32xb128_in1k.py │ ├── poolformer-m48_32xb128_in1k.py │ ├── poolformer-s12_32xb128_in1k.py │ ├── poolformer-s24_32xb128_in1k.py │ └── poolformer-s36_32xb128_in1k.py ├── regnet │ ├── README.md │ ├── metafile.yml │ ├── regnetx-1.6gf_8xb128_in1k.py │ ├── regnetx-12gf_8xb64_in1k.py │ ├── regnetx-3.2gf_8xb64_in1k.py │ ├── regnetx-4.0gf_8xb64_in1k.py │ ├── regnetx-400mf_8xb128_in1k.py │ ├── regnetx-6.4gf_8xb64_in1k.py │ ├── regnetx-8.0gf_8xb64_in1k.py │ └── regnetx-800mf_8xb128_in1k.py ├── replknet │ ├── README.md │ ├── deploy │ │ ├── replknet-31B-deploy_32xb64_in1k-384px.py │ │ ├── replknet-31B-deploy_32xb64_in1k.py │ │ ├── replknet-31L-deploy_32xb64_in1k-384px.py │ │ └── replknet-XL-deploy_32xb64_in1k-320px.py │ ├── metafile.yml │ ├── replknet-31B_32xb64_in1k-384px.py │ ├── replknet-31B_32xb64_in1k.py │ ├── replknet-31L_32xb64_in1k-384px.py │ └── replknet-XL_32xb64_in1k-320px.py ├── repmlp │ ├── README.md │ ├── metafile.yml │ ├── repmlp-base_8xb64_in1k-256px.py │ ├── repmlp-base_8xb64_in1k.py │ ├── repmlp-base_delopy_8xb64_in1k.py │ └── repmlp-base_deploy_8xb64_in1k-256px.py ├── repvgg │ ├── README.md │ ├── metafile.yml │ ├── repvgg-A0_8xb32_in1k.py │ ├── repvgg-A0_deploy_in1k.py │ ├── repvgg-A1_8xb32_in1k.py │ ├── repvgg-A2_8xb32_in1k.py │ ├── repvgg-B0_8xb32_in1k.py │ ├── repvgg-B1_8xb32_in1k.py │ ├── repvgg-B1g2_8xb32_in1k.py │ ├── repvgg-B1g4_8xb32_in1k.py │ ├── repvgg-B2_8xb32_in1k.py │ ├── repvgg-B2g4_8xb32_in1k.py │ ├── repvgg-B3_8xb32_in1k.py │ ├── repvgg-B3g4_8xb32_in1k.py │ └── repvgg-D2se_8xb32_in1k.py ├── res2net │ ├── README.md │ ├── metafile.yml │ ├── res2net101-w26-s4_8xb32_in1k.py │ ├── res2net50-w14-s8_8xb32_in1k.py │ └── res2net50-w26-s8_8xb32_in1k.py ├── resnest │ ├── README.md │ ├── _randaug_policies.py │ ├── resnest101_32xb64_in1k.py │ ├── resnest200_64xb32_in1k.py │ ├── resnest269_64xb32_in1k.py │ └── resnest50_32xb64_in1k.py ├── resnet │ ├── README.md │ ├── bit_resnet50_8xb32_in1k_strong_aug_coslr_300.py │ ├── metafile.yml │ ├── resnet101_8xb16_cifar10.py │ ├── resnet101_8xb32_in1k.py │ ├── resnet152_8xb16_cifar10.py │ ├── resnet152_8xb32_in1k.py │ ├── resnet152d_8xb32_in1k_strong_aug_coslr_300.py │ ├── resnet18_8xb16_cifar10.py │ ├── resnet18_8xb16_cifar100.py │ ├── resnet18_8xb32_in1k.py │ ├── resnet18_8xb32_in1k_former_distill.py │ ├── resnet18_8xb64_in1k_cos_aug.py │ ├── resnet34_8xb16_cifar10.py │ ├── resnet34_8xb32_in1k.py │ ├── resnet50_32xb64-warmup-coslr_in1k.py │ ├── resnet50_32xb64-warmup-lbs_in1k.py │ ├── resnet50_32xb64-warmup_in1k.py │ ├── resnet50_8xb128_coslr-90e_in21k.py │ ├── resnet50_8xb16-mixup_cifar10.py │ ├── resnet50_8xb16_cifar10.py │ ├── resnet50_8xb16_cifar100.py │ ├── resnet50_8xb256-rsb-a1-600e_in1k.py │ ├── resnet50_8xb256-rsb-a2-300e_in1k.py │ ├── resnet50_8xb256-rsb-a3-100e_in1k.py │ ├── resnet50_8xb32-coslr-preciseBN_in1k.py │ ├── resnet50_8xb32-coslr_in1k.py │ ├── resnet50_8xb32-cutmix_in1k.py │ ├── resnet50_8xb32-fp16-dynamic_in1k.py │ ├── resnet50_8xb32-fp16_in1k.py │ ├── resnet50_8xb32-lbs_in1k.py │ ├── resnet50_8xb32-mixup_in1k.py │ ├── resnet50_8xb32_in1k.py │ ├── resnet50_8xb32_in1k_strong_aug_coslr_300.py │ ├── resnet50_8xb8_cub.py │ ├── resnet50d_8xb32_in1k_strong_aug_coslr_300.py │ ├── resnetv1c101_8xb32_in1k.py │ ├── resnetv1c152_8xb32_in1k.py │ ├── resnetv1c50_8xb32_in1k.py │ ├── resnetv1d101_8xb32_in1k.py │ ├── resnetv1d152_8xb32_in1k.py │ └── resnetv1d50_8xb32_in1k.py ├── resnext │ ├── README.md │ ├── metafile.yml │ ├── resnext101-32x4d_8xb32_in1k.py │ ├── resnext101-32x8d_8xb32_in1k.py │ ├── resnext152-32x4d_8xb32_in1k.py │ └── resnext50-32x4d_8xb32_in1k.py ├── revvit │ ├── README.md │ ├── metafile.yml │ ├── revvit-base_8xb256_in1k.py │ └── revvit-small_8xb256_in1k.py ├── seresnet │ ├── README.md │ ├── metafile.yml │ ├── seresnet101_8xb32_in1k.py │ ├── seresnet50_8xb32_in1k.py │ ├── seresnext101-32x4d_8xb32_in1k.py │ └── seresnext50-32x4d_8xb32_in1k.py ├── shufflenet_v1 │ ├── README.md │ ├── metafile.yml │ └── shufflenet-v1-1x_16xb64_in1k.py ├── shufflenet_v2 │ ├── README.md │ ├── metafile.yml │ └── shufflenet-v2-1x_16xb64_in1k.py ├── swin_transformer │ ├── README.md │ ├── metafile.yml │ ├── swin-base_16xb64_in1k-384px.py │ ├── swin-base_16xb64_in1k.py │ ├── swin-large_16xb64_in1k-384px.py │ ├── swin-large_16xb64_in1k.py │ ├── swin-large_8xb8_cub_384px.py │ ├── swin-small_16xb64_in1k.py │ └── swin-tiny_16xb64_in1k.py ├── swin_transformer_v2 │ ├── README.md │ ├── metafile.yml │ ├── swinv2-base-w12_8xb128_in21k-192px.py │ ├── swinv2-base-w16_16xb64_in1k-256px.py │ ├── swinv2-base-w16_in21k-pre_16xb64_in1k-256px.py │ ├── swinv2-base-w24_in21k-pre_16xb64_in1k-384px.py │ ├── swinv2-base-w8_16xb64_in1k-256px.py │ ├── swinv2-large-w12_8xb128_in21k-192px.py │ ├── swinv2-large-w16_in21k-pre_16xb64_in1k-256px.py │ ├── swinv2-large-w24_in21k-pre_16xb64_in1k-384px.py │ ├── swinv2-small-w16_16xb64_in1k-256px.py │ ├── swinv2-small-w8_16xb64_in1k-256px.py │ ├── swinv2-tiny-w16_16xb64_in1k-256px.py │ └── swinv2-tiny-w8_16xb64_in1k-256px.py ├── t2t_vit │ ├── README.md │ ├── metafile.yml │ ├── t2t-vit-t-14_8xb64_in1k.py │ ├── t2t-vit-t-19_8xb64_in1k.py │ └── t2t-vit-t-24_8xb64_in1k.py ├── tinyvit │ ├── README.md │ ├── metafile.yml │ ├── tinyvit-11m-distill_8xb256_in1k.py │ ├── tinyvit-11m_8xb256_in1k.py │ ├── tinyvit-21m-distill_8xb256_in1k-384px.py │ ├── tinyvit-21m-distill_8xb256_in1k-512px.py │ ├── tinyvit-21m-distill_8xb256_in1k.py │ ├── tinyvit-21m_8xb256_in1k.py │ ├── tinyvit-5m-distill_8xb256_in1k.py │ └── tinyvit-5m_8xb256_in1k.py ├── tnt │ ├── README.md │ ├── metafile.yml │ └── tnt-s-p16_16xb64_in1k.py ├── twins │ ├── README.md │ ├── metafile.yml │ ├── twins-pcpvt-base_8xb128_in1k.py │ ├── twins-pcpvt-large_16xb64_in1k.py │ ├── twins-pcpvt-small_8xb128_in1k.py │ ├── twins-svt-base_8xb128_in1k.py │ ├── twins-svt-large_16xb64_in1k.py │ └── twins-svt-small_8xb128_in1k.py ├── van │ ├── README.md │ ├── metafile.yml │ ├── van-base_8xb128_in1k.py │ ├── van-large_8xb128_in1k.py │ ├── van-small_8xb128_in1k.py │ └── van-tiny_8xb128_in1k.py ├── vgg │ ├── README.md │ ├── metafile.yml │ ├── vgg11_8xb32_in1k.py │ ├── vgg11bn_8xb32_in1k.py │ ├── vgg13_8xb32_in1k.py │ ├── vgg13bn_8xb32_in1k.py │ ├── vgg16_8xb16_voc.py │ ├── vgg16_8xb32_in1k.py │ ├── vgg16bn_8xb32_in1k.py │ ├── vgg19_8xb32_in1k.py │ └── vgg19bn_8xb32_in1k.py ├── vig │ ├── README.md │ ├── metafile.yml │ ├── pvig-base_8xb128_in1k.py │ ├── pvig-medium_8xb128_in1k.py │ ├── pvig-small_8xb128_in1k.py │ ├── pvig-tiny_8xb128_in1k.py │ ├── vig-base_8xb128_in1k.py │ ├── vig-small_8xb128_in1k.py │ └── vig-tiny_8xb128_in1k.py ├── vision_transformer │ ├── README.md │ ├── metafile.yml │ ├── vit-base-p16_ft-4xb544-ipu_in1k.py │ ├── vit-base-p16_ft-64xb64_in1k-384.py │ ├── vit-base-p16_pt-32xb128-mae_in1k-224.py │ ├── vit-base-p16_pt-64xb64_in1k-224.py │ ├── vit-base-p32_ft-64xb64_in1k-384.py │ ├── vit-base-p32_pt-64xb64_in1k-224.py │ ├── vit-large-p16_ft-64xb64_in1k-384.py │ ├── vit-large-p16_pt-64xb64_in1k-224.py │ ├── vit-large-p32_ft-64xb64_in1k-384.py │ └── vit-large-p32_pt-64xb64_in1k-224.py ├── wrn │ ├── README.md │ ├── metafile.yml │ ├── wide-resnet101_8xb32_in1k.py │ ├── wide-resnet50_8xb32_in1k.py │ └── wide-resnet50_timm_8xb32_in1k.py └── xcit │ ├── README.md │ ├── metafile.yml │ ├── xcit-large-24-p16_8xb128_in1k-384px.py │ ├── xcit-large-24-p16_8xb128_in1k.py │ ├── xcit-large-24-p8_8xb128_in1k-384px.py │ ├── xcit-large-24-p8_8xb128_in1k.py │ ├── xcit-medium-24-p16_8xb128_in1k-384px.py │ ├── xcit-medium-24-p16_8xb128_in1k.py │ ├── xcit-medium-24-p8_8xb128_in1k-384px.py │ ├── xcit-medium-24-p8_8xb128_in1k.py │ ├── xcit-nano-12-p16_8xb128_in1k-384px.py │ ├── xcit-nano-12-p16_8xb128_in1k.py │ ├── xcit-nano-12-p8_8xb128_in1k-384px.py │ ├── xcit-nano-12-p8_8xb128_in1k.py │ ├── xcit-small-12-p16_8xb128_in1k-384px.py │ ├── xcit-small-12-p16_8xb128_in1k.py │ ├── xcit-small-12-p8_8xb128_in1k-384px.py │ ├── xcit-small-12-p8_8xb128_in1k.py │ ├── xcit-small-24-p16_8xb128_in1k-384px.py │ ├── xcit-small-24-p16_8xb128_in1k.py │ ├── xcit-small-24-p8_8xb128_in1k-384px.py │ ├── xcit-small-24-p8_8xb128_in1k.py │ ├── xcit-tiny-12-p16_8xb128_in1k-384px.py │ ├── xcit-tiny-12-p16_8xb128_in1k.py │ ├── xcit-tiny-12-p8_8xb128_in1k-384px.py │ ├── xcit-tiny-12-p8_8xb128_in1k.py │ ├── xcit-tiny-24-p16_8xb128_in1k-384px.py │ ├── xcit-tiny-24-p16_8xb128_in1k.py │ ├── xcit-tiny-24-p8_8xb128_in1k-384px.py │ └── xcit-tiny-24-p8_8xb128_in1k.py ├── demo ├── bird.JPEG ├── cat-dog.png ├── demo.JPEG ├── dog.jpg ├── image_demo.py └── ipu_train_example.sh ├── docker ├── Dockerfile └── serve │ ├── Dockerfile │ ├── config.properties │ └── entrypoint.sh ├── docs ├── en │ ├── Makefile │ ├── _static │ │ ├── css │ │ │ └── readthedocs.css │ │ ├── image │ │ │ ├── confusion-matrix.png │ │ │ ├── mmcls-logo.png │ │ │ └── tools │ │ │ │ └── analysis │ │ │ │ └── analyze_log.jpg │ │ └── js │ │ │ └── custom.js │ ├── _templates │ │ ├── 404.html │ │ ├── autosummary │ │ │ └── class.rst │ │ ├── callable.rst │ │ └── data_transform.rst │ ├── advanced_guides │ │ ├── convention.md │ │ ├── data_flow.md │ │ ├── datasets.md │ │ ├── evaluation.md │ │ ├── modules.md │ │ ├── pipeline.md │ │ ├── runtime.md │ │ └── schedule.md │ ├── api │ │ ├── apis.rst │ │ ├── data_process.rst │ │ ├── datasets.rst │ │ ├── engine.rst │ │ ├── evaluation.rst │ │ ├── models.rst │ │ ├── structures.rst │ │ ├── utils.rst │ │ └── visualization.rst │ ├── conf.py │ ├── device │ │ └── npu.md │ ├── docutils.conf │ ├── get_started.md │ ├── index.rst │ ├── migration.md │ ├── notes │ │ ├── changelog.md │ │ ├── faq.md │ │ └── projects.md │ ├── stat.py │ ├── useful_tools │ │ ├── cam_visualization.md │ │ ├── complexity_analysis.md │ │ ├── dataset_visualization.md │ │ ├── log_result_analysis.md │ │ ├── model_serving.md │ │ ├── print_config.md │ │ ├── scheduler_visualization.md │ │ └── verify_dataset.md │ └── user_guides │ │ ├── config.md │ │ ├── dataset_prepare.md │ │ ├── finetune.md │ │ ├── inference.md │ │ └── train_test.md └── zh_CN │ ├── Makefile │ ├── _static │ ├── css │ │ └── readthedocs.css │ ├── image │ │ ├── mmcls-logo.png │ │ └── tools │ │ │ └── analysis │ │ │ └── analyze_log.jpg │ └── js │ │ └── custom.js │ ├── _templates │ ├── 404.html │ ├── autosummary │ │ └── class.rst │ ├── callable.rst │ └── data_transform.rst │ ├── advanced_guides │ ├── convention.md │ ├── data_flow.md │ ├── datasets.md │ ├── evaluation.md │ ├── modules.md │ ├── pipeline.md │ ├── runtime.md │ └── schedule.md │ ├── conf.py │ ├── device │ └── npu_zh.md │ ├── docutils.conf │ ├── get_started.md │ ├── index.rst │ ├── locales │ └── zh_CN │ │ └── LC_MESSAGES │ │ ├── api.po │ │ └── papers.po │ ├── migration.md │ ├── notes │ ├── contribution_guide.md │ ├── faq.md │ └── projects.md │ ├── stat.py │ ├── useful_tools │ ├── cam_visualization.md │ ├── complexity_analysis.md │ ├── dataset_visualization.md │ ├── log_result_analysis.md │ ├── model_serving.md │ ├── print_config.md │ ├── scheduler_visualization.md │ └── verify_dataset.md │ └── user_guides │ ├── config.md │ ├── dataset_prepare.md │ ├── finetune.md │ ├── inference.md │ └── train_test.md ├── imgs ├── ADE-20K.png ├── IN-1K.png ├── MS-COCO.png └── teaser.png ├── mmcls.egg-info ├── PKG-INFO ├── SOURCES.txt ├── dependency_links.txt ├── not-zip-safe ├── requires.txt └── top_level.txt ├── mmcls ├── .mim │ ├── configs │ │ ├── _base_ │ │ │ ├── datasets │ │ │ │ ├── cifar100_bs16.py │ │ │ │ ├── cifar10_bs16.py │ │ │ │ ├── cub_bs8_384.py │ │ │ │ ├── cub_bs8_448.py │ │ │ │ ├── imagenet21k_bs128.py │ │ │ │ ├── imagenet_bs128_mbv3.py │ │ │ │ ├── imagenet_bs128_poolformer_medium_224.py │ │ │ │ ├── imagenet_bs128_poolformer_small_224.py │ │ │ │ ├── imagenet_bs128_revvit_224.py │ │ │ │ ├── imagenet_bs128_vig_224.py │ │ │ │ ├── imagenet_bs16_eva_196.py │ │ │ │ ├── imagenet_bs16_eva_336.py │ │ │ │ ├── imagenet_bs16_eva_560.py │ │ │ │ ├── imagenet_bs16_pil_bicubic_384.py │ │ │ │ ├── imagenet_bs256_davit_224.py │ │ │ │ ├── imagenet_bs256_levit_224.py │ │ │ │ ├── imagenet_bs256_rsb_a12.py │ │ │ │ ├── imagenet_bs256_rsb_a3.py │ │ │ │ ├── imagenet_bs32.py │ │ │ │ ├── imagenet_bs32_pil_bicubic.py │ │ │ │ ├── imagenet_bs32_pil_resize.py │ │ │ │ ├── imagenet_bs32_swin_224.py │ │ │ │ ├── imagenet_bs64.py │ │ │ │ ├── imagenet_bs64_autoaug.py │ │ │ │ ├── imagenet_bs64_clip_224.py │ │ │ │ ├── imagenet_bs64_clip_384.py │ │ │ │ ├── imagenet_bs64_clip_448.py │ │ │ │ ├── imagenet_bs64_convmixer_224.py │ │ │ │ ├── imagenet_bs64_deit3_224.py │ │ │ │ ├── imagenet_bs64_deit3_384.py │ │ │ │ ├── imagenet_bs64_edgenext_256.py │ │ │ │ ├── imagenet_bs64_mixer_224.py │ │ │ │ ├── imagenet_bs64_pil_resize.py │ │ │ │ ├── imagenet_bs64_pil_resize_autoaug.py │ │ │ │ ├── imagenet_bs64_swin_224.py │ │ │ │ ├── imagenet_bs64_swin_256.py │ │ │ │ ├── imagenet_bs64_swin_384.py │ │ │ │ ├── imagenet_bs64_t2t_224.py │ │ │ │ ├── imagenet_bs8_pil_bicubic_320.py │ │ │ │ ├── inshop_bs32_448.py │ │ │ │ ├── pipelines │ │ │ │ │ ├── auto_aug.py │ │ │ │ │ └── rand_aug.py │ │ │ │ └── voc_bs16.py │ │ │ ├── default_runtime.py │ │ │ ├── models │ │ │ │ ├── conformer │ │ │ │ │ ├── base-p16.py │ │ │ │ │ ├── small-p16.py │ │ │ │ │ ├── small-p32.py │ │ │ │ │ └── tiny-p16.py │ │ │ │ ├── convmixer │ │ │ │ │ ├── convmixer-1024-20.py │ │ │ │ │ ├── convmixer-1536-20.py │ │ │ │ │ └── convmixer-768-32.py │ │ │ │ ├── convnext │ │ │ │ │ ├── convnext-base.py │ │ │ │ │ ├── convnext-large.py │ │ │ │ │ ├── convnext-small.py │ │ │ │ │ ├── convnext-tiny.py │ │ │ │ │ └── convnext-xlarge.py │ │ │ │ ├── convnext_v2 │ │ │ │ │ ├── atto.py │ │ │ │ │ ├── base.py │ │ │ │ │ ├── femto.py │ │ │ │ │ ├── huge.py │ │ │ │ │ ├── large.py │ │ │ │ │ ├── nano.py │ │ │ │ │ ├── pico.py │ │ │ │ │ └── tiny.py │ │ │ │ ├── davit │ │ │ │ │ ├── davit-base.py │ │ │ │ │ ├── davit-small.py │ │ │ │ │ └── davit-tiny.py │ │ │ │ ├── deit3 │ │ │ │ │ ├── deit3-base-p16-224.py │ │ │ │ │ ├── deit3-base-p16-384.py │ │ │ │ │ ├── deit3-huge-p14-224.py │ │ │ │ │ ├── deit3-large-p16-224.py │ │ │ │ │ ├── deit3-large-p16-384.py │ │ │ │ │ ├── deit3-medium-p16-224.py │ │ │ │ │ ├── deit3-small-p16-224.py │ │ │ │ │ └── deit3-small-p16-384.py │ │ │ │ ├── densenet │ │ │ │ │ ├── densenet121.py │ │ │ │ │ ├── densenet161.py │ │ │ │ │ ├── densenet169.py │ │ │ │ │ └── densenet201.py │ │ │ │ ├── edgenext │ │ │ │ │ ├── edgenext-base.py │ │ │ │ │ ├── edgenext-small.py │ │ │ │ │ ├── edgenext-xsmall.py │ │ │ │ │ └── edgenext-xxsmall.py │ │ │ │ ├── efficientformer-l1.py │ │ │ │ ├── efficientnet_b0.py │ │ │ │ ├── efficientnet_b1.py │ │ │ │ ├── efficientnet_b2.py │ │ │ │ ├── efficientnet_b3.py │ │ │ │ ├── efficientnet_b4.py │ │ │ │ ├── efficientnet_b5.py │ │ │ │ ├── efficientnet_b6.py │ │ │ │ ├── efficientnet_b7.py │ │ │ │ ├── efficientnet_b8.py │ │ │ │ ├── efficientnet_em.py │ │ │ │ ├── efficientnet_es.py │ │ │ │ ├── efficientnet_l2.py │ │ │ │ ├── efficientnet_v2 │ │ │ │ │ ├── efficientnetv2_b0.py │ │ │ │ │ ├── efficientnetv2_b1.py │ │ │ │ │ ├── efficientnetv2_b2.py │ │ │ │ │ ├── efficientnetv2_b3.py │ │ │ │ │ ├── efficientnetv2_l.py │ │ │ │ │ ├── efficientnetv2_m.py │ │ │ │ │ ├── efficientnetv2_s.py │ │ │ │ │ └── efficientnetv2_xl.py │ │ │ │ ├── eva │ │ │ │ │ ├── eva-g.py │ │ │ │ │ └── eva-l.py │ │ │ │ ├── hornet │ │ │ │ │ ├── hornet-base-gf.py │ │ │ │ │ ├── hornet-base.py │ │ │ │ │ ├── hornet-large-gf.py │ │ │ │ │ ├── hornet-large-gf384.py │ │ │ │ │ ├── hornet-large.py │ │ │ │ │ ├── hornet-small-gf.py │ │ │ │ │ ├── hornet-small.py │ │ │ │ │ ├── hornet-tiny-gf.py │ │ │ │ │ └── hornet-tiny.py │ │ │ │ ├── hrnet │ │ │ │ │ ├── hrnet-w18.py │ │ │ │ │ ├── hrnet-w30.py │ │ │ │ │ ├── hrnet-w32.py │ │ │ │ │ ├── hrnet-w40.py │ │ │ │ │ ├── hrnet-w44.py │ │ │ │ │ ├── hrnet-w48.py │ │ │ │ │ └── hrnet-w64.py │ │ │ │ ├── inception_v3.py │ │ │ │ ├── levit-256-p16.py │ │ │ │ ├── mixmim │ │ │ │ │ └── mixmim_base.py │ │ │ │ ├── mlp_mixer_base_patch16.py │ │ │ │ ├── mlp_mixer_large_patch16.py │ │ │ │ ├── mobilenet_v1_1x.py │ │ │ │ ├── mobilenet_v2_1x.py │ │ │ │ ├── mobilenet_v3 │ │ │ │ │ ├── mobilenet_v3_large_imagenet.py │ │ │ │ │ ├── mobilenet_v3_small_050_imagenet.py │ │ │ │ │ ├── mobilenet_v3_small_075_imagenet.py │ │ │ │ │ ├── mobilenet_v3_small_cifar.py │ │ │ │ │ └── mobilenet_v3_small_imagenet.py │ │ │ │ ├── mobileone │ │ │ │ │ ├── mobileone_s0.py │ │ │ │ │ ├── mobileone_s1.py │ │ │ │ │ ├── mobileone_s2.py │ │ │ │ │ ├── mobileone_s3.py │ │ │ │ │ └── mobileone_s4.py │ │ │ │ ├── mobilevit │ │ │ │ │ ├── mobilevit_s.py │ │ │ │ │ ├── mobilevit_xs.py │ │ │ │ │ └── mobilevit_xxs.py │ │ │ │ ├── mvit │ │ │ │ │ ├── mvitv2-base.py │ │ │ │ │ ├── mvitv2-large.py │ │ │ │ │ ├── mvitv2-small.py │ │ │ │ │ └── mvitv2-tiny.py │ │ │ │ ├── poolformer │ │ │ │ │ ├── poolformer_m36.py │ │ │ │ │ ├── poolformer_m48.py │ │ │ │ │ ├── poolformer_s12.py │ │ │ │ │ ├── poolformer_s24.py │ │ │ │ │ └── poolformer_s36.py │ │ │ │ ├── regnet │ │ │ │ │ ├── regnetx_1.6gf.py │ │ │ │ │ ├── regnetx_12gf.py │ │ │ │ │ ├── regnetx_3.2gf.py │ │ │ │ │ ├── regnetx_4.0gf.py │ │ │ │ │ ├── regnetx_400mf.py │ │ │ │ │ ├── regnetx_6.4gf.py │ │ │ │ │ ├── regnetx_8.0gf.py │ │ │ │ │ └── regnetx_800mf.py │ │ │ │ ├── replknet-31B_in1k.py │ │ │ │ ├── replknet-31L_in1k.py │ │ │ │ ├── replknet-XL_in1k.py │ │ │ │ ├── repmlp-base_224.py │ │ │ │ ├── repvgg-A0_in1k.py │ │ │ │ ├── repvgg-B3_lbs-mixup_in1k.py │ │ │ │ ├── res2net101-w26-s4.py │ │ │ │ ├── res2net50-w14-s8.py │ │ │ │ ├── res2net50-w26-s4.py │ │ │ │ ├── res2net50-w26-s6.py │ │ │ │ ├── res2net50-w26-s8.py │ │ │ │ ├── res2net50-w48-s2.py │ │ │ │ ├── resnest101.py │ │ │ │ ├── resnest200.py │ │ │ │ ├── resnest269.py │ │ │ │ ├── resnest50.py │ │ │ │ ├── resnet101.py │ │ │ │ ├── resnet101_cifar.py │ │ │ │ ├── resnet152.py │ │ │ │ ├── resnet152_cifar.py │ │ │ │ ├── resnet18.py │ │ │ │ ├── resnet18_cifar.py │ │ │ │ ├── resnet34.py │ │ │ │ ├── resnet34_cifar.py │ │ │ │ ├── resnet34_gem.py │ │ │ │ ├── resnet50.py │ │ │ │ ├── resnet50_cifar.py │ │ │ │ ├── resnet50_cifar_cutmix.py │ │ │ │ ├── resnet50_cifar_mixup.py │ │ │ │ ├── resnet50_cutmix.py │ │ │ │ ├── resnet50_label_smooth.py │ │ │ │ ├── resnet50_mixup.py │ │ │ │ ├── resnetv1c50.py │ │ │ │ ├── resnetv1d101.py │ │ │ │ ├── resnetv1d152.py │ │ │ │ ├── resnetv1d50.py │ │ │ │ ├── resnext101_32x4d.py │ │ │ │ ├── resnext101_32x8d.py │ │ │ │ ├── resnext152_32x4d.py │ │ │ │ ├── resnext50_32x4d.py │ │ │ │ ├── revvit │ │ │ │ │ ├── revvit-base.py │ │ │ │ │ └── revvit-small.py │ │ │ │ ├── seresnet101.py │ │ │ │ ├── seresnet50.py │ │ │ │ ├── seresnext101_32x4d.py │ │ │ │ ├── seresnext50_32x4d.py │ │ │ │ ├── shufflenet_v1_1x.py │ │ │ │ ├── shufflenet_v2_1x.py │ │ │ │ ├── swin_transformer │ │ │ │ │ ├── base_224.py │ │ │ │ │ ├── base_384.py │ │ │ │ │ ├── large_224.py │ │ │ │ │ ├── large_384.py │ │ │ │ │ ├── small_224.py │ │ │ │ │ └── tiny_224.py │ │ │ │ ├── swin_transformer_v2 │ │ │ │ │ ├── base_256.py │ │ │ │ │ ├── base_384.py │ │ │ │ │ ├── large_256.py │ │ │ │ │ ├── large_384.py │ │ │ │ │ ├── small_256.py │ │ │ │ │ └── tiny_256.py │ │ │ │ ├── t2t-vit-t-14.py │ │ │ │ ├── t2t-vit-t-19.py │ │ │ │ ├── t2t-vit-t-24.py │ │ │ │ ├── tinyvit │ │ │ │ │ ├── tinyvit-11m.py │ │ │ │ │ ├── tinyvit-21m.py │ │ │ │ │ └── tinyvit-5m.py │ │ │ │ ├── tnt_s_patch16_224.py │ │ │ │ ├── twins_pcpvt_base.py │ │ │ │ ├── twins_svt_base.py │ │ │ │ ├── van │ │ │ │ │ ├── van_base.py │ │ │ │ │ ├── van_large.py │ │ │ │ │ ├── van_small.py │ │ │ │ │ └── van_tiny.py │ │ │ │ ├── vgg11.py │ │ │ │ ├── vgg11bn.py │ │ │ │ ├── vgg13.py │ │ │ │ ├── vgg13bn.py │ │ │ │ ├── vgg16.py │ │ │ │ ├── vgg16bn.py │ │ │ │ ├── vgg19.py │ │ │ │ ├── vgg19bn.py │ │ │ │ ├── vig │ │ │ │ │ ├── pyramid_vig_base.py │ │ │ │ │ ├── pyramid_vig_medium.py │ │ │ │ │ ├── pyramid_vig_small.py │ │ │ │ │ ├── pyramid_vig_tiny.py │ │ │ │ │ ├── vig_base.py │ │ │ │ │ ├── vig_small.py │ │ │ │ │ └── vig_tiny.py │ │ │ │ ├── vit-base-p16.py │ │ │ │ ├── vit-base-p32.py │ │ │ │ ├── vit-large-p16.py │ │ │ │ ├── vit-large-p32.py │ │ │ │ └── wide-resnet50.py │ │ │ └── schedules │ │ │ │ ├── cifar10_bs128.py │ │ │ │ ├── cub_bs64.py │ │ │ │ ├── imagenet_bs1024_adamw_conformer.py │ │ │ │ ├── imagenet_bs1024_adamw_resnet.py │ │ │ │ ├── imagenet_bs1024_adamw_revvit.py │ │ │ │ ├── imagenet_bs1024_adamw_swin.py │ │ │ │ ├── imagenet_bs1024_coslr.py │ │ │ │ ├── imagenet_bs1024_linearlr_bn_nowd.py │ │ │ │ ├── imagenet_bs2048.py │ │ │ │ ├── imagenet_bs2048_AdamW.py │ │ │ │ ├── imagenet_bs2048_adamw_levit.py │ │ │ │ ├── imagenet_bs2048_coslr.py │ │ │ │ ├── imagenet_bs2048_rsb.py │ │ │ │ ├── imagenet_bs256.py │ │ │ │ ├── imagenet_bs256_140e.py │ │ │ │ ├── imagenet_bs256_200e_coslr_warmup.py │ │ │ │ ├── imagenet_bs256_coslr.py │ │ │ │ ├── imagenet_bs256_coslr_coswd_300e.py │ │ │ │ ├── imagenet_bs256_epochstep.py │ │ │ │ └── imagenet_bs4096_AdamW.py │ │ ├── arcface │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ └── resnet50-arcface_8xb32_inshop.py │ │ ├── beit │ │ │ ├── README.md │ │ │ ├── beit-base-p16_8xb64_in1k.py │ │ │ └── metafile.yml │ │ ├── beitv2 │ │ │ ├── README.md │ │ │ ├── beitv2-base-p16_8xb64_in1k.py │ │ │ └── metafile.yml │ │ ├── clip │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── vit-base-p16_pt-64xb64_in1k-384px.py │ │ │ ├── vit-base-p16_pt-64xb64_in1k-448px.py │ │ │ ├── vit-base-p16_pt-64xb64_in1k.py │ │ │ ├── vit-base-p32_pt-64xb64_in1k-384px.py │ │ │ ├── vit-base-p32_pt-64xb64_in1k-448px.py │ │ │ └── vit-base-p32_pt-64xb64_in1k.py │ │ ├── conformer │ │ │ ├── README.md │ │ │ ├── conformer-base-p16_8xb128_in1k.py │ │ │ ├── conformer-small-p16_8xb128_in1k.py │ │ │ ├── conformer-small-p32_8xb128_in1k.py │ │ │ ├── conformer-tiny-p16_8xb128_in1k.py │ │ │ └── metafile.yml │ │ ├── convmixer │ │ │ ├── README.md │ │ │ ├── convmixer-1024-20_10xb64_in1k.py │ │ │ ├── convmixer-1536-20_10xb64_in1k.py │ │ │ ├── convmixer-768-32_10xb64_in1k.py │ │ │ └── metafile.yml │ │ ├── convnext │ │ │ ├── README.md │ │ │ ├── convnext-base_32xb128_in1k-384px.py │ │ │ ├── convnext-base_32xb128_in1k.py │ │ │ ├── convnext-base_32xb128_in21k.py │ │ │ ├── convnext-large_64xb64_in1k-384px.py │ │ │ ├── convnext-large_64xb64_in1k.py │ │ │ ├── convnext-large_64xb64_in21k.py │ │ │ ├── convnext-small_32xb128_in1k-384px.py │ │ │ ├── convnext-small_32xb128_in1k.py │ │ │ ├── convnext-tiny_32xb128_in1k-384px.py │ │ │ ├── convnext-tiny_32xb128_in1k.py │ │ │ ├── convnext-xlarge_64xb64_in1k-384px.py │ │ │ ├── convnext-xlarge_64xb64_in1k.py │ │ │ ├── convnext-xlarge_64xb64_in21k.py │ │ │ └── metafile.yml │ │ ├── convnext_v2 │ │ │ ├── README.md │ │ │ ├── convnext-v2-atto_32xb32_in1k.py │ │ │ ├── convnext-v2-base_32xb32_in1k-384px.py │ │ │ ├── convnext-v2-base_32xb32_in1k.py │ │ │ ├── convnext-v2-femto_32xb32_in1k.py │ │ │ ├── convnext-v2-huge_32xb32_in1k-384px.py │ │ │ ├── convnext-v2-huge_32xb32_in1k-512px.py │ │ │ ├── convnext-v2-huge_32xb32_in1k.py │ │ │ ├── convnext-v2-large_32xb32_in1k-384px.py │ │ │ ├── convnext-v2-large_32xb32_in1k.py │ │ │ ├── convnext-v2-nano_32xb32_in1k-384px.py │ │ │ ├── convnext-v2-nano_32xb32_in1k.py │ │ │ ├── convnext-v2-pico_32xb32_in1k.py │ │ │ ├── convnext-v2-tiny_32xb32_in1k-384px.py │ │ │ ├── convnext-v2-tiny_32xb32_in1k.py │ │ │ └── metafile.yml │ │ ├── cspnet │ │ │ ├── README.md │ │ │ ├── cspdarknet50_8xb32_in1k.py │ │ │ ├── cspresnet50_8xb32_in1k.py │ │ │ ├── cspresnext50_8xb32_in1k.py │ │ │ └── metafile.yml │ │ ├── csra │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ └── resnet101-csra_1xb16_voc07-448px.py │ │ ├── davit │ │ │ ├── README.md │ │ │ ├── davit-base_4xb256_in1k.py │ │ │ ├── davit-small_4xb256_in1k.py │ │ │ ├── davit-tiny_4xb256_in1k.py │ │ │ └── metafile.yml │ │ ├── deit │ │ │ ├── README.md │ │ │ ├── deit-base-distilled_ft-16xb32_in1k-384px.py │ │ │ ├── deit-base-distilled_pt-16xb64_in1k.py │ │ │ ├── deit-base_ft-16xb32_in1k-384px.py │ │ │ ├── deit-base_pt-16xb64_in1k.py │ │ │ ├── deit-small-distilled_pt-4xb256_in1k.py │ │ │ ├── deit-small_pt-4xb256_in1k.py │ │ │ ├── deit-tiny-distilled_pt-4xb256_in1k.py │ │ │ ├── deit-tiny_pt-4xb256_in1k.py │ │ │ └── metafile.yml │ │ ├── deit3 │ │ │ ├── README.md │ │ │ ├── deit3-base-p16_64xb32_in1k-384px.py │ │ │ ├── deit3-base-p16_64xb64_in1k.py │ │ │ ├── deit3-huge-p14_64xb32_in1k.py │ │ │ ├── deit3-large-p16_64xb16_in1k-384px.py │ │ │ ├── deit3-large-p16_64xb64_in1k.py │ │ │ ├── deit3-medium-p16_64xb64_in1k.py │ │ │ ├── deit3-small-p16_64xb64_in1k-384px.py │ │ │ ├── deit3-small-p16_64xb64_in1k.py │ │ │ └── metafile.yml │ │ ├── densenet │ │ │ ├── README.md │ │ │ ├── densenet121_4xb256_in1k.py │ │ │ ├── densenet161_4xb256_in1k.py │ │ │ ├── densenet169_4xb256_in1k.py │ │ │ ├── densenet201_4xb256_in1k.py │ │ │ └── metafile.yml │ │ ├── distillers │ │ │ ├── Former2CNN │ │ │ │ ├── AttentionFD_swin-s_distill_res18_img.py │ │ │ │ ├── T2S_deit-s_distill_resnet18_img.py │ │ │ │ ├── afd_deit-b3_distill_res18_img_w_token.py │ │ │ │ ├── attention_deit-s_distill_resnet18_img_pe_layer_4_teacher_downsampling_corr.py │ │ │ │ ├── attention_deit-s_distill_resnet18_img_pos_embed_before_stage4.py │ │ │ │ ├── attention_deit-s_distill_resnet18_img_pos_embed_before_stage4_fpp.py │ │ │ │ ├── attention_deit-s_distill_resnet18_img_trainable_pos_embed_selfattent.py │ │ │ │ ├── baseline_swin-s_distill_res18_img.py │ │ │ │ ├── deit-b3_distill_res18_img.py │ │ │ │ ├── deit-s3_distill_res18_img.py │ │ │ │ ├── fd_deit-b3_distill_res18_img_w_token.py │ │ │ │ ├── mfd_deit-s_distill_res18_img.py │ │ │ │ └── tcd_deit-b3_distill_res18_img.py │ │ │ ├── cifar100 │ │ │ │ ├── res18_sd_cifar.py │ │ │ │ └── res34_distill_res18_cifar.py │ │ │ └── imagenet │ │ │ │ ├── FD_multistage_swin-s_distill_res18_img.py │ │ │ │ ├── deit-b3_distill_deit-s_img.py │ │ │ │ ├── deit-l3_distill_deit-b_img.py │ │ │ │ ├── deit-s3_distill_deit-t_img.py │ │ │ │ ├── deit-s_distill_deit-t_img.py │ │ │ │ ├── deit-s_distill_resnet18_img.py │ │ │ │ ├── deit-t_sd_img.py │ │ │ │ ├── fd_swin_aug_swin-s_distill_res18_img.py │ │ │ │ ├── mfd_swin-s_distill_res18_img.py │ │ │ │ ├── mv1_sd_img.py │ │ │ │ ├── mv2_sd_img.py │ │ │ │ ├── regnet-1.6gf_sd_img.py │ │ │ │ ├── res101_sd_img.py │ │ │ │ ├── res18_sd_img.py │ │ │ │ ├── res34_distill_res18_img.py │ │ │ │ ├── res50_distill_mv1_img.py │ │ │ │ ├── res50_sd_img.py │ │ │ │ ├── shuffv2_sd_img.py │ │ │ │ └── swin-t_sd_img.py │ │ ├── edgenext │ │ │ ├── README.md │ │ │ ├── edgenext-base_8xb256-usi_in1k.py │ │ │ ├── edgenext-base_8xb256_in1k.py │ │ │ ├── edgenext-small_8xb256-usi_in1k.py │ │ │ ├── edgenext-small_8xb256_in1k.py │ │ │ ├── edgenext-xsmall_8xb256_in1k.py │ │ │ ├── edgenext-xxsmall_8xb256_in1k.py │ │ │ └── metafile.yml │ │ ├── efficientformer │ │ │ ├── README.md │ │ │ ├── efficientformer-l1_8xb128_in1k.py │ │ │ ├── efficientformer-l3_8xb128_in1k.py │ │ │ ├── efficientformer-l7_8xb128_in1k.py │ │ │ └── metafile.yml │ │ ├── efficientnet │ │ │ ├── README.md │ │ │ ├── efficientnet-b0_8xb32-01norm_in1k.py │ │ │ ├── efficientnet-b0_8xb32_in1k.py │ │ │ ├── efficientnet-b1_8xb32-01norm_in1k.py │ │ │ ├── efficientnet-b1_8xb32_in1k.py │ │ │ ├── efficientnet-b2_8xb32-01norm_in1k.py │ │ │ ├── efficientnet-b2_8xb32_in1k.py │ │ │ ├── efficientnet-b3_8xb32-01norm_in1k.py │ │ │ ├── efficientnet-b3_8xb32_in1k.py │ │ │ ├── efficientnet-b4_8xb32-01norm_in1k.py │ │ │ ├── efficientnet-b4_8xb32_in1k.py │ │ │ ├── efficientnet-b5_8xb32-01norm_in1k.py │ │ │ ├── efficientnet-b5_8xb32_in1k.py │ │ │ ├── efficientnet-b6_8xb32-01norm_in1k.py │ │ │ ├── efficientnet-b6_8xb32_in1k.py │ │ │ ├── efficientnet-b7_8xb32-01norm_in1k.py │ │ │ ├── efficientnet-b7_8xb32_in1k.py │ │ │ ├── efficientnet-b8_8xb32-01norm_in1k.py │ │ │ ├── efficientnet-b8_8xb32_in1k.py │ │ │ ├── efficientnet-em_8xb32-01norm_in1k.py │ │ │ ├── efficientnet-es_8xb32-01norm_in1k.py │ │ │ ├── efficientnet-l2_8xb32_in1k-475px.py │ │ │ ├── efficientnet-l2_8xb8_in1k-800px.py │ │ │ └── metafile.yml │ │ ├── efficientnet_v2 │ │ │ ├── README.md │ │ │ ├── efficientnetv2-b0_8xb32_in1k.py │ │ │ ├── efficientnetv2-b1_8xb32_in1k.py │ │ │ ├── efficientnetv2-b2_8xb32_in1k.py │ │ │ ├── efficientnetv2-b3_8xb32_in1k.py │ │ │ ├── efficientnetv2-l_8xb32_in1k-480px.py │ │ │ ├── efficientnetv2-l_8xb32_in21k.py │ │ │ ├── efficientnetv2-m_8xb32_in1k-480px.py │ │ │ ├── efficientnetv2-m_8xb32_in21k.py │ │ │ ├── efficientnetv2-s_8xb32_in1k-384px.py │ │ │ ├── efficientnetv2-s_8xb32_in21k.py │ │ │ ├── efficientnetv2-xl_8xb32_in1k-512px.py │ │ │ ├── efficientnetv2-xl_8xb32_in21k.py │ │ │ └── metafile.yml │ │ ├── eva │ │ │ ├── README.md │ │ │ ├── eva-g-p14_8xb16_in1k-336px.py │ │ │ ├── eva-g-p14_8xb16_in1k-560px.py │ │ │ ├── eva-g-p14_headless.py │ │ │ ├── eva-g-p16_headless.py │ │ │ ├── eva-l-p14_8xb16_in1k-196px.py │ │ │ ├── eva-l-p14_8xb16_in1k-336px.py │ │ │ ├── eva-l-p14_headless.py │ │ │ └── metafile.yml │ │ ├── hornet │ │ │ ├── README.md │ │ │ ├── hornet-base-gf_8xb64_in1k.py │ │ │ ├── hornet-base_8xb64_in1k.py │ │ │ ├── hornet-small-gf_8xb64_in1k.py │ │ │ ├── hornet-small_8xb64_in1k.py │ │ │ ├── hornet-tiny-gf_8xb128_in1k.py │ │ │ ├── hornet-tiny_8xb128_in1k.py │ │ │ └── metafile.yml │ │ ├── hrnet │ │ │ ├── README.md │ │ │ ├── hrnet-w18_4xb32_in1k.py │ │ │ ├── hrnet-w30_4xb32_in1k.py │ │ │ ├── hrnet-w32_4xb32_in1k.py │ │ │ ├── hrnet-w40_4xb32_in1k.py │ │ │ ├── hrnet-w44_4xb32_in1k.py │ │ │ ├── hrnet-w48_4xb32_in1k.py │ │ │ ├── hrnet-w64_4xb32_in1k.py │ │ │ └── metafile.yml │ │ ├── inception_v3 │ │ │ ├── README.md │ │ │ ├── inception-v3_8xb32_in1k.py │ │ │ └── metafile.yml │ │ ├── lenet │ │ │ ├── README.md │ │ │ └── lenet5_mnist.py │ │ ├── levit │ │ │ ├── README.md │ │ │ ├── deploy │ │ │ │ ├── levit-128_8xb256_in1k.py │ │ │ │ ├── levit-128s_8xb256_in1k.py │ │ │ │ ├── levit-192_8xb256_in1k.py │ │ │ │ ├── levit-256_8xb256_in1k.py │ │ │ │ └── levit-384_8xb256_in1k.py │ │ │ ├── levit-128_8xb256_in1k.py │ │ │ ├── levit-128s_8xb256_in1k.py │ │ │ ├── levit-192_8xb256_in1k.py │ │ │ ├── levit-256_8xb256_in1k.py │ │ │ ├── levit-384_8xb256_in1k.py │ │ │ └── metafile.yml │ │ ├── mixmim │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ └── mixmim-base_8xb64_in1k.py │ │ ├── mlp_mixer │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── mlp-mixer-base-p16_64xb64_in1k.py │ │ │ └── mlp-mixer-large-p16_64xb64_in1k.py │ │ ├── mobilenet_v1 │ │ │ └── mobilenet_v1.py │ │ ├── mobilenet_v2 │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ └── mobilenet-v2_8xb32_in1k.py │ │ ├── mobilenet_v3 │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── mobilenet-v3-large_8xb128_in1k.py │ │ │ ├── mobilenet-v3-small-050_8xb128_in1k.py │ │ │ ├── mobilenet-v3-small-075_8xb128_in1k.py │ │ │ ├── mobilenet-v3-small_8xb128_in1k.py │ │ │ └── mobilenet-v3-small_8xb16_cifar10.py │ │ ├── mobileone │ │ │ ├── README.md │ │ │ ├── deploy │ │ │ │ ├── mobileone-s0_deploy_8xb32_in1k.py │ │ │ │ ├── mobileone-s1_deploy_8xb32_in1k.py │ │ │ │ ├── mobileone-s2_deploy_8xb32_in1k.py │ │ │ │ ├── mobileone-s3_deploy_8xb32_in1k.py │ │ │ │ └── mobileone-s4_deploy_8xb32_in1k.py │ │ │ ├── metafile.yml │ │ │ ├── mobileone-s0_8xb32_in1k.py │ │ │ ├── mobileone-s1_8xb32_in1k.py │ │ │ ├── mobileone-s2_8xb32_in1k.py │ │ │ ├── mobileone-s3_8xb32_in1k.py │ │ │ └── mobileone-s4_8xb32_in1k.py │ │ ├── mobilevit │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── mobilevit-small_8xb128_in1k.py │ │ │ ├── mobilevit-xsmall_8xb128_in1k.py │ │ │ └── mobilevit-xxsmall_8xb128_in1k.py │ │ ├── mvit │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── mvitv2-base_8xb256_in1k.py │ │ │ ├── mvitv2-large_8xb256_in1k.py │ │ │ ├── mvitv2-small_8xb256_in1k.py │ │ │ └── mvitv2-tiny_8xb256_in1k.py │ │ ├── poolformer │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── poolformer-m36_32xb128_in1k.py │ │ │ ├── poolformer-m48_32xb128_in1k.py │ │ │ ├── poolformer-s12_32xb128_in1k.py │ │ │ ├── poolformer-s24_32xb128_in1k.py │ │ │ └── poolformer-s36_32xb128_in1k.py │ │ ├── regnet │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── regnetx-1.6gf_8xb128_in1k.py │ │ │ ├── regnetx-12gf_8xb64_in1k.py │ │ │ ├── regnetx-3.2gf_8xb64_in1k.py │ │ │ ├── regnetx-4.0gf_8xb64_in1k.py │ │ │ ├── regnetx-400mf_8xb128_in1k.py │ │ │ ├── regnetx-6.4gf_8xb64_in1k.py │ │ │ ├── regnetx-8.0gf_8xb64_in1k.py │ │ │ └── regnetx-800mf_8xb128_in1k.py │ │ ├── replknet │ │ │ ├── README.md │ │ │ ├── deploy │ │ │ │ ├── replknet-31B-deploy_32xb64_in1k-384px.py │ │ │ │ ├── replknet-31B-deploy_32xb64_in1k.py │ │ │ │ ├── replknet-31L-deploy_32xb64_in1k-384px.py │ │ │ │ └── replknet-XL-deploy_32xb64_in1k-320px.py │ │ │ ├── metafile.yml │ │ │ ├── replknet-31B_32xb64_in1k-384px.py │ │ │ ├── replknet-31B_32xb64_in1k.py │ │ │ ├── replknet-31L_32xb64_in1k-384px.py │ │ │ └── replknet-XL_32xb64_in1k-320px.py │ │ ├── repmlp │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── repmlp-base_8xb64_in1k-256px.py │ │ │ ├── repmlp-base_8xb64_in1k.py │ │ │ ├── repmlp-base_delopy_8xb64_in1k.py │ │ │ └── repmlp-base_deploy_8xb64_in1k-256px.py │ │ ├── repvgg │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── repvgg-A0_8xb32_in1k.py │ │ │ ├── repvgg-A0_deploy_in1k.py │ │ │ ├── repvgg-A1_8xb32_in1k.py │ │ │ ├── repvgg-A2_8xb32_in1k.py │ │ │ ├── repvgg-B0_8xb32_in1k.py │ │ │ ├── repvgg-B1_8xb32_in1k.py │ │ │ ├── repvgg-B1g2_8xb32_in1k.py │ │ │ ├── repvgg-B1g4_8xb32_in1k.py │ │ │ ├── repvgg-B2_8xb32_in1k.py │ │ │ ├── repvgg-B2g4_8xb32_in1k.py │ │ │ ├── repvgg-B3_8xb32_in1k.py │ │ │ ├── repvgg-B3g4_8xb32_in1k.py │ │ │ └── repvgg-D2se_8xb32_in1k.py │ │ ├── res2net │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── res2net101-w26-s4_8xb32_in1k.py │ │ │ ├── res2net50-w14-s8_8xb32_in1k.py │ │ │ └── res2net50-w26-s8_8xb32_in1k.py │ │ ├── resnest │ │ │ ├── README.md │ │ │ ├── _randaug_policies.py │ │ │ ├── resnest101_32xb64_in1k.py │ │ │ ├── resnest200_64xb32_in1k.py │ │ │ ├── resnest269_64xb32_in1k.py │ │ │ └── resnest50_32xb64_in1k.py │ │ ├── resnet │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── resnet101_8xb16_cifar10.py │ │ │ ├── resnet101_8xb32_in1k.py │ │ │ ├── resnet152_8xb16_cifar10.py │ │ │ ├── resnet152_8xb32_in1k.py │ │ │ ├── resnet18_8xb16_cifar10.py │ │ │ ├── resnet18_8xb16_cifar100.py │ │ │ ├── resnet18_8xb32_in1k.py │ │ │ ├── resnet18_8xb32_in1k_former_distill.py │ │ │ ├── resnet18_8xb64_in1k_cos_aug.py │ │ │ ├── resnet34_8xb16_cifar10.py │ │ │ ├── resnet34_8xb32_in1k.py │ │ │ ├── resnet50_32xb64-warmup-coslr_in1k.py │ │ │ ├── resnet50_32xb64-warmup-lbs_in1k.py │ │ │ ├── resnet50_32xb64-warmup_in1k.py │ │ │ ├── resnet50_8xb128_coslr-90e_in21k.py │ │ │ ├── resnet50_8xb16-mixup_cifar10.py │ │ │ ├── resnet50_8xb16_cifar10.py │ │ │ ├── resnet50_8xb16_cifar100.py │ │ │ ├── resnet50_8xb256-rsb-a1-600e_in1k.py │ │ │ ├── resnet50_8xb256-rsb-a2-300e_in1k.py │ │ │ ├── resnet50_8xb256-rsb-a3-100e_in1k.py │ │ │ ├── resnet50_8xb32-coslr-preciseBN_in1k.py │ │ │ ├── resnet50_8xb32-coslr_in1k.py │ │ │ ├── resnet50_8xb32-cutmix_in1k.py │ │ │ ├── resnet50_8xb32-fp16-dynamic_in1k.py │ │ │ ├── resnet50_8xb32-fp16_in1k.py │ │ │ ├── resnet50_8xb32-lbs_in1k.py │ │ │ ├── resnet50_8xb32-mixup_in1k.py │ │ │ ├── resnet50_8xb32_in1k.py │ │ │ ├── resnet50_8xb8_cub.py │ │ │ ├── resnetv1c101_8xb32_in1k.py │ │ │ ├── resnetv1c152_8xb32_in1k.py │ │ │ ├── resnetv1c50_8xb32_in1k.py │ │ │ ├── resnetv1d101_8xb32_in1k.py │ │ │ ├── resnetv1d152_8xb32_in1k.py │ │ │ └── resnetv1d50_8xb32_in1k.py │ │ ├── resnext │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── resnext101-32x4d_8xb32_in1k.py │ │ │ ├── resnext101-32x8d_8xb32_in1k.py │ │ │ ├── resnext152-32x4d_8xb32_in1k.py │ │ │ └── resnext50-32x4d_8xb32_in1k.py │ │ ├── revvit │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── revvit-base_8xb256_in1k.py │ │ │ └── revvit-small_8xb256_in1k.py │ │ ├── seresnet │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── seresnet101_8xb32_in1k.py │ │ │ ├── seresnet50_8xb32_in1k.py │ │ │ ├── seresnext101-32x4d_8xb32_in1k.py │ │ │ └── seresnext50-32x4d_8xb32_in1k.py │ │ ├── shufflenet_v1 │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ └── shufflenet-v1-1x_16xb64_in1k.py │ │ ├── shufflenet_v2 │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ └── shufflenet-v2-1x_16xb64_in1k.py │ │ ├── swin_transformer │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── swin-base_16xb64_in1k-384px.py │ │ │ ├── swin-base_16xb64_in1k.py │ │ │ ├── swin-large_16xb64_in1k-384px.py │ │ │ ├── swin-large_16xb64_in1k.py │ │ │ ├── swin-large_8xb8_cub_384px.py │ │ │ ├── swin-small_16xb64_in1k.py │ │ │ └── swin-tiny_16xb64_in1k.py │ │ ├── swin_transformer_v2 │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── swinv2-base-w12_8xb128_in21k-192px.py │ │ │ ├── swinv2-base-w16_16xb64_in1k-256px.py │ │ │ ├── swinv2-base-w16_in21k-pre_16xb64_in1k-256px.py │ │ │ ├── swinv2-base-w24_in21k-pre_16xb64_in1k-384px.py │ │ │ ├── swinv2-base-w8_16xb64_in1k-256px.py │ │ │ ├── swinv2-large-w12_8xb128_in21k-192px.py │ │ │ ├── swinv2-large-w16_in21k-pre_16xb64_in1k-256px.py │ │ │ ├── swinv2-large-w24_in21k-pre_16xb64_in1k-384px.py │ │ │ ├── swinv2-small-w16_16xb64_in1k-256px.py │ │ │ ├── swinv2-small-w8_16xb64_in1k-256px.py │ │ │ ├── swinv2-tiny-w16_16xb64_in1k-256px.py │ │ │ └── swinv2-tiny-w8_16xb64_in1k-256px.py │ │ ├── t2t_vit │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── t2t-vit-t-14_8xb64_in1k.py │ │ │ ├── t2t-vit-t-19_8xb64_in1k.py │ │ │ └── t2t-vit-t-24_8xb64_in1k.py │ │ ├── tinyvit │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── tinyvit-11m-distill_8xb256_in1k.py │ │ │ ├── tinyvit-11m_8xb256_in1k.py │ │ │ ├── tinyvit-21m-distill_8xb256_in1k-384px.py │ │ │ ├── tinyvit-21m-distill_8xb256_in1k-512px.py │ │ │ ├── tinyvit-21m-distill_8xb256_in1k.py │ │ │ ├── tinyvit-21m_8xb256_in1k.py │ │ │ ├── tinyvit-5m-distill_8xb256_in1k.py │ │ │ └── tinyvit-5m_8xb256_in1k.py │ │ ├── tnt │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ └── tnt-s-p16_16xb64_in1k.py │ │ ├── twins │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── twins-pcpvt-base_8xb128_in1k.py │ │ │ ├── twins-pcpvt-large_16xb64_in1k.py │ │ │ ├── twins-pcpvt-small_8xb128_in1k.py │ │ │ ├── twins-svt-base_8xb128_in1k.py │ │ │ ├── twins-svt-large_16xb64_in1k.py │ │ │ └── twins-svt-small_8xb128_in1k.py │ │ ├── van │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── van-base_8xb128_in1k.py │ │ │ ├── van-large_8xb128_in1k.py │ │ │ ├── van-small_8xb128_in1k.py │ │ │ └── van-tiny_8xb128_in1k.py │ │ ├── vgg │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── vgg11_8xb32_in1k.py │ │ │ ├── vgg11bn_8xb32_in1k.py │ │ │ ├── vgg13_8xb32_in1k.py │ │ │ ├── vgg13bn_8xb32_in1k.py │ │ │ ├── vgg16_8xb16_voc.py │ │ │ ├── vgg16_8xb32_in1k.py │ │ │ ├── vgg16bn_8xb32_in1k.py │ │ │ ├── vgg19_8xb32_in1k.py │ │ │ └── vgg19bn_8xb32_in1k.py │ │ ├── vig │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── pvig-base_8xb128_in1k.py │ │ │ ├── pvig-medium_8xb128_in1k.py │ │ │ ├── pvig-small_8xb128_in1k.py │ │ │ ├── pvig-tiny_8xb128_in1k.py │ │ │ ├── vig-base_8xb128_in1k.py │ │ │ ├── vig-small_8xb128_in1k.py │ │ │ └── vig-tiny_8xb128_in1k.py │ │ ├── vision_transformer │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── vit-base-p16_ft-4xb544-ipu_in1k.py │ │ │ ├── vit-base-p16_ft-64xb64_in1k-384.py │ │ │ ├── vit-base-p16_pt-32xb128-mae_in1k-224.py │ │ │ ├── vit-base-p16_pt-64xb64_in1k-224.py │ │ │ ├── vit-base-p32_ft-64xb64_in1k-384.py │ │ │ ├── vit-base-p32_pt-64xb64_in1k-224.py │ │ │ ├── vit-large-p16_ft-64xb64_in1k-384.py │ │ │ ├── vit-large-p16_pt-64xb64_in1k-224.py │ │ │ ├── vit-large-p32_ft-64xb64_in1k-384.py │ │ │ └── vit-large-p32_pt-64xb64_in1k-224.py │ │ ├── wrn │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── wide-resnet101_8xb32_in1k.py │ │ │ ├── wide-resnet50_8xb32_in1k.py │ │ │ └── wide-resnet50_timm_8xb32_in1k.py │ │ └── xcit │ │ │ ├── README.md │ │ │ ├── metafile.yml │ │ │ ├── xcit-large-24-p16_8xb128_in1k-384px.py │ │ │ ├── xcit-large-24-p16_8xb128_in1k.py │ │ │ ├── xcit-large-24-p8_8xb128_in1k-384px.py │ │ │ ├── xcit-large-24-p8_8xb128_in1k.py │ │ │ ├── xcit-medium-24-p16_8xb128_in1k-384px.py │ │ │ ├── xcit-medium-24-p16_8xb128_in1k.py │ │ │ ├── xcit-medium-24-p8_8xb128_in1k-384px.py │ │ │ ├── xcit-medium-24-p8_8xb128_in1k.py │ │ │ ├── xcit-nano-12-p16_8xb128_in1k-384px.py │ │ │ ├── xcit-nano-12-p16_8xb128_in1k.py │ │ │ ├── xcit-nano-12-p8_8xb128_in1k-384px.py │ │ │ ├── xcit-nano-12-p8_8xb128_in1k.py │ │ │ ├── xcit-small-12-p16_8xb128_in1k-384px.py │ │ │ ├── xcit-small-12-p16_8xb128_in1k.py │ │ │ ├── xcit-small-12-p8_8xb128_in1k-384px.py │ │ │ ├── xcit-small-12-p8_8xb128_in1k.py │ │ │ ├── xcit-small-24-p16_8xb128_in1k-384px.py │ │ │ ├── xcit-small-24-p16_8xb128_in1k.py │ │ │ ├── xcit-small-24-p8_8xb128_in1k-384px.py │ │ │ ├── xcit-small-24-p8_8xb128_in1k.py │ │ │ ├── xcit-tiny-12-p16_8xb128_in1k-384px.py │ │ │ ├── xcit-tiny-12-p16_8xb128_in1k.py │ │ │ ├── xcit-tiny-12-p8_8xb128_in1k-384px.py │ │ │ ├── xcit-tiny-12-p8_8xb128_in1k.py │ │ │ ├── xcit-tiny-24-p16_8xb128_in1k-384px.py │ │ │ ├── xcit-tiny-24-p16_8xb128_in1k.py │ │ │ ├── xcit-tiny-24-p8_8xb128_in1k-384px.py │ │ │ └── xcit-tiny-24-p8_8xb128_in1k.py │ └── tools │ │ ├── analysis_tools │ │ ├── analyze_logs.py │ │ ├── analyze_results.py │ │ ├── confusion_matrix.py │ │ ├── eval_metric.py │ │ └── get_flops.py │ │ ├── dist_test.sh │ │ ├── dist_train.sh │ │ ├── kfold-cross-valid.py │ │ ├── misc │ │ ├── print_config.py │ │ └── verify_dataset.py │ │ ├── model_converters │ │ ├── clip_to_mmcls.py │ │ ├── convnext_to_mmcls.py │ │ ├── davit_to_mmcls.py │ │ ├── deit3_to_mmcls.py │ │ ├── edgenext_to_mmcls.py │ │ ├── efficientnet_to_mmcls.py │ │ ├── efficientnetv2_to_mmcls.py │ │ ├── eva_to_mmcls.py │ │ ├── hornet2mmcls.py │ │ ├── levit2mmcls.py │ │ ├── mixmimx_to_mmcls.py │ │ ├── mlpmixer_to_mmcls.py │ │ ├── mobilenetv2_to_mmcls.py │ │ ├── publish_model.py │ │ ├── reparameterize_model.py │ │ ├── replknet_to_mmcls.py │ │ ├── repvgg_to_mmcls.py │ │ ├── revvit_to_mmcls.py │ │ ├── shufflenetv2_to_mmcls.py │ │ ├── tinyvit_to_mmcls.py │ │ ├── torchvision_to_mmcls.py │ │ ├── twins2mmcls.py │ │ ├── van2mmcls.py │ │ ├── vgg_to_mmcls.py │ │ └── vig_to_mmcls.py │ │ ├── slurm_test.sh │ │ ├── slurm_train.sh │ │ ├── test.py │ │ ├── torchserve │ │ ├── mmcls2torchserve.py │ │ ├── mmcls_handler.py │ │ └── test_torchserver.py │ │ ├── train.py │ │ └── visualizations │ │ ├── browse_dataset.py │ │ ├── vis_cam.py │ │ └── vis_scheduler.py ├── __init__.py ├── apis │ ├── __init__.py │ ├── inference.py │ └── model.py ├── datasets │ ├── __init__.py │ ├── base_dataset.py │ ├── builder.py │ ├── categories.py │ ├── cifar.py │ ├── cub.py │ ├── custom.py │ ├── dataset_wrappers.py │ ├── imagenet.py │ ├── inshop.py │ ├── mnist.py │ ├── multi_label.py │ ├── multi_task.py │ ├── samplers │ │ ├── __init__.py │ │ └── repeat_aug.py │ ├── transforms │ │ ├── __init__.py │ │ ├── auto_augment.py │ │ ├── formatting.py │ │ └── processing.py │ ├── utils.py │ └── voc.py ├── engine │ ├── __init__.py │ ├── hooks │ │ ├── __init__.py │ │ ├── class_num_check_hook.py │ │ ├── ema_hook.py │ │ ├── margin_head_hooks.py │ │ ├── precise_bn_hook.py │ │ ├── retriever_hooks.py │ │ ├── switch_recipe_hook.py │ │ └── visualization_hook.py │ └── optimizers │ │ ├── __init__.py │ │ ├── adan_t.py │ │ └── lamb.py ├── evaluation │ ├── __init__.py │ └── metrics │ │ ├── __init__.py │ │ ├── corruption_error.py │ │ ├── multi_label.py │ │ ├── multi_task.py │ │ ├── retrieval.py │ │ ├── single_label.py │ │ └── voc_multi_label.py ├── models │ ├── __init__.py │ ├── backbones │ │ ├── __init__.py │ │ ├── alexnet.py │ │ ├── base_backbone.py │ │ ├── beit.py │ │ ├── bit_resnet.py │ │ ├── conformer.py │ │ ├── convmixer.py │ │ ├── convnext.py │ │ ├── cspnet.py │ │ ├── davit.py │ │ ├── deit.py │ │ ├── deit3.py │ │ ├── densenet.py │ │ ├── edgenext.py │ │ ├── efficientformer.py │ │ ├── efficientnet.py │ │ ├── efficientnet_v2.py │ │ ├── gmlp.py │ │ ├── hornet.py │ │ ├── hrnet.py │ │ ├── inception_v3.py │ │ ├── lenet.py │ │ ├── levit.py │ │ ├── mbv2.old │ │ ├── mixmim.py │ │ ├── mlp_mixer.py │ │ ├── mobilenet_v1.py │ │ ├── mobilenet_v2.py │ │ ├── mobilenet_v3.py │ │ ├── mobileone.py │ │ ├── mobilevit.py │ │ ├── mvit.py │ │ ├── poolformer.py │ │ ├── regnet.py │ │ ├── replknet.py │ │ ├── repmlp.py │ │ ├── repvgg.py │ │ ├── res2net.py │ │ ├── resnest.py │ │ ├── resnet.py │ │ ├── resnet_cifar.py │ │ ├── resnext.py │ │ ├── revvit.py │ │ ├── seresnet.py │ │ ├── seresnext.py │ │ ├── shufflenet_v1.py │ │ ├── shufflenet_v2.py │ │ ├── swin_transformer.py │ │ ├── swin_transformer_v2.py │ │ ├── t2t_vit.py │ │ ├── timm_backbone.py │ │ ├── tinyvit.py │ │ ├── tnt.py │ │ ├── twins.py │ │ ├── van.py │ │ ├── vgg.py │ │ ├── vig.py │ │ ├── vision_transformer.py │ │ ├── vit.py │ │ ├── vit_eva02.py │ │ └── xcit.py │ ├── builder.py │ ├── classifiers │ │ ├── __init__.py │ │ ├── base.py │ │ ├── distiller.py │ │ ├── hugging_face.py │ │ ├── image.py │ │ └── timm.py │ ├── dis_losses │ │ ├── __init__.py │ │ ├── attention.py │ │ ├── fd.py │ │ ├── fmd.py │ │ ├── fmd_convnext.py │ │ ├── fmdv2.py │ │ └── kd.py │ ├── heads │ │ ├── __init__.py │ │ ├── base_head.py │ │ ├── cls_head.py │ │ ├── conformer_head.py │ │ ├── deit_head.py │ │ ├── efficientformer_head.py │ │ ├── levit_head.py │ │ ├── linear_head.py │ │ ├── margin_head.py │ │ ├── multi_label_cls_head.py │ │ ├── multi_label_csra_head.py │ │ ├── multi_label_linear_head.py │ │ ├── multi_task_head.py │ │ ├── stacked_head.py │ │ ├── vig_head.py │ │ └── vision_transformer_head.py │ ├── losses │ │ ├── __init__.py │ │ ├── asymmetric_loss.py │ │ ├── cross_entropy_loss.py │ │ ├── focal_loss.py │ │ ├── label_smooth_loss.py │ │ ├── seesaw_loss.py │ │ └── utils.py │ ├── necks │ │ ├── __init__.py │ │ ├── gap.py │ │ ├── gem.py │ │ ├── hr_fuse.py │ │ └── reduction.py │ ├── retrievers │ │ ├── __init__.py │ │ ├── base.py │ │ └── image2image.py │ ├── tta │ │ ├── __init__.py │ │ └── score_tta.py │ └── utils │ │ ├── __init__.py │ │ ├── attention.py │ │ ├── batch_augments │ │ ├── __init__.py │ │ ├── cutmix.py │ │ ├── mixup.py │ │ ├── resizemix.py │ │ └── wrapper.py │ │ ├── channel_shuffle.py │ │ ├── data_preprocessor.py │ │ ├── embed.py │ │ ├── helpers.py │ │ ├── inverted_residual.py │ │ ├── layer_scale.py │ │ ├── make_divisible.py │ │ ├── norm.py │ │ ├── position_encoding.py │ │ ├── se_layer.py │ │ └── swiglu_ffn.py ├── registry.py ├── structures │ ├── __init__.py │ ├── cls_data_sample.py │ ├── multi_task_data_sample.py │ └── utils.py ├── utils │ ├── __init__.py │ ├── analyze.py │ ├── collect_env.py │ ├── progress.py │ └── setup_env.py ├── version.py └── visualization │ ├── __init__.py │ └── cls_visualizer.py ├── projects ├── README.md ├── example_project │ ├── README.md │ ├── configs │ │ └── examplenet_8xb32_in1k.py │ └── models │ │ ├── __init__.py │ │ └── example_net.py ├── fgia_accv2022_1st │ └── README.md └── ood_eval │ ├── README.md │ ├── config │ ├── vit_ood-eval_toy-example.py │ └── vit_ood-eval_toy-example_imagenet-c.py │ └── generate_imagenet_variant_annotation.py ├── pth_transfer.py ├── requirements.txt ├── requirements ├── docs.txt ├── mminstall.txt ├── optional.txt ├── readthedocs.txt ├── runtime.txt └── tests.txt ├── resources └── mmcls-logo.png ├── run.sh ├── setup.cfg ├── setup.py ├── tests ├── __init__.py ├── data │ ├── color.jpg │ ├── dataset │ │ ├── a │ │ │ └── 1.JPG │ │ ├── ann.json │ │ ├── ann.txt │ │ ├── b │ │ │ ├── 2.jpeg │ │ │ └── subb │ │ │ │ └── 3.jpg │ │ ├── classes.txt │ │ ├── multi-task.json │ │ └── multi_label_ann.json │ ├── gray.jpg │ ├── meta.yml │ ├── retinanet.py │ └── test.logjson ├── test_apis │ ├── test_inference.py │ └── test_model.py ├── test_datasets │ ├── test_dataset_utils.py │ ├── test_datasets.py │ ├── test_samplers │ │ └── test_repeat_aug.py │ └── test_transforms │ │ ├── test_auto_augment.py │ │ ├── test_formatting.py │ │ └── test_processing.py ├── test_engine │ └── test_hooks │ │ ├── test_arcface_hooks.py │ │ ├── test_class_num_check_hook.py │ │ ├── test_ema_hook.py │ │ ├── test_precise_bn_hook.py │ │ ├── test_retrievers_hooks.py │ │ ├── test_switch_recipe_hook.py │ │ └── test_visualization_hook.py ├── test_evaluation │ └── test_metrics │ │ ├── test_corruption_error.py │ │ ├── test_metric_utils.py │ │ ├── test_multi_label.py │ │ ├── test_multi_task_metrics.py │ │ ├── test_retrieval.py │ │ ├── test_single_label.py │ │ └── test_voc_metrics.py ├── test_models │ ├── test_backbones │ │ ├── __init__.py │ │ ├── test_beit.py │ │ ├── test_conformer.py │ │ ├── test_convmixer.py │ │ ├── test_convnext.py │ │ ├── test_cspnet.py │ │ ├── test_davit.py │ │ ├── test_deit.py │ │ ├── test_deit3.py │ │ ├── test_densenet.py │ │ ├── test_edgenext.py │ │ ├── test_efficientformer.py │ │ ├── test_efficientnet.py │ │ ├── test_efficientnet_v2.py │ │ ├── test_hornet.py │ │ ├── test_hrnet.py │ │ ├── test_inception_v3.py │ │ ├── test_levit.py │ │ ├── test_mixmim.py │ │ ├── test_mlp_mixer.py │ │ ├── test_mobilenet_v2.py │ │ ├── test_mobilenet_v3.py │ │ ├── test_mobileone.py │ │ ├── test_mobilevit.py │ │ ├── test_mvit.py │ │ ├── test_poolformer.py │ │ ├── test_regnet.py │ │ ├── test_replknet.py │ │ ├── test_repmlp.py │ │ ├── test_repvgg.py │ │ ├── test_res2net.py │ │ ├── test_resnest.py │ │ ├── test_resnet.py │ │ ├── test_resnet_cifar.py │ │ ├── test_resnext.py │ │ ├── test_revvit.py │ │ ├── test_seresnet.py │ │ ├── test_seresnext.py │ │ ├── test_shufflenet_v1.py │ │ ├── test_shufflenet_v2.py │ │ ├── test_swin_transformer.py │ │ ├── test_swin_transformer_v2.py │ │ ├── test_t2t_vit.py │ │ ├── test_timm_backbone.py │ │ ├── test_tinyvit.py │ │ ├── test_tnt.py │ │ ├── test_twins.py │ │ ├── test_van.py │ │ ├── test_vgg.py │ │ ├── test_vision_transformer.py │ │ ├── test_xcit.py │ │ └── utils.py │ ├── test_classifiers.py │ ├── test_heads.py │ ├── test_losses.py │ ├── test_models.py │ ├── test_necks.py │ ├── test_retrievers.py │ ├── test_tta.py │ └── test_utils │ │ ├── test_attention.py │ │ ├── test_batch_augments.py │ │ ├── test_data_preprocessor.py │ │ ├── test_embed.py │ │ ├── test_inverted_residual.py │ │ ├── test_layer_scale.py │ │ ├── test_misc.py │ │ ├── test_norm.py │ │ ├── test_position_encoding.py │ │ └── test_se.py ├── test_structures │ ├── test_datasample.py │ └── test_utils.py ├── test_utils │ ├── test_analyze.py │ ├── test_setup_env.py │ └── test_version_utils.py └── test_visualizations │ └── test_visualizer.py └── tools ├── analysis_tools ├── analyze_logs.py ├── analyze_results.py ├── confusion_matrix.py ├── eval_metric.py └── get_flops.py ├── dist_test.sh ├── dist_train.sh ├── kfold-cross-valid.py ├── misc ├── print_config.py └── verify_dataset.py ├── model_converters ├── clip_to_mmcls.py ├── convnext_to_mmcls.py ├── davit_to_mmcls.py ├── deit3_to_mmcls.py ├── edgenext_to_mmcls.py ├── efficientnet_to_mmcls.py ├── efficientnetv2_to_mmcls.py ├── eva_to_mmcls.py ├── hornet2mmcls.py ├── levit2mmcls.py ├── mixmimx_to_mmcls.py ├── mlpmixer_to_mmcls.py ├── mobilenetv2_to_mmcls.py ├── publish_model.py ├── reparameterize_model.py ├── replknet_to_mmcls.py ├── repvgg_to_mmcls.py ├── revvit_to_mmcls.py ├── shufflenetv2_to_mmcls.py ├── tinyvit_to_mmcls.py ├── torchvision_to_mmcls.py ├── twins2mmcls.py ├── van2mmcls.py ├── vgg_to_mmcls.py └── vig_to_mmcls.py ├── slurm_test.sh ├── slurm_train.sh ├── test.py ├── torchserve ├── mmcls2torchserve.py ├── mmcls_handler.py └── test_torchserver.py ├── train.py └── visualizations ├── browse_dataset.py ├── vis_cam.py └── vis_scheduler.py /.gitignore: -------------------------------------------------------------------------------- 1 | /ckpt 2 | /data 3 | /work_dirs 4 | *.pyc 5 | *.pkl 6 | reference.md 7 | /configs/distillers/next_week -------------------------------------------------------------------------------- /build/lib/mmcls/apis/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .inference import ImageClassificationInferencer, inference_model 3 | from .model import ModelHub, get_model, init_model, list_models 4 | 5 | __all__ = [ 6 | 'init_model', 'inference_model', 'list_models', 'get_model', 'ModelHub', 7 | 'ImageClassificationInferencer' 8 | ] 9 | -------------------------------------------------------------------------------- /build/lib/mmcls/datasets/samplers/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .repeat_aug import RepeatAugSampler 3 | 4 | __all__ = ('RepeatAugSampler', ) 5 | -------------------------------------------------------------------------------- /build/lib/mmcls/engine/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .hooks import * # noqa: F401, F403 3 | from .optimizers import * # noqa: F401, F403 4 | -------------------------------------------------------------------------------- /build/lib/mmcls/engine/optimizers/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .adan_t import Adan 3 | from .lamb import Lamb 4 | 5 | __all__ = ['Lamb', 'Adan'] 6 | -------------------------------------------------------------------------------- /build/lib/mmcls/evaluation/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .metrics import * # noqa: F401,F403 3 | -------------------------------------------------------------------------------- /build/lib/mmcls/models/dis_losses/__init__.py: -------------------------------------------------------------------------------- 1 | from .kd import KDLoss 2 | from .fd import FDLoss 3 | from .tfd import TFDLoss 4 | from .mfd import MultiStageFDLoss 5 | 6 | 7 | __all__ = [ 8 | 'KDLoss', 'FDLoss' , 'TFDLoss', 'MultiStageFDLoss', 9 | ] 10 | -------------------------------------------------------------------------------- /build/lib/mmcls/models/necks/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .gap import GlobalAveragePooling 3 | from .gem import GeneralizedMeanPooling 4 | from .hr_fuse import HRFuseScales 5 | from .reduction import LinearReduction 6 | 7 | __all__ = [ 8 | 'GlobalAveragePooling', 'GeneralizedMeanPooling', 'HRFuseScales', 9 | 'LinearReduction' 10 | ] 11 | -------------------------------------------------------------------------------- /build/lib/mmcls/models/retrievers/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .base import BaseRetriever 3 | from .image2image import ImageToImageRetriever 4 | 5 | __all__ = ['BaseRetriever', 'ImageToImageRetriever'] 6 | -------------------------------------------------------------------------------- /build/lib/mmcls/models/tta/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .score_tta import AverageClsScoreTTA 3 | 4 | __all__ = ['AverageClsScoreTTA'] 5 | -------------------------------------------------------------------------------- /build/lib/mmcls/models/utils/batch_augments/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .cutmix import CutMix 3 | from .mixup import Mixup 4 | from .resizemix import ResizeMix 5 | from .wrapper import RandomBatchAugment 6 | 7 | __all__ = ('RandomBatchAugment', 'CutMix', 'Mixup', 'ResizeMix') 8 | -------------------------------------------------------------------------------- /build/lib/mmcls/structures/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .cls_data_sample import ClsDataSample 3 | from .multi_task_data_sample import MultiTaskDataSample 4 | from .utils import (batch_label_to_onehot, cat_batch_labels, 5 | stack_batch_scores, tensor_split) 6 | 7 | __all__ = [ 8 | 'ClsDataSample', 'batch_label_to_onehot', 'cat_batch_labels', 9 | 'stack_batch_scores', 'tensor_split', 'MultiTaskDataSample' 10 | ] 11 | -------------------------------------------------------------------------------- /build/lib/mmcls/structures/multi_task_data_sample.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | 3 | from mmengine.structures import BaseDataElement 4 | 5 | 6 | class MultiTaskDataSample(BaseDataElement): 7 | 8 | @property 9 | def tasks(self): 10 | return self._data_fields 11 | -------------------------------------------------------------------------------- /build/lib/mmcls/utils/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .analyze import load_json_log 3 | from .collect_env import collect_env 4 | from .progress import track_on_main_process 5 | from .setup_env import register_all_modules 6 | 7 | __all__ = [ 8 | 'collect_env', 'register_all_modules', 'track_on_main_process', 9 | 'load_json_log' 10 | ] 11 | -------------------------------------------------------------------------------- /build/lib/mmcls/utils/collect_env.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from mmengine.utils import get_git_hash 3 | from mmengine.utils.dl_utils import collect_env as collect_base_env 4 | 5 | import mmcls 6 | 7 | 8 | def collect_env(): 9 | """Collect the information of the running environments.""" 10 | env_info = collect_base_env() 11 | env_info['MMClassification'] = mmcls.__version__ + '+' + get_git_hash()[:7] 12 | return env_info 13 | -------------------------------------------------------------------------------- /build/lib/mmcls/utils/progress.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | import mmengine.dist as dist 3 | import rich.progress as progress 4 | 5 | 6 | def track_on_main_process(sequence, *args, **kwargs): 7 | if not dist.is_main_process(): 8 | yield from sequence 9 | else: 10 | yield from progress.track(sequence, *args, **kwargs) 11 | -------------------------------------------------------------------------------- /build/lib/mmcls/visualization/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .cls_visualizer import ClsVisualizer 3 | 4 | __all__ = ['ClsVisualizer'] 5 | -------------------------------------------------------------------------------- /configs/_base_/models/convmixer/convmixer-1024-20.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='ConvMixer', arch='1024/20'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1024, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /configs/_base_/models/convmixer/convmixer-1536-20.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='ConvMixer', arch='1536/20'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1536, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /configs/_base_/models/convmixer/convmixer-768-32.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='ConvMixer', arch='768/32', act_cfg=dict(type='ReLU')), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=768, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /configs/_base_/models/densenet/densenet121.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='DenseNet', arch='121'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1024, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /configs/_base_/models/densenet/densenet161.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='DenseNet', arch='161'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=2208, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /configs/_base_/models/densenet/densenet169.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='DenseNet', arch='169'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1664, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /configs/_base_/models/densenet/densenet201.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='DenseNet', arch='201'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1920, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /configs/_base_/models/efficientnet_b1.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b1'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/efficientnet_b2.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b2'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1408, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/efficientnet_b4.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b4'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1792, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/efficientnet_b5.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b5'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=2048, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/efficientnet_b6.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b6'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=2304, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/efficientnet_b7.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b7'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=2560, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/efficientnet_b8.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b8'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=2816, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/efficientnet_l2.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='l2'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=5504, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/efficientnet_v2/efficientnetv2_b0.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='b0'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/efficientnet_v2/efficientnetv2_b1.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='b1'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/efficientnet_v2/efficientnetv2_b2.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='b2'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1408, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/efficientnet_v2/efficientnetv2_b3.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='b3'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1536, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/efficientnet_v2/efficientnetv2_l.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='l'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/efficientnet_v2/efficientnetv2_m.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='m'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/efficientnet_v2/efficientnetv2_s.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='s'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/efficientnet_v2/efficientnetv2_xl.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='xl'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/inception_v3.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='InceptionV3', num_classes=1000, aux_logits=False), 5 | neck=None, 6 | head=dict( 7 | type='ClsHead', 8 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 9 | topk=(1, 5)), 10 | ) 11 | -------------------------------------------------------------------------------- /configs/_base_/models/mobilenet_v1_1x.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='MobileNetV1'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1024, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/mobilevit/mobilevit_s.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='MobileViT', arch='small'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=640, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/mobilevit/mobilevit_xs.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='MobileViT', arch='x_small'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=384, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/mobilevit/mobilevit_xxs.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='MobileViT', arch='xx_small'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=320, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/regnet/regnetx_1.6gf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_1.6gf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=912, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/regnet/regnetx_12gf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_12gf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=2240, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/regnet/regnetx_3.2gf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_3.2gf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1008, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/regnet/regnetx_4.0gf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_4.0gf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1360, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/regnet/regnetx_400mf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_400mf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=384, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/regnet/regnetx_6.4gf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_6.4gf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1624, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/regnet/regnetx_8.0gf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_8.0gf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1920, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/regnet/regnetx_800mf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_800mf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=672, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/replknet-31L_in1k.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='RepLKNet', 5 | arch='31L', 6 | out_indices=(3, ), 7 | ), 8 | neck=dict(type='GlobalAveragePooling'), 9 | head=dict( 10 | type='LinearClsHead', 11 | num_classes=1000, 12 | in_channels=1536, 13 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 14 | topk=(1, 5), 15 | )) 16 | -------------------------------------------------------------------------------- /configs/_base_/models/replknet-XL_in1k.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='RepLKNet', 5 | arch='XL', 6 | out_indices=(3, ), 7 | ), 8 | neck=dict(type='GlobalAveragePooling'), 9 | head=dict( 10 | type='LinearClsHead', 11 | num_classes=1000, 12 | in_channels=2048, 13 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 14 | topk=(1, 5), 15 | )) 16 | -------------------------------------------------------------------------------- /configs/_base_/models/repvgg-A0_in1k.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='RepVGG', 5 | arch='A0', 6 | out_indices=(3, ), 7 | ), 8 | neck=dict(type='GlobalAveragePooling'), 9 | head=dict( 10 | type='LinearClsHead', 11 | num_classes=1000, 12 | in_channels=1280, 13 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 14 | topk=(1, 5), 15 | )) 16 | -------------------------------------------------------------------------------- /configs/_base_/models/shufflenet_v1_1x.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='ShuffleNetV1', groups=3), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=960, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/shufflenet_v2_1x.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='ShuffleNetV2', widen_factor=1.0), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1024, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/_base_/models/vgg11.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='VGG', depth=11, num_classes=1000), 5 | neck=None, 6 | head=dict( 7 | type='ClsHead', 8 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 9 | topk=(1, 5), 10 | )) 11 | -------------------------------------------------------------------------------- /configs/_base_/models/vgg11bn.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='VGG', depth=11, norm_cfg=dict(type='BN'), num_classes=1000), 6 | neck=None, 7 | head=dict( 8 | type='ClsHead', 9 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 10 | topk=(1, 5), 11 | )) 12 | -------------------------------------------------------------------------------- /configs/_base_/models/vgg13.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='VGG', depth=13, num_classes=1000), 5 | neck=None, 6 | head=dict( 7 | type='ClsHead', 8 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 9 | topk=(1, 5), 10 | )) 11 | -------------------------------------------------------------------------------- /configs/_base_/models/vgg13bn.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='VGG', depth=13, norm_cfg=dict(type='BN'), num_classes=1000), 6 | neck=None, 7 | head=dict( 8 | type='ClsHead', 9 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 10 | topk=(1, 5), 11 | )) 12 | -------------------------------------------------------------------------------- /configs/_base_/models/vgg16.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='VGG', depth=16, num_classes=1000), 5 | neck=None, 6 | head=dict( 7 | type='ClsHead', 8 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 9 | topk=(1, 5), 10 | )) 11 | -------------------------------------------------------------------------------- /configs/_base_/models/vgg16bn.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='VGG', depth=16, norm_cfg=dict(type='BN'), num_classes=1000), 6 | neck=None, 7 | head=dict( 8 | type='ClsHead', 9 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 10 | topk=(1, 5), 11 | )) 12 | -------------------------------------------------------------------------------- /configs/_base_/models/vgg19.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='VGG', depth=19, num_classes=1000), 5 | neck=None, 6 | head=dict( 7 | type='ClsHead', 8 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 9 | topk=(1, 5), 10 | )) 11 | -------------------------------------------------------------------------------- /configs/_base_/models/vgg19bn.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='VGG', depth=19, norm_cfg=dict(type='BN'), num_classes=1000), 6 | neck=None, 7 | head=dict( 8 | type='ClsHead', 9 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 10 | topk=(1, 5), 11 | )) 12 | -------------------------------------------------------------------------------- /configs/clip/vit-base-p16_pt-64xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vit-base-p16.py', 3 | '../_base_/datasets/imagenet_bs64_clip_384.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model setting/mnt/lustre/lirongjie/tmp/clip_ckpt/trans_ckpt 9 | model = dict(backbone=dict(pre_norm=True, ), ) 10 | 11 | # schedule setting 12 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 13 | -------------------------------------------------------------------------------- /configs/clip/vit-base-p16_pt-64xb64_in1k-448px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vit-base-p16.py', 3 | '../_base_/datasets/imagenet_bs64_clip_448.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model setting/mnt/lustre/lirongjie/tmp/clip_ckpt/trans_ckpt 9 | model = dict(backbone=dict(pre_norm=True, ), ) 10 | 11 | # schedule setting 12 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 13 | -------------------------------------------------------------------------------- /configs/clip/vit-base-p16_pt-64xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vit-base-p16.py', 3 | '../_base_/datasets/imagenet_bs64_clip_224.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model setting/mnt/lustre/lirongjie/tmp/clip_ckpt/trans_ckpt 9 | model = dict(backbone=dict(pre_norm=True, ), ) 10 | 11 | # schedule setting 12 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 13 | -------------------------------------------------------------------------------- /configs/clip/vit-base-p32_pt-64xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vit-base-p32.py', 3 | '../_base_/datasets/imagenet_bs64_clip_384.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model setting/mnt/lustre/lirongjie/tmp/clip_ckpt/trans_ckpt 9 | model = dict(backbone=dict(pre_norm=True, ), ) 10 | 11 | # schedule setting 12 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 13 | -------------------------------------------------------------------------------- /configs/clip/vit-base-p32_pt-64xb64_in1k-448px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vit-base-p32.py', 3 | '../_base_/datasets/imagenet_bs64_clip_448.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model setting/mnt/lustre/lirongjie/tmp/clip_ckpt/trans_ckpt 9 | model = dict(backbone=dict(pre_norm=True, ), ) 10 | 11 | # schedule setting 12 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 13 | -------------------------------------------------------------------------------- /configs/clip/vit-base-p32_pt-64xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vit-base-p32.py', 3 | '../_base_/datasets/imagenet_bs64_clip_224.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model setting/mnt/lustre/lirongjie/tmp/clip_ckpt/trans_ckpt 9 | model = dict(backbone=dict(pre_norm=True, ), ) 10 | 11 | # schedule setting 12 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 13 | -------------------------------------------------------------------------------- /configs/conformer/conformer-base-p16_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/conformer/base-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_conformer.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | train_dataloader = dict(batch_size=128) 9 | -------------------------------------------------------------------------------- /configs/conformer/conformer-small-p16_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/conformer/small-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_conformer.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | train_dataloader = dict(batch_size=128) 9 | -------------------------------------------------------------------------------- /configs/conformer/conformer-small-p32_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/conformer/small-p32.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_conformer.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | train_dataloader = dict(batch_size=128) 9 | -------------------------------------------------------------------------------- /configs/conformer/conformer-tiny-p16_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/conformer/tiny-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_conformer.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | train_dataloader = dict(batch_size=128) 9 | -------------------------------------------------------------------------------- /configs/davit/davit-base_4xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/davit/davit-base.py', 3 | '../_base_/datasets/imagenet_bs256_davit_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # data settings 9 | train_dataloader = dict(batch_size=256) 10 | -------------------------------------------------------------------------------- /configs/davit/davit-small_4xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/davit/davit-small.py', 3 | '../_base_/datasets/imagenet_bs256_davit_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # data settings 9 | train_dataloader = dict(batch_size=256) 10 | -------------------------------------------------------------------------------- /configs/davit/davit-tiny_4xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/davit/davit-tiny.py', 3 | '../_base_/datasets/imagenet_bs256_davit_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # data settings 9 | train_dataloader = dict(batch_size=256) 10 | -------------------------------------------------------------------------------- /configs/deit/deit-base-distilled_ft-16xb32_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = './deit-base_ft-16xb32_in1k-384px.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(type='DistilledVisionTransformer'), 6 | head=dict(type='DeiTClsHead'), 7 | # Change to the path of the pretrained model 8 | # init_cfg=dict(type='Pretrained', checkpoint=''), 9 | ) 10 | -------------------------------------------------------------------------------- /configs/deit/deit-base-distilled_pt-16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './deit-small_pt-4xb256_in1k.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(type='DistilledVisionTransformer', arch='deit-base'), 6 | head=dict(type='DeiTClsHead', in_channels=768), 7 | ) 8 | 9 | # dataset settings 10 | train_dataloader = dict(batch_size=64) 11 | -------------------------------------------------------------------------------- /configs/deit/deit-base_pt-16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './deit-small_pt-4xb256_in1k.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict( 6 | type='VisionTransformer', arch='deit-base', drop_path_rate=0.1), 7 | head=dict(type='VisionTransformerClsHead', in_channels=768), 8 | ) 9 | 10 | # dataset settings 11 | train_dataloader = dict(batch_size=64) 12 | 13 | # runtime settings 14 | custom_hooks = [dict(type='EMAHook', momentum=4e-5, priority='ABOVE_NORMAL')] 15 | -------------------------------------------------------------------------------- /configs/deit/deit-small-distilled_pt-4xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './deit-small_pt-4xb256_in1k.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(type='DistilledVisionTransformer', arch='deit-small'), 6 | head=dict(type='DeiTClsHead', in_channels=384), 7 | ) 8 | -------------------------------------------------------------------------------- /configs/deit/deit-tiny-distilled_pt-4xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './deit-small_pt-4xb256_in1k.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(type='DistilledVisionTransformer', arch='deit-tiny'), 6 | head=dict(type='DeiTClsHead', in_channels=192), 7 | ) 8 | -------------------------------------------------------------------------------- /configs/efficientformer/efficientformer-l1_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/efficientformer-l1.py', 3 | '../_base_/datasets/imagenet_bs128_poolformer_small_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /configs/efficientformer/efficientformer-l3_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './efficientformer-l1_8xb128_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='l3'), head=dict(in_channels=512)) 4 | -------------------------------------------------------------------------------- /configs/efficientformer/efficientformer-l7_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './efficientformer-l1_8xb128_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='l7'), head=dict(in_channels=768)) 4 | -------------------------------------------------------------------------------- /configs/efficientnet_v2/efficientnetv2-l_8xb32_in21k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./efficientnetv2-s_8xb32_in21k.py'] 2 | 3 | # model setting 4 | model = dict(backbone=dict(arch='l'), ) 5 | -------------------------------------------------------------------------------- /configs/efficientnet_v2/efficientnetv2-m_8xb32_in21k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./efficientnetv2-s_8xb32_in21k.py'] 2 | 3 | # model setting 4 | model = dict(backbone=dict(arch='m'), ) 5 | -------------------------------------------------------------------------------- /configs/efficientnet_v2/efficientnetv2-xl_8xb32_in21k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./efficientnetv2-s_8xb32_in21k.py'] 2 | 3 | # model setting 4 | model = dict(backbone=dict(arch='xl'), ) 5 | -------------------------------------------------------------------------------- /configs/eva/eva-g-p14_8xb16_in1k-336px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/eva/eva-g.py', 3 | '../_base_/datasets/imagenet_bs16_eva_336.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(img_size=336)) 10 | -------------------------------------------------------------------------------- /configs/eva/eva-g-p14_8xb16_in1k-560px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/eva/eva-g.py', 3 | '../_base_/datasets/imagenet_bs16_eva_560.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(img_size=560)) 10 | -------------------------------------------------------------------------------- /configs/eva/eva-l-p14_8xb16_in1k-196px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/eva/eva-l.py', 3 | '../_base_/datasets/imagenet_bs16_eva_196.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(img_size=196)) 10 | -------------------------------------------------------------------------------- /configs/eva/eva-l-p14_8xb16_in1k-224px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/eva/eva-l.py', 3 | '../_base_/datasets/imagenet_bs16_eva_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(img_size=224)) 10 | -------------------------------------------------------------------------------- /configs/eva/eva-l-p14_8xb16_in1k-336px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/eva/eva-l.py', 3 | '../_base_/datasets/imagenet_bs16_eva_336.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(img_size=336)) 10 | -------------------------------------------------------------------------------- /configs/hornet/hornet-base-gf_8xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hornet/hornet-base-gf.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | data = dict(samples_per_gpu=64) 9 | 10 | optim_wrapper = dict(optimizer=dict(lr=4e-3), clip_grad=dict(max_norm=1.0)) 11 | 12 | custom_hooks = [dict(type='EMAHook', momentum=4e-5, priority='ABOVE_NORMAL')] 13 | -------------------------------------------------------------------------------- /configs/hornet/hornet-base_8xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hornet/hornet-base.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | data = dict(samples_per_gpu=64) 9 | 10 | optim_wrapper = dict(optimizer=dict(lr=4e-3), clip_grad=dict(max_norm=5.0)) 11 | 12 | custom_hooks = [dict(type='EMAHook', momentum=4e-5, priority='ABOVE_NORMAL')] 13 | -------------------------------------------------------------------------------- /configs/hornet/hornet-small-gf_8xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hornet/hornet-small-gf.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | data = dict(samples_per_gpu=64) 9 | 10 | optim_wrapper = dict(optimizer=dict(lr=4e-3), clip_grad=dict(max_norm=1.0)) 11 | 12 | custom_hooks = [dict(type='EMAHook', momentum=4e-5, priority='ABOVE_NORMAL')] 13 | -------------------------------------------------------------------------------- /configs/hornet/hornet-small_8xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hornet/hornet-small.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | data = dict(samples_per_gpu=64) 9 | 10 | optim_wrapper = dict(optimizer=dict(lr=4e-3), clip_grad=dict(max_norm=5.0)) 11 | 12 | custom_hooks = [dict(type='EMAHook', momentum=4e-5, priority='ABOVE_NORMAL')] 13 | -------------------------------------------------------------------------------- /configs/hornet/hornet-tiny-gf_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hornet/hornet-tiny-gf.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | data = dict(samples_per_gpu=128) 9 | 10 | optim_wrapper = dict(optimizer=dict(lr=4e-3), clip_grad=dict(max_norm=1.0)) 11 | 12 | custom_hooks = [dict(type='EMAHook', momentum=4e-5, priority='ABOVE_NORMAL')] 13 | -------------------------------------------------------------------------------- /configs/hornet/hornet-tiny_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hornet/hornet-tiny.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | data = dict(samples_per_gpu=128) 9 | 10 | optim_wrapper = dict(optimizer=dict(lr=4e-3), clip_grad=dict(max_norm=100.0)) 11 | 12 | custom_hooks = [dict(type='EMAHook', momentum=4e-5, priority='ABOVE_NORMAL')] 13 | -------------------------------------------------------------------------------- /configs/hrnet/hrnet-w18_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w18.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /configs/hrnet/hrnet-w30_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w30.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /configs/hrnet/hrnet-w32_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w32.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /configs/hrnet/hrnet-w40_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w40.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /configs/hrnet/hrnet-w44_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w44.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /configs/hrnet/hrnet-w48_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w48.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /configs/hrnet/hrnet-w64_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w64.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /configs/levit/deploy/levit-128_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../levit-128_8xb256_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True), head=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /configs/levit/deploy/levit-128s_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../levit-128s_8xb256_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True), head=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /configs/levit/deploy/levit-192_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../levit-192_8xb256_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True), head=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /configs/levit/deploy/levit-256_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../levit-256_8xb256_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True), head=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /configs/levit/deploy/levit-384_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../levit-384_8xb256_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True), head=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /configs/levit/levit-128_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/levit-256-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs2048_adamw_levit.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(arch='128'), head=dict(in_channels=384)) 10 | 11 | # dataset settings 12 | train_dataloader = dict(batch_size=256) 13 | -------------------------------------------------------------------------------- /configs/levit/levit-128s_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/levit-256-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs2048_adamw_levit.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(arch='128s'), head=dict(in_channels=384)) 10 | 11 | # dataset settings 12 | train_dataloader = dict(batch_size=256) 13 | -------------------------------------------------------------------------------- /configs/levit/levit-192_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/levit-256-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs2048_adamw_levit.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(arch='192'), head=dict(in_channels=384)) 10 | 11 | # dataset settings 12 | train_dataloader = dict(batch_size=256) 13 | -------------------------------------------------------------------------------- /configs/levit/levit-256_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/levit-256-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs2048_adamw_levit.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # dataset settings 9 | train_dataloader = dict(batch_size=256) 10 | -------------------------------------------------------------------------------- /configs/levit/levit-384_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/levit-256-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs2048_adamw_levit.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # model settings 9 | model = dict( 10 | backbone=dict(arch='384', drop_path_rate=0.1), 11 | head=dict(in_channels=768), 12 | ) 13 | 14 | # dataset settings 15 | train_dataloader = dict(batch_size=256) 16 | -------------------------------------------------------------------------------- /configs/mixmim/mixmim-base_8xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mixmim/mixmim_base.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/mlp_mixer/mlp-mixer-base-p16_64xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mlp_mixer_base_patch16.py', 3 | '../_base_/datasets/imagenet_bs128_mlp_224.py', 4 | '../_base_/schedules/imagenet_bs1024_AdamW_mlp.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # configs/_base_/models/mlp_mixer_base_patch14.py 9 | 10 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 11 | -------------------------------------------------------------------------------- /configs/mlp_mixer/mlp-mixer-large-p16_64xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mlp_mixer_large_patch16.py', 3 | '../_base_/datasets/imagenet_bs128_mlp_224.py', 4 | '../_base_/schedules/imagenet_bs1024_AdamW_mlp.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 9 | -------------------------------------------------------------------------------- /configs/mobilenet_v1/mobilenet_v1.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mobilenet_v1_1x.py', 3 | '../_base_/datasets/imagenet_bs32.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | 9 | -------------------------------------------------------------------------------- /configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mobilenet_v2_1x.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_cos_lr_SGD_150e.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | model = dict( 9 | backbone=dict( 10 | out_indices=(2,3,4,7)) 11 | ) -------------------------------------------------------------------------------- /configs/mobileone/deploy/mobileone-s0_deploy_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../mobileone-s0_8xb32_in1k.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /configs/mobileone/deploy/mobileone-s1_deploy_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../mobileone-s1_8xb32_in1k.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /configs/mobileone/deploy/mobileone-s2_deploy_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../mobileone-s2_8xb32_in1k.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /configs/mobileone/deploy/mobileone-s3_deploy_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../mobileone-s3_8xb32_in1k.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /configs/mobileone/deploy/mobileone-s4_deploy_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../mobileone-s4_8xb32_in1k.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /configs/regnet/regnetx-1.6gf_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./regnetx-400mf_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(type='RegNet', arch='regnetx_1.6gf'), 6 | head=dict(in_channels=912, )) 7 | -------------------------------------------------------------------------------- /configs/regnet/regnetx-800mf_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./regnetx-400mf_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(type='RegNet', arch='regnetx_800mf'), 6 | head=dict(in_channels=672, )) 7 | -------------------------------------------------------------------------------- /configs/replknet/deploy/replknet-31B-deploy_32xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = '../replknet-31B_32xb64_in1k-384px.py' 2 | 3 | model = dict(backbone=dict(small_kernel_merged=True)) 4 | -------------------------------------------------------------------------------- /configs/replknet/deploy/replknet-31B-deploy_32xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../replknet-31B_32xb64_in1k.py' 2 | 3 | model = dict(backbone=dict(small_kernel_merged=True)) 4 | -------------------------------------------------------------------------------- /configs/replknet/deploy/replknet-31L-deploy_32xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = '../replknet-31L_32xb64_in1k-384px.py' 2 | 3 | model = dict(backbone=dict(small_kernel_merged=True)) 4 | -------------------------------------------------------------------------------- /configs/replknet/deploy/replknet-XL-deploy_32xb64_in1k-320px.py: -------------------------------------------------------------------------------- 1 | _base_ = '../replknet-XL_32xb64_in1k-320px.py' 2 | 3 | model = dict(backbone=dict(small_kernel_merged=True)) 4 | -------------------------------------------------------------------------------- /configs/replknet/replknet-31B_32xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/replknet-31B_in1k.py', 3 | '../_base_/datasets/imagenet_bs16_pil_bicubic_384.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | param_scheduler = dict( 10 | type='CosineAnnealingLR', T_max=300, by_epoch=True, begin=0, end=300) 11 | 12 | train_cfg = dict(by_epoch=True, max_epochs=300) 13 | -------------------------------------------------------------------------------- /configs/replknet/replknet-31B_32xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/replknet-31B_in1k.py', 3 | '../_base_/datasets/imagenet_bs32_pil_bicubic.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | param_scheduler = dict( 10 | type='CosineAnnealingLR', T_max=300, by_epoch=True, begin=0, end=300) 11 | 12 | train_cfg = dict(by_epoch=True, max_epochs=300) 13 | -------------------------------------------------------------------------------- /configs/replknet/replknet-31L_32xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/replknet-31L_in1k.py', 3 | '../_base_/datasets/imagenet_bs16_pil_bicubic_384.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | param_scheduler = dict( 10 | type='CosineAnnealingLR', T_max=300, by_epoch=True, begin=0, end=300) 11 | 12 | train_cfg = dict(by_epoch=True, max_epochs=300) 13 | -------------------------------------------------------------------------------- /configs/replknet/replknet-XL_32xb64_in1k-320px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/replknet-XL_in1k.py', 3 | '../_base_/datasets/imagenet_bs8_pil_bicubic_320.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | param_scheduler = dict( 10 | type='CosineAnnealingLR', T_max=300, by_epoch=True, begin=0, end=300) 11 | 12 | train_cfg = dict(by_epoch=True, max_epochs=300) 13 | -------------------------------------------------------------------------------- /configs/repmlp/repmlp-base_delopy_8xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./repmlp-base_8xb64_in1k.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /configs/repmlp/repmlp-base_deploy_8xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./repmlp-base_8xb64_in1k-256px.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /configs/repvgg/repvgg-A0_deploy_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /configs/repvgg/repvgg-A1_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='A1')) 4 | -------------------------------------------------------------------------------- /configs/repvgg/repvgg-A2_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='A2'), head=dict(in_channels=1408)) 4 | -------------------------------------------------------------------------------- /configs/repvgg/repvgg-B0_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B0'), head=dict(in_channels=1280)) 4 | -------------------------------------------------------------------------------- /configs/repvgg/repvgg-B1_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B1'), head=dict(in_channels=2048)) 4 | -------------------------------------------------------------------------------- /configs/repvgg/repvgg-B1g2_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B1g2'), head=dict(in_channels=2048)) 4 | -------------------------------------------------------------------------------- /configs/repvgg/repvgg-B1g4_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B1g4'), head=dict(in_channels=2048)) 4 | -------------------------------------------------------------------------------- /configs/repvgg/repvgg-B2_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B2'), head=dict(in_channels=2560)) 4 | -------------------------------------------------------------------------------- /configs/repvgg/repvgg-B2g4_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-B3_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B2g4'), head=dict(in_channels=2560)) 4 | -------------------------------------------------------------------------------- /configs/repvgg/repvgg-B3g4_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-B3_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B3g4')) 4 | -------------------------------------------------------------------------------- /configs/res2net/res2net101-w26-s4_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/res2net101-w26-s4.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/res2net/res2net50-w14-s8_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/res2net50-w14-s8.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/res2net/res2net50-w26-s8_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/res2net50-w26-s8.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/resnet/bit_resnet50_8xb32_in1k_strong_aug_coslr_300.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/bit_resnet50.py', '../_base_/datasets/imagenet_bs256_resnet_224.py', 3 | '../_base_/schedules/imagenet_bs2048_coslr_Lamb.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /configs/resnet/resnet101_8xb16_cifar10.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet101_cifar.py', 3 | '../_base_/datasets/cifar10_bs16.py', 4 | '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/resnet/resnet101_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet101.py', '../_base_/datasets/imagenet_bs32.py', 3 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 4 | ] 5 | 6 | model = dict( 7 | backbone=dict( 8 | out_indices=(2,3)) 9 | ) -------------------------------------------------------------------------------- /configs/resnet/resnet152_8xb16_cifar10.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet152_cifar.py', 3 | '../_base_/datasets/cifar10_bs16.py', 4 | '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/resnet/resnet152_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet152.py', '../_base_/datasets/imagenet_bs32.py', 3 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /configs/resnet/resnet18_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet18.py', '../_base_/datasets/imagenet_bs32.py', 3 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 4 | ] 5 | 6 | model = dict( 7 | backbone=dict( 8 | out_indices=(2,3)) 9 | ) -------------------------------------------------------------------------------- /configs/resnet/resnet18_8xb32_in1k_former_distill.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet18.py', '../_base_/datasets/imagenet_bs32_swin_224.py', 3 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 4 | ] 5 | model = dict( 6 | backbone=dict( 7 | out_indices=(2,3)) 8 | ) -------------------------------------------------------------------------------- /configs/resnet/resnet34_8xb16_cifar10.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet34_cifar.py', '../_base_/datasets/cifar10_bs16.py', 3 | '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /configs/resnet/resnet34_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet34.py', '../_base_/datasets/imagenet_bs32.py', 3 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /configs/resnet/resnet50_32xb64-warmup-coslr_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs64.py', 3 | '../_base_/schedules/imagenet_bs2048_coslr.py', 4 | '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/resnet/resnet50_32xb64-warmup-lbs_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./resnet50_32xb64-warmup_in1k.py'] 2 | model = dict( 3 | head=dict( 4 | type='LinearClsHead', 5 | num_classes=1000, 6 | in_channels=2048, 7 | loss=dict( 8 | type='LabelSmoothLoss', 9 | loss_weight=1.0, 10 | label_smooth_val=0.1, 11 | num_classes=1000), 12 | )) 13 | -------------------------------------------------------------------------------- /configs/resnet/resnet50_32xb64-warmup_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs64.py', 3 | '../_base_/schedules/imagenet_bs2048.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /configs/resnet/resnet50_8xb128_coslr-90e_in21k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50.py', '../_base_/datasets/imagenet21k_bs128.py', 3 | '../_base_/schedules/imagenet_bs1024_coslr.py', 4 | '../_base_/default_runtime.py' 5 | ] 6 | 7 | # model settings 8 | model = dict(head=dict(num_classes=21843)) 9 | 10 | # runtime settings 11 | train_cfg = dict(by_epoch=True, max_epochs=90) 12 | -------------------------------------------------------------------------------- /configs/resnet/resnet50_8xb16-mixup_cifar10.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50_cifar_mixup.py', 3 | '../_base_/datasets/cifar10_bs16.py', 4 | '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/resnet/resnet50_8xb16_cifar10.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50_cifar.py', '../_base_/datasets/cifar10_bs16.py', 3 | '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /configs/resnet/resnet50_8xb32-coslr_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs32.py', 3 | '../_base_/schedules/imagenet_bs256_coslr.py', 4 | '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/resnet/resnet50_8xb32-cutmix_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50_cutmix.py', 3 | '../_base_/datasets/imagenet_bs32.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/resnet/resnet50_8xb32-fp16-dynamic_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./resnet50_8xb32_in1k.py'] 2 | 3 | # schedule settings 4 | optim_wrapper = dict(type='AmpOptimWrapper', loss_scale='dynamic') 5 | -------------------------------------------------------------------------------- /configs/resnet/resnet50_8xb32-fp16_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./resnet50_8xb32_in1k.py'] 2 | 3 | # schedule settings 4 | optim_wrapper = dict(type='AmpOptimWrapper', loss_scale=512.) 5 | -------------------------------------------------------------------------------- /configs/resnet/resnet50_8xb32-lbs_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50_label_smooth.py', 3 | '../_base_/datasets/imagenet_bs32.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/resnet/resnet50_8xb32-mixup_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50_mixup.py', 3 | '../_base_/datasets/imagenet_bs32.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/resnet/resnet50_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs32.py', 3 | '../_base_/schedules/imagenet_bs256.py', 4 | '../_base_/default_runtime.py' 5 | ] 6 | 7 | model = dict( 8 | backbone=dict( 9 | out_indices=(2,3)) 10 | ) 11 | -------------------------------------------------------------------------------- /configs/resnet/resnetv1c101_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnetv1c50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | 7 | model = dict(backbone=dict(depth=101)) 8 | -------------------------------------------------------------------------------- /configs/resnet/resnetv1c152_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnetv1c50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | 7 | model = dict(backbone=dict(depth=152)) 8 | -------------------------------------------------------------------------------- /configs/resnet/resnetv1c50_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnetv1c50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/resnet/resnetv1d101_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnetv1d101.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/resnet/resnetv1d152_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnetv1d152.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/resnet/resnetv1d50_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnetv1d50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/resnext/resnext101-32x4d_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnext101_32x4d.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/resnext/resnext101-32x8d_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnext101_32x8d.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/resnext/resnext152-32x4d_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnext152_32x4d.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/resnext/resnext50-32x4d_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnext50_32x4d.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/revvit/revvit-base_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/revvit/revvit-base.py', 3 | '../_base_/datasets/imagenet_bs128_revvit_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_revvit.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /configs/revvit/revvit-small_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/revvit/revvit-small.py', 3 | '../_base_/datasets/imagenet_bs128_revvit_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_revvit.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /configs/seresnet/seresnet101_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/seresnet101.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/seresnet/seresnet50_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/seresnet50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_140e.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /configs/seresnet/seresnext101-32x4d_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/seresnext101_32x4d.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/seresnet/seresnext50-32x4d_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/seresnext50_32x4d.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/shufflenet_v1/shufflenet-v1-1x_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/shufflenet_v1_1x.py', 3 | '../_base_/datasets/imagenet_bs64_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs1024_linearlr_bn_nowd.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /configs/shufflenet_v2/shufflenet-v2-1x_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/shufflenet_v2_1x.py', 3 | '../_base_/datasets/imagenet_bs64_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs1024_linearlr_bn_nowd.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | model = dict( 9 | backbone=dict( 10 | out_indices=(2,3)) 11 | ) -------------------------------------------------------------------------------- /configs/swin_transformer/swin-base_16xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer/base_384.py', 3 | '../_base_/datasets/imagenet_bs64_swin_384.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /configs/swin_transformer/swin-base_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer/base_224.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /configs/swin_transformer/swin-large_16xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer/large_384.py', 3 | '../_base_/datasets/imagenet_bs64_swin_384.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /configs/swin_transformer/swin-large_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer/large_224.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /configs/swin_transformer/swin-small_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer/small_224.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /configs/swin_transformer_v2/swinv2-base-w16_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/base_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | model = dict(backbone=dict(window_size=[16, 16, 16, 8])) 9 | -------------------------------------------------------------------------------- /configs/swin_transformer_v2/swinv2-base-w8_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/base_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /configs/swin_transformer_v2/swinv2-small-w16_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/small_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | model = dict(backbone=dict(window_size=[16, 16, 16, 8])) 9 | -------------------------------------------------------------------------------- /configs/swin_transformer_v2/swinv2-small-w8_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/small_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /configs/swin_transformer_v2/swinv2-tiny-w16_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/tiny_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | model = dict(backbone=dict(window_size=[16, 16, 16, 8])) 9 | -------------------------------------------------------------------------------- /configs/swin_transformer_v2/swinv2-tiny-w8_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/tiny_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /configs/tinyvit/tinyvit-11m-distill_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | './tinyvit-11m_8xb256_in1k.py', 3 | ] 4 | -------------------------------------------------------------------------------- /configs/tinyvit/tinyvit-11m_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/datasets/imagenet_bs32_pil_bicubic.py', 3 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 4 | '../_base_/default_runtime.py', 5 | '../_base_/models/tinyvit/tinyvit-11m.py', 6 | ] 7 | -------------------------------------------------------------------------------- /configs/tinyvit/tinyvit-21m-distill_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | './tinyvit-21m_8xb256_in1k.py', 3 | ] 4 | -------------------------------------------------------------------------------- /configs/tinyvit/tinyvit-21m_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/datasets/imagenet_bs32_pil_bicubic.py', 3 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 4 | '../_base_/default_runtime.py', 5 | '../_base_/models/tinyvit/tinyvit-21m.py', 6 | ] 7 | -------------------------------------------------------------------------------- /configs/tinyvit/tinyvit-5m-distill_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | './tinyvit-5m_8xb256_in1k.py', 3 | ] 4 | -------------------------------------------------------------------------------- /configs/tinyvit/tinyvit-5m_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/datasets/imagenet_bs32_pil_bicubic.py', 3 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 4 | '../_base_/default_runtime.py', 5 | '../_base_/models/tinyvit/tinyvit-5m.py', 6 | ] 7 | -------------------------------------------------------------------------------- /configs/twins/twins-pcpvt-large_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['twins-pcpvt-base_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict(backbone=dict(arch='large'), head=dict(in_channels=512)) 5 | 6 | # dataset settings 7 | train_dataloader = dict(batch_size=64) 8 | -------------------------------------------------------------------------------- /configs/twins/twins-pcpvt-small_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['twins-pcpvt-base_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict(backbone=dict(arch='small'), head=dict(in_channels=512)) 5 | -------------------------------------------------------------------------------- /configs/twins/twins-svt-large_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['twins-svt-base_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict(backbone=dict(arch='large'), head=dict(in_channels=1024)) 5 | 6 | # dataset settings 7 | train_dataloader = dict(batch_size=64) 8 | -------------------------------------------------------------------------------- /configs/twins/twins-svt-small_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['twins-svt-base_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict(backbone=dict(arch='small'), head=dict(in_channels=512)) 5 | -------------------------------------------------------------------------------- /configs/vgg/vgg11_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg11.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(optimizer=dict(lr=0.01)) 10 | -------------------------------------------------------------------------------- /configs/vgg/vgg11bn_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg11bn.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /configs/vgg/vgg13_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg13.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(optimizer=dict(lr=0.01)) 10 | -------------------------------------------------------------------------------- /configs/vgg/vgg13bn_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg13bn.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /configs/vgg/vgg16_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg16.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(optimizer=dict(lr=0.01)) 10 | -------------------------------------------------------------------------------- /configs/vgg/vgg16bn_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg16bn.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /configs/vgg/vgg19_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg19.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(optimizer=dict(lr=0.01)) 10 | -------------------------------------------------------------------------------- /configs/vgg/vgg19bn_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg19bn.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /configs/vig/pvig-medium_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vig/pyramid_vig_medium.py', 3 | '../_base_/datasets/imagenet_bs128_vig_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /configs/vig/pvig-small_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vig/pyramid_vig_small.py', 3 | '../_base_/datasets/imagenet_bs128_vig_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /configs/vig/pvig-tiny_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vig/pyramid_vig_tiny.py', 3 | '../_base_/datasets/imagenet_bs128_vig_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /configs/vig/vig-base_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vig/vig_base.py', 3 | '../_base_/datasets/imagenet_bs128_vig_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /configs/vig/vig-small_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vig/vig_small.py', 3 | '../_base_/datasets/imagenet_bs128_vig_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /configs/vig/vig-tiny_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vig/vig_tiny.py', 3 | '../_base_/datasets/imagenet_bs128_vig_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /configs/wrn/wide-resnet101_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/wide-resnet50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | 7 | model = dict(backbone=dict(depth=101)) 8 | -------------------------------------------------------------------------------- /configs/wrn/wide-resnet50_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/wide-resnet50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/wrn/wide-resnet50_timm_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/wide-resnet50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_bicubic.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /demo/bird.JPEG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/demo/bird.JPEG -------------------------------------------------------------------------------- /demo/cat-dog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/demo/cat-dog.png -------------------------------------------------------------------------------- /demo/demo.JPEG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/demo/demo.JPEG -------------------------------------------------------------------------------- /demo/dog.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/demo/dog.jpg -------------------------------------------------------------------------------- /docker/serve/config.properties: -------------------------------------------------------------------------------- 1 | inference_address=http://0.0.0.0:8080 2 | management_address=http://0.0.0.0:8081 3 | metrics_address=http://0.0.0.0:8082 4 | model_store=/home/model-server/model-store 5 | load_models=all 6 | -------------------------------------------------------------------------------- /docker/serve/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | if [[ "$1" = "serve" ]]; then 5 | shift 1 6 | torchserve --start --ts-config /home/model-server/config.properties 7 | else 8 | eval "$@" 9 | fi 10 | 11 | # prevent docker exit 12 | tail -f /dev/null 13 | -------------------------------------------------------------------------------- /docs/en/_static/image/confusion-matrix.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/docs/en/_static/image/confusion-matrix.png -------------------------------------------------------------------------------- /docs/en/_static/image/mmcls-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/docs/en/_static/image/mmcls-logo.png -------------------------------------------------------------------------------- /docs/en/_static/image/tools/analysis/analyze_log.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/docs/en/_static/image/tools/analysis/analyze_log.jpg -------------------------------------------------------------------------------- /docs/en/_static/js/custom.js: -------------------------------------------------------------------------------- 1 | var collapsedSections = ['Useful Tools', 'Advanced Guids', 'Model zoo', 'Notes']; 2 | 3 | $(document).ready(function () { 4 | $('.model-summary').DataTable({ 5 | "stateSave": false, 6 | "lengthChange": false, 7 | "pageLength": 20, 8 | "order": [] 9 | }); 10 | }); 11 | -------------------------------------------------------------------------------- /docs/en/_templates/autosummary/class.rst: -------------------------------------------------------------------------------- 1 | .. role:: hidden 2 | :class: hidden-section 3 | .. currentmodule:: {{ module }} 4 | 5 | 6 | {{ name | underline}} 7 | 8 | .. autoclass:: {{ name }} 9 | :members: 10 | 11 | .. 12 | autogenerated from _templates/autosummary/class.rst 13 | note it does not have :inherited-members: 14 | -------------------------------------------------------------------------------- /docs/en/_templates/callable.rst: -------------------------------------------------------------------------------- 1 | .. role:: hidden 2 | :class: hidden-section 3 | .. currentmodule:: {{ module }} 4 | 5 | 6 | {{ name | underline}} 7 | 8 | .. autoclass:: {{ name }} 9 | :members: 10 | :special-members: __call__ 11 | 12 | .. 13 | autogenerated from _templates/callable.rst 14 | note it does not have :inherited-members: 15 | -------------------------------------------------------------------------------- /docs/en/_templates/data_transform.rst: -------------------------------------------------------------------------------- 1 | .. role:: hidden 2 | :class: hidden-section 3 | .. currentmodule:: {{ module }} 4 | 5 | 6 | {{ name | underline}} 7 | 8 | .. autoclass:: {{ name }} 9 | :members: transform 10 | 11 | .. 12 | autogenerated from _templates/callable.rst 13 | note it does not have :inherited-members: 14 | -------------------------------------------------------------------------------- /docs/en/advanced_guides/data_flow.md: -------------------------------------------------------------------------------- 1 | # Data Flow (TODO) 2 | -------------------------------------------------------------------------------- /docs/en/api/structures.rst: -------------------------------------------------------------------------------- 1 | .. role:: hidden 2 | :class: hidden-section 3 | 4 | .. module:: mmcls.structures 5 | 6 | mmcls.structures 7 | =================================== 8 | 9 | This package includes basic data structures for classification tasks. 10 | 11 | ClsDataSample 12 | ------------- 13 | .. autoclass:: ClsDataSample 14 | -------------------------------------------------------------------------------- /docs/en/api/utils.rst: -------------------------------------------------------------------------------- 1 | .. role:: hidden 2 | :class: hidden-section 3 | 4 | .. module:: mmcls.utils 5 | 6 | mmcls.utils 7 | =================================== 8 | 9 | This package includes some useful helper functions for developing. 10 | 11 | .. autosummary:: 12 | :toctree: generated 13 | :nosignatures: 14 | 15 | collect_env 16 | register_all_modules 17 | -------------------------------------------------------------------------------- /docs/en/api/visualization.rst: -------------------------------------------------------------------------------- 1 | .. role:: hidden 2 | :class: hidden-section 3 | 4 | .. module:: mmcls.visualization 5 | 6 | mmcls.visualization 7 | =================================== 8 | 9 | This package includes visualizer components for classification tasks. 10 | 11 | ClsVisualizer 12 | ------------- 13 | .. autoclass:: ClsVisualizer 14 | -------------------------------------------------------------------------------- /docs/en/docutils.conf: -------------------------------------------------------------------------------- 1 | [html writers] 2 | table_style: colwidths-auto 3 | -------------------------------------------------------------------------------- /docs/zh_CN/_static/image/mmcls-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/docs/zh_CN/_static/image/mmcls-logo.png -------------------------------------------------------------------------------- /docs/zh_CN/_static/image/tools/analysis/analyze_log.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/docs/zh_CN/_static/image/tools/analysis/analyze_log.jpg -------------------------------------------------------------------------------- /docs/zh_CN/_templates/404.html: -------------------------------------------------------------------------------- 1 | {% extends "layout.html" %} 2 | 3 | {% block body %} 4 | 5 |

未找到页面

6 |

7 | 未找到你要打开的页面。 8 |

9 |

10 | 如果你是从旧版本文档跳转至此,可能是对应的页面被移动了。请从左侧的目录中寻找新版本文档,或者跳转至首页。 11 |

12 |

13 | 如果你找不到希望打开的文档,欢迎在 Issue 中告诉我们! 14 |

15 | 16 | {% endblock %} 17 | -------------------------------------------------------------------------------- /docs/zh_CN/_templates/autosummary/class.rst: -------------------------------------------------------------------------------- 1 | .. role:: hidden 2 | :class: hidden-section 3 | .. currentmodule:: {{ module }} 4 | 5 | 6 | {{ name | underline}} 7 | 8 | .. autoclass:: {{ name }} 9 | :members: 10 | 11 | .. 12 | autogenerated from _templates/autosummary/class.rst 13 | note it does not have :inherited-members: 14 | -------------------------------------------------------------------------------- /docs/zh_CN/_templates/callable.rst: -------------------------------------------------------------------------------- 1 | .. role:: hidden 2 | :class: hidden-section 3 | .. currentmodule:: {{ module }} 4 | 5 | 6 | {{ name | underline}} 7 | 8 | .. autoclass:: {{ name }} 9 | :members: 10 | :special-members: __call__ 11 | 12 | .. 13 | autogenerated from _templates/callable.rst 14 | note it does not have :inherited-members: 15 | -------------------------------------------------------------------------------- /docs/zh_CN/_templates/data_transform.rst: -------------------------------------------------------------------------------- 1 | .. role:: hidden 2 | :class: hidden-section 3 | .. currentmodule:: {{ module }} 4 | 5 | 6 | {{ name | underline}} 7 | 8 | .. autoclass:: {{ name }} 9 | :members: transform 10 | 11 | .. 12 | autogenerated from _templates/callable.rst 13 | note it does not have :inherited-members: 14 | -------------------------------------------------------------------------------- /docs/zh_CN/advanced_guides/data_flow.md: -------------------------------------------------------------------------------- 1 | # 数据流(待更新) 2 | -------------------------------------------------------------------------------- /docs/zh_CN/advanced_guides/evaluation.md: -------------------------------------------------------------------------------- 1 | # 自定义评估指标(待更新) 2 | 3 | 请参见[英文文档](https://mmclassification.readthedocs.io/en/dev-1.x/advanced_guides/evaluation.html),如果你有兴 4 | 趣参与中文文档的翻译,欢迎在 [讨论区](https://github.com/open-mmlab/mmclassification/discussions/1027)进行报名。 5 | -------------------------------------------------------------------------------- /docs/zh_CN/advanced_guides/pipeline.md: -------------------------------------------------------------------------------- 1 | # 自定义数据处理流程(待更新) 2 | 3 | 请参见[英文文档](https://mmclassification.readthedocs.io/en/dev-1.x/advanced_guides/pipeline.html),如果你有兴 4 | 趣参与中文文档的翻译,欢迎在 [讨论区](https://github.com/open-mmlab/mmclassification/discussions/1027)进行报名。 5 | -------------------------------------------------------------------------------- /docs/zh_CN/docutils.conf: -------------------------------------------------------------------------------- 1 | [html writers] 2 | table_style: colwidths-auto 3 | -------------------------------------------------------------------------------- /docs/zh_CN/notes/projects.md: -------------------------------------------------------------------------------- 1 | # 基于 MMClassification 的项目列表(待更新) 2 | -------------------------------------------------------------------------------- /imgs/ADE-20K.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/imgs/ADE-20K.png -------------------------------------------------------------------------------- /imgs/IN-1K.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/imgs/IN-1K.png -------------------------------------------------------------------------------- /imgs/MS-COCO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/imgs/MS-COCO.png -------------------------------------------------------------------------------- /imgs/teaser.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/imgs/teaser.png -------------------------------------------------------------------------------- /mmcls.egg-info/dependency_links.txt: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /mmcls.egg-info/not-zip-safe: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /mmcls.egg-info/top_level.txt: -------------------------------------------------------------------------------- 1 | mmcls 2 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/convmixer/convmixer-1024-20.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='ConvMixer', arch='1024/20'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1024, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/convmixer/convmixer-1536-20.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='ConvMixer', arch='1536/20'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1536, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/convmixer/convmixer-768-32.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='ConvMixer', arch='768/32', act_cfg=dict(type='ReLU')), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=768, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/densenet/densenet121.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='DenseNet', arch='121'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1024, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/densenet/densenet161.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='DenseNet', arch='161'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=2208, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/densenet/densenet169.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='DenseNet', arch='169'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1664, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/densenet/densenet201.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='DenseNet', arch='201'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1920, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/efficientnet_b0.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b0'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/efficientnet_b1.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b1'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/efficientnet_b2.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b2'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1408, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/efficientnet_b3.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b3'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1536, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/efficientnet_b4.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b4'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1792, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/efficientnet_b5.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b5'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=2048, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/efficientnet_b6.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b6'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=2304, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/efficientnet_b7.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b7'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=2560, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/efficientnet_b8.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b8'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=2816, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/efficientnet_l2.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='l2'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=5504, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/efficientnet_v2/efficientnetv2_b0.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='b0'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/efficientnet_v2/efficientnetv2_b1.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='b1'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/efficientnet_v2/efficientnetv2_b2.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='b2'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1408, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/efficientnet_v2/efficientnetv2_b3.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='b3'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1536, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/efficientnet_v2/efficientnetv2_l.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='l'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/efficientnet_v2/efficientnetv2_m.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='m'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/efficientnet_v2/efficientnetv2_s.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='s'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/efficientnet_v2/efficientnetv2_xl.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='xl'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/inception_v3.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='InceptionV3', num_classes=1000, aux_logits=False), 5 | neck=None, 6 | head=dict( 7 | type='ClsHead', 8 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 9 | topk=(1, 5)), 10 | ) 11 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/mobilenet_v1_1x.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='MobileNetV1'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1024, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/mobilenet_v2_1x.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='MobileNetV2', widen_factor=1.0), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/mobilevit/mobilevit_s.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='MobileViT', arch='small'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=640, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/mobilevit/mobilevit_xs.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='MobileViT', arch='x_small'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=384, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/mobilevit/mobilevit_xxs.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='MobileViT', arch='xx_small'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=320, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/regnet/regnetx_1.6gf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_1.6gf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=912, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/regnet/regnetx_12gf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_12gf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=2240, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/regnet/regnetx_3.2gf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_3.2gf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1008, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/regnet/regnetx_4.0gf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_4.0gf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1360, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/regnet/regnetx_400mf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_400mf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=384, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/regnet/regnetx_6.4gf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_6.4gf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1624, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/regnet/regnetx_8.0gf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_8.0gf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1920, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/regnet/regnetx_800mf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_800mf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=672, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/replknet-XL_in1k.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='RepLKNet', 5 | arch='XL', 6 | out_indices=(3, ), 7 | ), 8 | neck=dict(type='GlobalAveragePooling'), 9 | head=dict( 10 | type='LinearClsHead', 11 | num_classes=1000, 12 | in_channels=2048, 13 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 14 | topk=(1, 5), 15 | )) 16 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/repvgg-A0_in1k.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='RepVGG', 5 | arch='A0', 6 | out_indices=(3, ), 7 | ), 8 | neck=dict(type='GlobalAveragePooling'), 9 | head=dict( 10 | type='LinearClsHead', 11 | num_classes=1000, 12 | in_channels=1280, 13 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 14 | topk=(1, 5), 15 | )) 16 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/shufflenet_v1_1x.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='ShuffleNetV1', groups=3), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=960, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/shufflenet_v2_1x.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='ShuffleNetV2', widen_factor=1.0), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1024, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/vgg11.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='VGG', depth=11, num_classes=1000), 5 | neck=None, 6 | head=dict( 7 | type='ClsHead', 8 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 9 | topk=(1, 5), 10 | )) 11 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/vgg11bn.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='VGG', depth=11, norm_cfg=dict(type='BN'), num_classes=1000), 6 | neck=None, 7 | head=dict( 8 | type='ClsHead', 9 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 10 | topk=(1, 5), 11 | )) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/vgg13.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='VGG', depth=13, num_classes=1000), 5 | neck=None, 6 | head=dict( 7 | type='ClsHead', 8 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 9 | topk=(1, 5), 10 | )) 11 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/vgg13bn.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='VGG', depth=13, norm_cfg=dict(type='BN'), num_classes=1000), 6 | neck=None, 7 | head=dict( 8 | type='ClsHead', 9 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 10 | topk=(1, 5), 11 | )) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/vgg16.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='VGG', depth=16, num_classes=1000), 5 | neck=None, 6 | head=dict( 7 | type='ClsHead', 8 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 9 | topk=(1, 5), 10 | )) 11 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/vgg16bn.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='VGG', depth=16, norm_cfg=dict(type='BN'), num_classes=1000), 6 | neck=None, 7 | head=dict( 8 | type='ClsHead', 9 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 10 | topk=(1, 5), 11 | )) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/vgg19.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='VGG', depth=19, num_classes=1000), 5 | neck=None, 6 | head=dict( 7 | type='ClsHead', 8 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 9 | topk=(1, 5), 10 | )) 11 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/_base_/models/vgg19bn.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='VGG', depth=19, norm_cfg=dict(type='BN'), num_classes=1000), 6 | neck=None, 7 | head=dict( 8 | type='ClsHead', 9 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 10 | topk=(1, 5), 11 | )) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/clip/vit-base-p16_pt-64xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vit-base-p16.py', 3 | '../_base_/datasets/imagenet_bs64_clip_384.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model setting/mnt/lustre/lirongjie/tmp/clip_ckpt/trans_ckpt 9 | model = dict(backbone=dict(pre_norm=True, ), ) 10 | 11 | # schedule setting 12 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/clip/vit-base-p16_pt-64xb64_in1k-448px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vit-base-p16.py', 3 | '../_base_/datasets/imagenet_bs64_clip_448.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model setting/mnt/lustre/lirongjie/tmp/clip_ckpt/trans_ckpt 9 | model = dict(backbone=dict(pre_norm=True, ), ) 10 | 11 | # schedule setting 12 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/clip/vit-base-p16_pt-64xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vit-base-p16.py', 3 | '../_base_/datasets/imagenet_bs64_clip_224.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model setting/mnt/lustre/lirongjie/tmp/clip_ckpt/trans_ckpt 9 | model = dict(backbone=dict(pre_norm=True, ), ) 10 | 11 | # schedule setting 12 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/clip/vit-base-p32_pt-64xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vit-base-p32.py', 3 | '../_base_/datasets/imagenet_bs64_clip_384.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model setting/mnt/lustre/lirongjie/tmp/clip_ckpt/trans_ckpt 9 | model = dict(backbone=dict(pre_norm=True, ), ) 10 | 11 | # schedule setting 12 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/clip/vit-base-p32_pt-64xb64_in1k-448px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vit-base-p32.py', 3 | '../_base_/datasets/imagenet_bs64_clip_448.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model setting/mnt/lustre/lirongjie/tmp/clip_ckpt/trans_ckpt 9 | model = dict(backbone=dict(pre_norm=True, ), ) 10 | 11 | # schedule setting 12 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/clip/vit-base-p32_pt-64xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vit-base-p32.py', 3 | '../_base_/datasets/imagenet_bs64_clip_224.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model setting/mnt/lustre/lirongjie/tmp/clip_ckpt/trans_ckpt 9 | model = dict(backbone=dict(pre_norm=True, ), ) 10 | 11 | # schedule setting 12 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/conformer/conformer-base-p16_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/conformer/base-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_conformer.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | train_dataloader = dict(batch_size=128) 9 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/conformer/conformer-small-p16_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/conformer/small-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_conformer.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | train_dataloader = dict(batch_size=128) 9 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/conformer/conformer-small-p32_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/conformer/small-p32.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_conformer.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | train_dataloader = dict(batch_size=128) 9 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/conformer/conformer-tiny-p16_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/conformer/tiny-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_conformer.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | train_dataloader = dict(batch_size=128) 9 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/davit/davit-base_4xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/davit/davit-base.py', 3 | '../_base_/datasets/imagenet_bs256_davit_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # data settings 9 | train_dataloader = dict(batch_size=256) 10 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/davit/davit-small_4xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/davit/davit-small.py', 3 | '../_base_/datasets/imagenet_bs256_davit_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # data settings 9 | train_dataloader = dict(batch_size=256) 10 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/davit/davit-tiny_4xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/davit/davit-tiny.py', 3 | '../_base_/datasets/imagenet_bs256_davit_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # data settings 9 | train_dataloader = dict(batch_size=256) 10 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/deit/deit-base-distilled_ft-16xb32_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = './deit-base_ft-16xb32_in1k-384px.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(type='DistilledVisionTransformer'), 6 | head=dict(type='DeiTClsHead'), 7 | # Change to the path of the pretrained model 8 | # init_cfg=dict(type='Pretrained', checkpoint=''), 9 | ) 10 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/deit/deit-base-distilled_pt-16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './deit-small_pt-4xb256_in1k.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(type='DistilledVisionTransformer', arch='deit-base'), 6 | head=dict(type='DeiTClsHead', in_channels=768), 7 | ) 8 | 9 | # dataset settings 10 | train_dataloader = dict(batch_size=64) 11 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/deit/deit-small-distilled_pt-4xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './deit-small_pt-4xb256_in1k.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(type='DistilledVisionTransformer', arch='deit-small'), 6 | head=dict(type='DeiTClsHead', in_channels=384), 7 | ) 8 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/deit/deit-tiny-distilled_pt-4xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './deit-small_pt-4xb256_in1k.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(type='DistilledVisionTransformer', arch='deit-tiny'), 6 | head=dict(type='DeiTClsHead', in_channels=192), 7 | ) 8 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/deit/deit-tiny_pt-4xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './deit-small_pt-4xb256_in1k.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(type='VisionTransformer', arch='deit-tiny'), 6 | head=dict(type='VisionTransformerClsHead', in_channels=192), 7 | ) 8 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/efficientformer/efficientformer-l1_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/efficientformer-l1.py', 3 | '../_base_/datasets/imagenet_bs128_poolformer_small_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/efficientformer/efficientformer-l3_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './efficientformer-l1_8xb128_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='l3'), head=dict(in_channels=512)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/efficientformer/efficientformer-l7_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './efficientformer-l1_8xb128_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='l7'), head=dict(in_channels=768)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/efficientnet_v2/efficientnetv2-l_8xb32_in21k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./efficientnetv2-s_8xb32_in21k.py'] 2 | 3 | # model setting 4 | model = dict(backbone=dict(arch='l'), ) 5 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/efficientnet_v2/efficientnetv2-m_8xb32_in21k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./efficientnetv2-s_8xb32_in21k.py'] 2 | 3 | # model setting 4 | model = dict(backbone=dict(arch='m'), ) 5 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/efficientnet_v2/efficientnetv2-xl_8xb32_in21k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./efficientnetv2-s_8xb32_in21k.py'] 2 | 3 | # model setting 4 | model = dict(backbone=dict(arch='xl'), ) 5 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/eva/eva-g-p14_8xb16_in1k-336px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/eva/eva-g.py', 3 | '../_base_/datasets/imagenet_bs16_eva_336.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(img_size=336)) 10 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/eva/eva-g-p14_8xb16_in1k-560px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/eva/eva-g.py', 3 | '../_base_/datasets/imagenet_bs16_eva_560.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(img_size=560)) 10 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/eva/eva-l-p14_8xb16_in1k-196px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/eva/eva-l.py', 3 | '../_base_/datasets/imagenet_bs16_eva_196.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(img_size=196)) 10 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/eva/eva-l-p14_8xb16_in1k-336px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/eva/eva-l.py', 3 | '../_base_/datasets/imagenet_bs16_eva_336.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(img_size=336)) 10 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/hrnet/hrnet-w18_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w18.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/hrnet/hrnet-w30_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w30.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/hrnet/hrnet-w32_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w32.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/hrnet/hrnet-w40_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w40.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/hrnet/hrnet-w44_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w44.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/hrnet/hrnet-w48_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w48.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/hrnet/hrnet-w64_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w64.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/levit/deploy/levit-128_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../levit-128_8xb256_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True), head=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/levit/deploy/levit-128s_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../levit-128s_8xb256_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True), head=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/levit/deploy/levit-192_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../levit-192_8xb256_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True), head=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/levit/deploy/levit-256_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../levit-256_8xb256_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True), head=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/levit/deploy/levit-384_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../levit-384_8xb256_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True), head=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/levit/levit-128_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/levit-256-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs2048_adamw_levit.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(arch='128'), head=dict(in_channels=384)) 10 | 11 | # dataset settings 12 | train_dataloader = dict(batch_size=256) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/levit/levit-128s_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/levit-256-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs2048_adamw_levit.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(arch='128s'), head=dict(in_channels=384)) 10 | 11 | # dataset settings 12 | train_dataloader = dict(batch_size=256) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/levit/levit-192_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/levit-256-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs2048_adamw_levit.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(arch='192'), head=dict(in_channels=384)) 10 | 11 | # dataset settings 12 | train_dataloader = dict(batch_size=256) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/levit/levit-256_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/levit-256-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs2048_adamw_levit.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # dataset settings 9 | train_dataloader = dict(batch_size=256) 10 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/mixmim/mixmim-base_8xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mixmim/mixmim_base.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/mlp_mixer/mlp-mixer-base-p16_64xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mlp_mixer_base_patch16.py', 3 | '../_base_/datasets/imagenet_bs64_mixer_224.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 9 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/mlp_mixer/mlp-mixer-large-p16_64xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mlp_mixer_large_patch16.py', 3 | '../_base_/datasets/imagenet_bs64_mixer_224.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 9 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/mobilenet_v1/mobilenet_v1.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mobilenet_v1_1x.py', 3 | '../_base_/datasets/imagenet_bs32.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mobilenet_v2_1x.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_epochstep.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | model = dict( 9 | backbone=dict( 10 | out_indices=(4,5,6,7)) 11 | ) -------------------------------------------------------------------------------- /mmcls/.mim/configs/mobileone/deploy/mobileone-s0_deploy_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../mobileone-s0_8xb32_in1k.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/mobileone/deploy/mobileone-s1_deploy_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../mobileone-s1_8xb32_in1k.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/mobileone/deploy/mobileone-s2_deploy_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../mobileone-s2_8xb32_in1k.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/mobileone/deploy/mobileone-s3_deploy_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../mobileone-s3_8xb32_in1k.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/mobileone/deploy/mobileone-s4_deploy_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../mobileone-s4_8xb32_in1k.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/regnet/regnetx-1.6gf_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./regnetx-400mf_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(type='RegNet', arch='regnetx_1.6gf'), 6 | head=dict(in_channels=912, )) 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/regnet/regnetx-800mf_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./regnetx-400mf_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(type='RegNet', arch='regnetx_800mf'), 6 | head=dict(in_channels=672, )) 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/replknet/deploy/replknet-31B-deploy_32xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = '../replknet-31B_32xb64_in1k-384px.py' 2 | 3 | model = dict(backbone=dict(small_kernel_merged=True)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/replknet/deploy/replknet-31B-deploy_32xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../replknet-31B_32xb64_in1k.py' 2 | 3 | model = dict(backbone=dict(small_kernel_merged=True)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/replknet/deploy/replknet-31L-deploy_32xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = '../replknet-31L_32xb64_in1k-384px.py' 2 | 3 | model = dict(backbone=dict(small_kernel_merged=True)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/replknet/deploy/replknet-XL-deploy_32xb64_in1k-320px.py: -------------------------------------------------------------------------------- 1 | _base_ = '../replknet-XL_32xb64_in1k-320px.py' 2 | 3 | model = dict(backbone=dict(small_kernel_merged=True)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/replknet/replknet-31B_32xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/replknet-31B_in1k.py', 3 | '../_base_/datasets/imagenet_bs16_pil_bicubic_384.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | param_scheduler = dict( 10 | type='CosineAnnealingLR', T_max=300, by_epoch=True, begin=0, end=300) 11 | 12 | train_cfg = dict(by_epoch=True, max_epochs=300) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/replknet/replknet-31B_32xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/replknet-31B_in1k.py', 3 | '../_base_/datasets/imagenet_bs32_pil_bicubic.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | param_scheduler = dict( 10 | type='CosineAnnealingLR', T_max=300, by_epoch=True, begin=0, end=300) 11 | 12 | train_cfg = dict(by_epoch=True, max_epochs=300) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/replknet/replknet-31L_32xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/replknet-31L_in1k.py', 3 | '../_base_/datasets/imagenet_bs16_pil_bicubic_384.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | param_scheduler = dict( 10 | type='CosineAnnealingLR', T_max=300, by_epoch=True, begin=0, end=300) 11 | 12 | train_cfg = dict(by_epoch=True, max_epochs=300) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/replknet/replknet-XL_32xb64_in1k-320px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/replknet-XL_in1k.py', 3 | '../_base_/datasets/imagenet_bs8_pil_bicubic_320.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | param_scheduler = dict( 10 | type='CosineAnnealingLR', T_max=300, by_epoch=True, begin=0, end=300) 11 | 12 | train_cfg = dict(by_epoch=True, max_epochs=300) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/repmlp/repmlp-base_delopy_8xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./repmlp-base_8xb64_in1k.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/repmlp/repmlp-base_deploy_8xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./repmlp-base_8xb64_in1k-256px.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/repvgg/repvgg-A0_deploy_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/repvgg/repvgg-A1_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='A1')) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/repvgg/repvgg-A2_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='A2'), head=dict(in_channels=1408)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/repvgg/repvgg-B0_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B0'), head=dict(in_channels=1280)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/repvgg/repvgg-B1_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B1'), head=dict(in_channels=2048)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/repvgg/repvgg-B1g2_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B1g2'), head=dict(in_channels=2048)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/repvgg/repvgg-B1g4_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B1g4'), head=dict(in_channels=2048)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/repvgg/repvgg-B2_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B2'), head=dict(in_channels=2560)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/repvgg/repvgg-B2g4_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-B3_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B2g4'), head=dict(in_channels=2560)) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/repvgg/repvgg-B3g4_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-B3_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B3g4')) 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/res2net/res2net101-w26-s4_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/res2net101-w26-s4.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/res2net/res2net50-w14-s8_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/res2net50-w14-s8.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/res2net/res2net50-w26-s8_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/res2net50-w26-s8.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet101_8xb16_cifar10.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet101_cifar.py', 3 | '../_base_/datasets/cifar10_bs16.py', 4 | '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet101_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet101.py', '../_base_/datasets/imagenet_bs32.py', 3 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 4 | ] 5 | 6 | model = dict( 7 | backbone=dict( 8 | out_indices=(2,3)) 9 | ) -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet152_8xb16_cifar10.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet152_cifar.py', 3 | '../_base_/datasets/cifar10_bs16.py', 4 | '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet152_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet152.py', '../_base_/datasets/imagenet_bs32.py', 3 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet18_8xb16_cifar10.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet18_cifar.py', '../_base_/datasets/cifar10_bs16.py', 3 | '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet18_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet18.py', '../_base_/datasets/imagenet_bs32_swin_224.py', 3 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 4 | ] 5 | model = dict( 6 | backbone=dict( 7 | out_indices=(2,3)) 8 | ) 9 | # imagenet_bs64_swin_224 -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet18_8xb32_in1k_former_distill.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet18.py', '../_base_/datasets/imagenet_bs32_swin_224.py', 3 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 4 | ] 5 | model = dict( 6 | backbone=dict( 7 | out_indices=(2,3)) 8 | ) -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet34_8xb16_cifar10.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet34_cifar.py', '../_base_/datasets/cifar10_bs16.py', 3 | '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet34_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet34.py', '../_base_/datasets/imagenet_bs32.py', 3 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet50_32xb64-warmup-coslr_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs64.py', 3 | '../_base_/schedules/imagenet_bs2048_coslr.py', 4 | '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet50_32xb64-warmup-lbs_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./resnet50_32xb64-warmup_in1k.py'] 2 | model = dict( 3 | head=dict( 4 | type='LinearClsHead', 5 | num_classes=1000, 6 | in_channels=2048, 7 | loss=dict( 8 | type='LabelSmoothLoss', 9 | loss_weight=1.0, 10 | label_smooth_val=0.1, 11 | num_classes=1000), 12 | )) 13 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet50_32xb64-warmup_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs64.py', 3 | '../_base_/schedules/imagenet_bs2048.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet50_8xb128_coslr-90e_in21k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50.py', '../_base_/datasets/imagenet21k_bs128.py', 3 | '../_base_/schedules/imagenet_bs1024_coslr.py', 4 | '../_base_/default_runtime.py' 5 | ] 6 | 7 | # model settings 8 | model = dict(head=dict(num_classes=21843)) 9 | 10 | # runtime settings 11 | train_cfg = dict(by_epoch=True, max_epochs=90) 12 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet50_8xb16-mixup_cifar10.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50_cifar_mixup.py', 3 | '../_base_/datasets/cifar10_bs16.py', 4 | '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet50_8xb16_cifar10.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50_cifar.py', '../_base_/datasets/cifar10_bs16.py', 3 | '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet50_8xb32-coslr_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs32.py', 3 | '../_base_/schedules/imagenet_bs256_coslr.py', 4 | '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet50_8xb32-cutmix_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50_cutmix.py', 3 | '../_base_/datasets/imagenet_bs32.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet50_8xb32-fp16-dynamic_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./resnet50_8xb32_in1k.py'] 2 | 3 | # schedule settings 4 | optim_wrapper = dict(type='AmpOptimWrapper', loss_scale='dynamic') 5 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet50_8xb32-fp16_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./resnet50_8xb32_in1k.py'] 2 | 3 | # schedule settings 4 | optim_wrapper = dict(type='AmpOptimWrapper', loss_scale=512.) 5 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet50_8xb32-lbs_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50_label_smooth.py', 3 | '../_base_/datasets/imagenet_bs32.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet50_8xb32-mixup_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50_mixup.py', 3 | '../_base_/datasets/imagenet_bs32.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnet50_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs32.py', 3 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 4 | ] 5 | 6 | model = dict( 7 | backbone=dict( 8 | out_indices=(2,3)) 9 | ) -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnetv1c101_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnetv1c50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | 7 | model = dict(backbone=dict(depth=101)) 8 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnetv1c152_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnetv1c50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | 7 | model = dict(backbone=dict(depth=152)) 8 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnetv1c50_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnetv1c50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnetv1d101_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnetv1d101.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnetv1d152_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnetv1d152.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnet/resnetv1d50_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnetv1d50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnext/resnext101-32x4d_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnext101_32x4d.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnext/resnext101-32x8d_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnext101_32x8d.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnext/resnext152-32x4d_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnext152_32x4d.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/resnext/resnext50-32x4d_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnext50_32x4d.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/revvit/revvit-base_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/revvit/revvit-base.py', 3 | '../_base_/datasets/imagenet_bs128_revvit_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_revvit.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/revvit/revvit-small_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/revvit/revvit-small.py', 3 | '../_base_/datasets/imagenet_bs128_revvit_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_revvit.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/seresnet/seresnet101_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/seresnet101.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/seresnet/seresnet50_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/seresnet50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_140e.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/seresnet/seresnext101-32x4d_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/seresnext101_32x4d.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/seresnet/seresnext50-32x4d_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/seresnext50_32x4d.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/shufflenet_v1/shufflenet-v1-1x_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/shufflenet_v1_1x.py', 3 | '../_base_/datasets/imagenet_bs64_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs1024_linearlr_bn_nowd.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/shufflenet_v2/shufflenet-v2-1x_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/shufflenet_v2_1x.py', 3 | '../_base_/datasets/imagenet_bs64_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs1024_linearlr_bn_nowd.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | model = dict( 9 | backbone=dict( 10 | out_indices=(2,3)) 11 | ) -------------------------------------------------------------------------------- /mmcls/.mim/configs/swin_transformer/swin-base_16xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer/base_384.py', 3 | '../_base_/datasets/imagenet_bs64_swin_384.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/swin_transformer/swin-base_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer/base_224.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/swin_transformer/swin-large_16xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer/large_384.py', 3 | '../_base_/datasets/imagenet_bs64_swin_384.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/swin_transformer/swin-large_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer/large_224.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/swin_transformer/swin-small_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer/small_224.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/swin_transformer/swin-tiny_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer/tiny_224.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | model = dict( 9 | backbone=dict( 10 | out_indices=(0,1,2,3)) 11 | ) 12 | 13 | # schedule settings 14 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 15 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/swin_transformer_v2/swinv2-base-w16_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/base_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | model = dict(backbone=dict(window_size=[16, 16, 16, 8])) 9 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/swin_transformer_v2/swinv2-base-w8_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/base_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/swin_transformer_v2/swinv2-small-w16_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/small_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | model = dict(backbone=dict(window_size=[16, 16, 16, 8])) 9 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/swin_transformer_v2/swinv2-small-w8_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/small_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/swin_transformer_v2/swinv2-tiny-w16_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/tiny_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | model = dict(backbone=dict(window_size=[16, 16, 16, 8])) 9 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/swin_transformer_v2/swinv2-tiny-w8_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/tiny_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/tinyvit/tinyvit-11m-distill_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | './tinyvit-11m_8xb256_in1k.py', 3 | ] 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/tinyvit/tinyvit-11m_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/datasets/imagenet_bs32_pil_bicubic.py', 3 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 4 | '../_base_/default_runtime.py', 5 | '../_base_/models/tinyvit/tinyvit-11m.py', 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/tinyvit/tinyvit-21m-distill_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | './tinyvit-21m_8xb256_in1k.py', 3 | ] 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/tinyvit/tinyvit-21m_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/datasets/imagenet_bs32_pil_bicubic.py', 3 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 4 | '../_base_/default_runtime.py', 5 | '../_base_/models/tinyvit/tinyvit-21m.py', 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/tinyvit/tinyvit-5m-distill_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | './tinyvit-5m_8xb256_in1k.py', 3 | ] 4 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/tinyvit/tinyvit-5m_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/datasets/imagenet_bs32_pil_bicubic.py', 3 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 4 | '../_base_/default_runtime.py', 5 | '../_base_/models/tinyvit/tinyvit-5m.py', 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/twins/twins-pcpvt-large_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['twins-pcpvt-base_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict(backbone=dict(arch='large'), head=dict(in_channels=512)) 5 | 6 | # dataset settings 7 | train_dataloader = dict(batch_size=64) 8 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/twins/twins-pcpvt-small_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['twins-pcpvt-base_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict(backbone=dict(arch='small'), head=dict(in_channels=512)) 5 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/twins/twins-svt-large_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['twins-svt-base_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict(backbone=dict(arch='large'), head=dict(in_channels=1024)) 5 | 6 | # dataset settings 7 | train_dataloader = dict(batch_size=64) 8 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/twins/twins-svt-small_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['twins-svt-base_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict(backbone=dict(arch='small'), head=dict(in_channels=512)) 5 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/vgg/vgg11_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg11.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(optimizer=dict(lr=0.01)) 10 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/vgg/vgg11bn_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg11bn.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/vgg/vgg13_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg13.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(optimizer=dict(lr=0.01)) 10 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/vgg/vgg13bn_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg13bn.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/vgg/vgg16_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg16.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(optimizer=dict(lr=0.01)) 10 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/vgg/vgg16bn_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg16bn.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/vgg/vgg19_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg19.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(optimizer=dict(lr=0.01)) 10 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/vgg/vgg19bn_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg19bn.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/vig/pvig-medium_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vig/pyramid_vig_medium.py', 3 | '../_base_/datasets/imagenet_bs128_vig_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/vig/pvig-small_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vig/pyramid_vig_small.py', 3 | '../_base_/datasets/imagenet_bs128_vig_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/vig/pvig-tiny_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vig/pyramid_vig_tiny.py', 3 | '../_base_/datasets/imagenet_bs128_vig_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/vig/vig-base_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vig/vig_base.py', 3 | '../_base_/datasets/imagenet_bs128_vig_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/vig/vig-small_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vig/vig_small.py', 3 | '../_base_/datasets/imagenet_bs128_vig_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/vig/vig-tiny_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vig/vig_tiny.py', 3 | '../_base_/datasets/imagenet_bs128_vig_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/wrn/wide-resnet101_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/wide-resnet50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | 7 | model = dict(backbone=dict(depth=101)) 8 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/wrn/wide-resnet50_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/wide-resnet50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/.mim/configs/wrn/wide-resnet50_timm_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/wide-resnet50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_bicubic.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /mmcls/apis/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .inference import ImageClassificationInferencer, inference_model 3 | from .model import ModelHub, get_model, init_model, list_models 4 | 5 | __all__ = [ 6 | 'init_model', 'inference_model', 'list_models', 'get_model', 'ModelHub', 7 | 'ImageClassificationInferencer' 8 | ] 9 | -------------------------------------------------------------------------------- /mmcls/datasets/samplers/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .repeat_aug import RepeatAugSampler 3 | 4 | __all__ = ('RepeatAugSampler', ) 5 | -------------------------------------------------------------------------------- /mmcls/engine/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .hooks import * # noqa: F401, F403 3 | from .optimizers import * # noqa: F401, F403 4 | -------------------------------------------------------------------------------- /mmcls/engine/optimizers/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .adan_t import Adan 3 | from .lamb import Lamb 4 | 5 | __all__ = ['Lamb', 'Adan'] 6 | -------------------------------------------------------------------------------- /mmcls/evaluation/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .metrics import * # noqa: F401,F403 3 | -------------------------------------------------------------------------------- /mmcls/models/classifiers/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .base import BaseClassifier 3 | from .hugging_face import HuggingFaceClassifier 4 | from .image import ImageClassifier 5 | from .timm import TimmClassifier 6 | from .distiller import ClassificationDistiller 7 | 8 | __all__ = [ 9 | 'BaseClassifier', 'ImageClassifier', 'TimmClassifier', 10 | 'HuggingFaceClassifier', 'ClassificationDistiller', 11 | ] 12 | -------------------------------------------------------------------------------- /mmcls/models/dis_losses/__init__.py: -------------------------------------------------------------------------------- 1 | from .kd import KDLoss 2 | from .fd import FDLoss 3 | from .fmd import FreqMaskingDistillLoss 4 | from .fmdv2 import FreqMaskingDistillLossv2 5 | from .fmd_convnext import FreqMaskingDistillLossConvNext 6 | 7 | 8 | __all__ = [ 9 | 'KDLoss', 'FDLoss' , 'FreqMaskingDistillLoss', 'FreqMaskingDistillLossv2', 'FreqMaskingDistillLossConvNext' 10 | ] 11 | -------------------------------------------------------------------------------- /mmcls/models/necks/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .gap import GlobalAveragePooling 3 | from .gem import GeneralizedMeanPooling 4 | from .hr_fuse import HRFuseScales 5 | from .reduction import LinearReduction 6 | 7 | __all__ = [ 8 | 'GlobalAveragePooling', 'GeneralizedMeanPooling', 'HRFuseScales', 9 | 'LinearReduction' 10 | ] 11 | -------------------------------------------------------------------------------- /mmcls/models/retrievers/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .base import BaseRetriever 3 | from .image2image import ImageToImageRetriever 4 | 5 | __all__ = ['BaseRetriever', 'ImageToImageRetriever'] 6 | -------------------------------------------------------------------------------- /mmcls/models/tta/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .score_tta import AverageClsScoreTTA 3 | 4 | __all__ = ['AverageClsScoreTTA'] 5 | -------------------------------------------------------------------------------- /mmcls/models/utils/batch_augments/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .cutmix import CutMix 3 | from .mixup import Mixup 4 | from .resizemix import ResizeMix 5 | from .wrapper import RandomBatchAugment 6 | 7 | __all__ = ('RandomBatchAugment', 'CutMix', 'Mixup', 'ResizeMix') 8 | -------------------------------------------------------------------------------- /mmcls/structures/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .cls_data_sample import ClsDataSample 3 | from .multi_task_data_sample import MultiTaskDataSample 4 | from .utils import (batch_label_to_onehot, cat_batch_labels, 5 | stack_batch_scores, tensor_split) 6 | 7 | __all__ = [ 8 | 'ClsDataSample', 'batch_label_to_onehot', 'cat_batch_labels', 9 | 'stack_batch_scores', 'tensor_split', 'MultiTaskDataSample' 10 | ] 11 | -------------------------------------------------------------------------------- /mmcls/structures/multi_task_data_sample.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | 3 | from mmengine.structures import BaseDataElement 4 | 5 | 6 | class MultiTaskDataSample(BaseDataElement): 7 | 8 | @property 9 | def tasks(self): 10 | return self._data_fields 11 | -------------------------------------------------------------------------------- /mmcls/utils/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .analyze import load_json_log 3 | from .collect_env import collect_env 4 | from .progress import track_on_main_process 5 | from .setup_env import register_all_modules 6 | 7 | __all__ = [ 8 | 'collect_env', 'register_all_modules', 'track_on_main_process', 9 | 'load_json_log' 10 | ] 11 | -------------------------------------------------------------------------------- /mmcls/utils/collect_env.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from mmengine.utils import get_git_hash 3 | from mmengine.utils.dl_utils import collect_env as collect_base_env 4 | 5 | import mmcls 6 | 7 | 8 | def collect_env(): 9 | """Collect the information of the running environments.""" 10 | env_info = collect_base_env() 11 | env_info['MMClassification'] = mmcls.__version__ + '+' + get_git_hash()[:7] 12 | return env_info 13 | -------------------------------------------------------------------------------- /mmcls/utils/progress.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | import mmengine.dist as dist 3 | import rich.progress as progress 4 | 5 | 6 | def track_on_main_process(sequence, *args, **kwargs): 7 | if not dist.is_main_process(): 8 | yield from sequence 9 | else: 10 | yield from progress.track(sequence, *args, **kwargs) 11 | -------------------------------------------------------------------------------- /mmcls/visualization/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .cls_visualizer import ClsVisualizer 3 | 4 | __all__ = ['ClsVisualizer'] 5 | -------------------------------------------------------------------------------- /projects/example_project/models/__init__.py: -------------------------------------------------------------------------------- 1 | from .example_net import ExampleNet 2 | 3 | __all__ = ['ExampleNet'] 4 | -------------------------------------------------------------------------------- /projects/ood_eval/config/vit_ood-eval_toy-example.py: -------------------------------------------------------------------------------- 1 | _base_ = 'mmcls::resnet/resnetv1c50_8xb32_in1k.py' # can be your own config 2 | 3 | # You can replace imagenet-r with imagenet-a or imagenet-s 4 | test_dataloader = dict(dataset=dict(data_root='data/imagenet-r')) 5 | test_evaluator = dict(ann_file='data/imagenet-r/meta/val.txt') 6 | -------------------------------------------------------------------------------- /projects/ood_eval/config/vit_ood-eval_toy-example_imagenet-c.py: -------------------------------------------------------------------------------- 1 | _base_ = 'mmcls::resnet/resnetv1c50_8xb32_in1k.py' # can be your own config 2 | 3 | test_dataloader = dict(dataset=dict(data_root='data/imagenet-c')) 4 | test_evaluator = dict(type='CorruptionError') 5 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | -r requirements/optional.txt 2 | -r requirements/runtime.txt 3 | -r requirements/tests.txt 4 | -r requirements/mminstall.txt -------------------------------------------------------------------------------- /requirements/docs.txt: -------------------------------------------------------------------------------- 1 | docutils==0.17.1 2 | modelindex 3 | myst-parser 4 | git+https://github.com/mzr1996/pytorch_sphinx_theme.git#egg=pytorch_sphinx_theme 5 | sphinx==4.5.0 6 | sphinx-copybutton 7 | sphinx-notfound-page 8 | sphinx-tabs 9 | tabulate 10 | -------------------------------------------------------------------------------- /requirements/mminstall.txt: -------------------------------------------------------------------------------- 1 | mmcv>=2.0.0rc4,<=2.1.0 2 | mmengine>=0.7.1,<1.0.0 3 | -------------------------------------------------------------------------------- /requirements/optional.txt: -------------------------------------------------------------------------------- 1 | albumentations>=0.3.2 --no-binary qudida,albumentations 2 | colorama 3 | requests 4 | -------------------------------------------------------------------------------- /requirements/readthedocs.txt: -------------------------------------------------------------------------------- 1 | mmcv>=2.0.0rc1 2 | mmengine -------------------------------------------------------------------------------- /requirements/runtime.txt: -------------------------------------------------------------------------------- 1 | matplotlib 2 | modelindex 3 | numpy 4 | packaging 5 | rich 6 | -------------------------------------------------------------------------------- /requirements/tests.txt: -------------------------------------------------------------------------------- 1 | codecov 2 | flake8 3 | interrogate 4 | isort==4.3.21 5 | mmdet>=3.0.0rc0 6 | pytest 7 | scikit-learn 8 | xdoctest >= 0.10.0 9 | yapf 10 | -------------------------------------------------------------------------------- /resources/mmcls-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/resources/mmcls-logo.png -------------------------------------------------------------------------------- /run.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | CONFIG=$1 4 | GPU=$2 5 | MLP_ROLE_INDEX=$3 6 | 7 | PYTHONPATH="$(dirname $0)/..":$PYTHONPATH \ 8 | python -m torch.distributed.launch \ 9 | --nproc_per_node=$GPU \ 10 | --master_addr=$MLP_WORKER_0_HOST \ 11 | --node_rank=$MLP_ROLE_INDEX \ 12 | --master_port=$MLP_WORKER_0_PORT \ 13 | --nnodes=4\ 14 | tools/train.py \ 15 | $CONFIG \ 16 | --launcher pytorch ${@:3}\ 17 | -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | -------------------------------------------------------------------------------- /tests/data/color.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/tests/data/color.jpg -------------------------------------------------------------------------------- /tests/data/dataset/a/1.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/tests/data/dataset/a/1.JPG -------------------------------------------------------------------------------- /tests/data/dataset/ann.txt: -------------------------------------------------------------------------------- 1 | a/1.JPG 0 2 | b/2.jpeg 1 3 | b/subb/3.jpg 1 4 | -------------------------------------------------------------------------------- /tests/data/dataset/b/2.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/tests/data/dataset/b/2.jpeg -------------------------------------------------------------------------------- /tests/data/dataset/b/subb/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/tests/data/dataset/b/subb/3.jpg -------------------------------------------------------------------------------- /tests/data/dataset/classes.txt: -------------------------------------------------------------------------------- 1 | bus 2 | car 3 | -------------------------------------------------------------------------------- /tests/data/gray.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/deep-optimization/ScaleKD/478a7dbb19caa7dd6ec225cd824b0e0a74a6cdc4/tests/data/gray.jpg -------------------------------------------------------------------------------- /tests/data/meta.yml: -------------------------------------------------------------------------------- 1 | Models: 2 | - Name: test_model 3 | Metadata: 4 | FLOPs: 319000000 5 | Parameters: 3500000 6 | Results: 7 | - Dataset: ImageNet-1k 8 | Metrics: 9 | Top 1 Accuracy: 71.86 10 | Top 5 Accuracy: 90.42 11 | Task: Image Classification 12 | Weights: test_weight.pth 13 | Config: test_config.py 14 | -------------------------------------------------------------------------------- /tests/test_models/test_backbones/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | -------------------------------------------------------------------------------- /tests/test_models/test_utils/test_position_encoding.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | import torch 3 | 4 | from mmcls.models.utils import ConditionalPositionEncoding 5 | 6 | 7 | def test_conditional_position_encoding_module(): 8 | CPE = ConditionalPositionEncoding(in_channels=32, embed_dims=32, stride=2) 9 | outs = CPE(torch.randn(1, 3136, 32), (56, 56)) 10 | assert outs.shape == torch.Size([1, 784, 32]) 11 | --------------------------------------------------------------------------------