From 7977dc8e2d85abe0679dcab88a7bed77cb9b6fef Mon Sep 17 00:00:00 2001 From: Ma Zerun Date: Fri, 19 Nov 2021 14:20:35 +0800 Subject: [PATCH] [Improvement] Rename config files according to the config name standard. (#508) * Update tnt config * Rename config files * Update docs * Update metafile in dev_scripts * Fix some files * Remove fp16 metafile and README. * Fix names in metafiles. --- .../benchmark_regression/bench_train.yml | 14 +- configs/fp16/README.md | 20 -- configs/fp16/metafile.yml | 35 ---- .../resnet50_b32x8_fp16_dynamic_imagenet.py | 8 +- configs/fp16/resnet50_b32x8_fp16_imagenet.py | 8 +- configs/mobilenet_v2/README.md | 2 +- configs/mobilenet_v2/metafile.yml | 4 +- .../mobilenet_v2/mobilenet-v2_8xb32_in1k.py | 6 + .../mobilenet_v2_b32x8_imagenet.py | 12 +- configs/mobilenet_v3/metafile.yml | 4 +- .../mobilenet-v3-large_8xb32_in1k.py | 158 +++++++++++++++ .../mobilenet-v3-small_8xb16_cifar10.py | 8 + .../mobilenet-v3-small_8xb32_in1k.py | 158 +++++++++++++++ .../mobilenet_v3_large_imagenet.py | 162 +-------------- .../mobilenet_v3/mobilenet_v3_small_cifar.py | 12 +- .../mobilenet_v3_small_imagenet.py | 162 +-------------- configs/regnet/regnetx-1.6gf_8xb32_in1k.py | 51 +++++ configs/regnet/regnetx-12gf_8xb32_in1k.py | 51 +++++ configs/regnet/regnetx-3.2gf_8xb32_in1k.py | 51 +++++ configs/regnet/regnetx-4.0gf_8xb32_in1k.py | 51 +++++ configs/regnet/regnetx-400mf_8xb32_in1k.py | 51 +++++ configs/regnet/regnetx-6.4gf_8xb32_in1k.py | 51 +++++ configs/regnet/regnetx-8.0gf_8xb32_in1k.py | 51 +++++ configs/regnet/regnetx-800mf_8xb32_in1k.py | 51 +++++ .../regnet/regnetx_1.6gf_b32x8_imagenet.py | 55 +----- configs/regnet/regnetx_12gf_b32x8_imagenet.py | 55 +----- .../regnet/regnetx_3.2gf_b32x8_imagenet.py | 55 +----- .../regnet/regnetx_4.0gf_b32x8_imagenet.py | 55 +----- .../regnet/regnetx_400mf_b32x8_imagenet.py | 55 +----- .../regnet/regnetx_6.4gf_b32x8_imagenet.py | 55 +----- .../regnet/regnetx_8.0gf_b32x8_imagenet.py | 55 +----- .../regnet/regnetx_800mf_b32x8_imagenet.py | 55 +----- configs/repvgg/metafile.yml | 24 +-- configs/resnest/resnest101_32xb64_in1k.py | 181 +++++++++++++++++ configs/resnest/resnest101_b64x32_imagenet.py | 185 +----------------- configs/resnest/resnest200_64xb32_in1k.py | 181 +++++++++++++++++ configs/resnest/resnest200_b32x64_imagenet.py | 185 +----------------- configs/resnest/resnest269_64xb32_in1k.py | 181 +++++++++++++++++ configs/resnest/resnest269_b32x64_imagenet.py | 185 +----------------- configs/resnest/resnest50_32xb64_in1k.py | 181 +++++++++++++++++ configs/resnest/resnest50_b64x32_imagenet.py | 185 +----------------- configs/resnet/README.md | 29 +-- configs/resnet/metafile.yml | 73 ++++--- configs/resnet/resnet101_8xb16_cifar10.py | 5 + configs/resnet/resnet101_8xb32_in1k.py | 4 + configs/resnet/resnet101_b16x8_cifar10.py | 11 +- configs/resnet/resnet101_b32x8_imagenet.py | 10 +- configs/resnet/resnet152_8xb16_cifar10.py | 5 + configs/resnet/resnet152_8xb32_in1k.py | 4 + configs/resnet/resnet152_b16x8_cifar10.py | 11 +- configs/resnet/resnet152_b32x8_imagenet.py | 10 +- configs/resnet/resnet18_8xb16_cifar10.py | 4 + configs/resnet/resnet18_8xb32_in1k.py | 4 + configs/resnet/resnet18_b16x8_cifar10.py | 10 +- configs/resnet/resnet18_b32x8_imagenet.py | 10 +- configs/resnet/resnet34_8xb16_cifar10.py | 4 + configs/resnet/resnet34_8xb32_in1k.py | 4 + configs/resnet/resnet34_b16x8_cifar10.py | 10 +- configs/resnet/resnet34_b32x8_imagenet.py | 10 +- .../resnet50_32xb64-warmup-coslr_in1k.py | 5 + .../resnet/resnet50_32xb64-warmup-lbs_in1k.py | 12 ++ configs/resnet/resnet50_32xb64-warmup_in1k.py | 4 + .../resnet/resnet50_8xb16-mixup_cifar10.py | 5 + configs/resnet/resnet50_8xb16_cifar10.py | 4 + configs/resnet/resnet50_8xb16_cifar100.py | 10 + configs/resnet/resnet50_8xb32-coslr_in1k.py | 5 + configs/resnet/resnet50_8xb32-cutmix_in1k.py | 5 + .../resnet50_8xb32-fp16-dynamic_in1k.py | 4 + configs/resnet/resnet50_8xb32-fp16_in1k.py | 4 + configs/resnet/resnet50_8xb32-lbs_in1k.py | 5 + configs/resnet/resnet50_8xb32-mixup_in1k.py | 5 + configs/resnet/resnet50_8xb32_in1k.py | 4 + configs/resnet/resnet50_b16x8_cifar10.py | 10 +- configs/resnet/resnet50_b16x8_cifar100.py | 14 +- .../resnet/resnet50_b16x8_cifar10_mixup.py | 11 +- .../resnet/resnet50_b32x8_coslr_imagenet.py | 11 +- .../resnet/resnet50_b32x8_cutmix_imagenet.py | 11 +- configs/resnet/resnet50_b32x8_imagenet.py | 10 +- .../resnet50_b32x8_label_smooth_imagenet.py | 11 +- .../resnet/resnet50_b32x8_mixup_imagenet.py | 11 +- .../resnet50_b64x32_warmup_coslr_imagenet.py | 11 +- .../resnet/resnet50_b64x32_warmup_imagenet.py | 10 +- ...t50_b64x32_warmup_label_smooth_imagenet.py | 18 +- configs/resnet/resnetv1d101_8xb32_in1k.py | 5 + configs/resnet/resnetv1d101_b32x8_imagenet.py | 11 +- configs/resnet/resnetv1d152_8xb32_in1k.py | 5 + configs/resnet/resnetv1d152_b32x8_imagenet.py | 11 +- configs/resnet/resnetv1d50_8xb32_in1k.py | 5 + configs/resnet/resnetv1d50_b32x8_imagenet.py | 11 +- configs/resnext/README.md | 8 +- configs/resnext/metafile.yml | 16 +- .../resnext/resnext101-32x4d_8xb32_in1k.py | 5 + .../resnext/resnext101-32x8d_8xb32_in1k.py | 5 + .../resnext101_32x4d_b32x8_imagenet.py | 11 +- .../resnext101_32x8d_b32x8_imagenet.py | 11 +- .../resnext/resnext152-32x4d_8xb32_in1k.py | 5 + .../resnext152_32x4d_b32x8_imagenet.py | 11 +- configs/resnext/resnext50-32x4d_8xb32_in1k.py | 5 + .../resnext/resnext50_32x4d_b32x8_imagenet.py | 11 +- configs/seresnet/README.md | 4 +- configs/seresnet/metafile.yml | 8 +- configs/seresnet/seresnet101_8xb32_in1k.py | 5 + .../seresnet/seresnet101_b32x8_imagenet.py | 11 +- configs/seresnet/seresnet50_8xb32_in1k.py | 6 + configs/seresnet/seresnet50_b32x8_imagenet.py | 12 +- .../seresnext101-32x4d_8xb32_in1k.py | 5 + .../seresnext101_32x4d_b32x8_imagenet.py | 11 +- .../seresnext/seresnext50-32x4d_8xb32_in1k.py | 5 + .../seresnext50_32x4d_b32x8_imagenet.py | 11 +- configs/shufflenet_v1/README.md | 2 +- configs/shufflenet_v1/metafile.yml | 4 +- .../shufflenet-v1-1x_16xb64_in1k.py | 6 + ..._v1_1x_b64x16_linearlr_bn_nowd_imagenet.py | 12 +- configs/shufflenet_v2/README.md | 2 +- configs/shufflenet_v2/metafile.yml | 4 +- .../shufflenet-v2-1x_16xb64_in1k.py | 6 + ..._v2_1x_b64x16_linearlr_bn_nowd_imagenet.py | 12 +- configs/swin_transformer/README.md | 4 +- configs/swin_transformer/metafile.yml | 28 +-- .../swin-base_16xb64_in1k-384px.py | 7 + .../swin_transformer/swin-base_16xb64_in1k.py | 6 + .../swin-large_16xb64_in1k-384px.py | 7 + .../swin-large_16xb64_in1k.py | 7 + .../swin-small_16xb64_in1k.py | 6 + .../swin_transformer/swin-tiny_16xb64_in1k.py | 6 + .../swin_base_224_b16x64_300e_imagenet.py | 12 +- .../swin_base_384_evalonly_imagenet.py | 13 +- .../swin_large_224_evalonly_imagenet.py | 13 +- .../swin_large_384_evalonly_imagenet.py | 13 +- .../swin_small_224_b16x64_300e_imagenet.py | 12 +- .../swin_tiny_224_b16x64_300e_imagenet.py | 12 +- configs/tnt/README.md | 2 +- configs/tnt/metafile.yml | 2 +- configs/tnt/tnt-s-p16_16xb64_in1k.py | 39 ++++ .../tnt_s_patch16_224_evalonly_imagenet.py | 43 +--- configs/vgg/README.md | 16 +- configs/vgg/metafile.yml | 32 +-- configs/vgg/vgg11_8xb32_in1k.py | 7 + configs/vgg/vgg11_b32x8_imagenet.py | 13 +- configs/vgg/vgg11bn_8xb32_in1k.py | 5 + configs/vgg/vgg11bn_b32x8_imagenet.py | 11 +- configs/vgg/vgg13_8xb32_in1k.py | 6 + configs/vgg/vgg13_b32x8_imagenet.py | 12 +- configs/vgg/vgg13bn_8xb32_in1k.py | 5 + configs/vgg/vgg13bn_b32x8_imagenet.py | 11 +- configs/vgg/vgg16_8xb16_voc.py | 25 +++ configs/vgg/vgg16_8xb32_in1k.py | 6 + configs/vgg/vgg16_b16x8_voc.py | 29 +-- configs/vgg/vgg16_b32x8_imagenet.py | 12 +- configs/vgg/vgg16bn_8xb32_in1k.py | 5 + configs/vgg/vgg16bn_b32x8_imagenet.py | 11 +- configs/vgg/vgg19_8xb32_in1k.py | 6 + configs/vgg/vgg19_b32x8_imagenet.py | 12 +- configs/vgg/vgg19bn_8xb32_in1k.py | 5 + configs/vgg/vgg19bn_b32x8_imagenet.py | 11 +- docs/getting_started.md | 4 +- docs/model_zoo.md | 66 +++---- docs/tools/model_serving.md | 4 +- docs/tools/onnx2tensorrt.md | 10 +- docs/tools/pytorch2onnx.md | 34 ++-- docs/tools/pytorch2torchscript.md | 6 +- docs/tools/visualization.md | 4 +- docs/tutorials/MMClassification_python.ipynb | 8 +- docs/tutorials/config.md | 10 +- docs_zh-CN/getting_started.md | 4 +- docs_zh-CN/tools/model_serving.md | 4 +- docs_zh-CN/tools/onnx2tensorrt.md | 10 +- docs_zh-CN/tools/pytorch2onnx.md | 14 +- docs_zh-CN/tools/pytorch2torchscript.md | 2 +- docs_zh-CN/tools/visualization.md | 4 +- .../MMClassification_python_cn.ipynb | 8 +- docs_zh-CN/tutorials/config.md | 8 +- model-index.yml | 1 - 173 files changed, 2410 insertions(+), 2052 deletions(-) delete mode 100644 configs/fp16/README.md delete mode 100644 configs/fp16/metafile.yml create mode 100644 configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py create mode 100644 configs/mobilenet_v3/mobilenet-v3-large_8xb32_in1k.py create mode 100644 configs/mobilenet_v3/mobilenet-v3-small_8xb16_cifar10.py create mode 100644 configs/mobilenet_v3/mobilenet-v3-small_8xb32_in1k.py create mode 100644 configs/regnet/regnetx-1.6gf_8xb32_in1k.py create mode 100644 configs/regnet/regnetx-12gf_8xb32_in1k.py create mode 100644 configs/regnet/regnetx-3.2gf_8xb32_in1k.py create mode 100644 configs/regnet/regnetx-4.0gf_8xb32_in1k.py create mode 100644 configs/regnet/regnetx-400mf_8xb32_in1k.py create mode 100644 configs/regnet/regnetx-6.4gf_8xb32_in1k.py create mode 100644 configs/regnet/regnetx-8.0gf_8xb32_in1k.py create mode 100644 configs/regnet/regnetx-800mf_8xb32_in1k.py create mode 100644 configs/resnest/resnest101_32xb64_in1k.py create mode 100644 configs/resnest/resnest200_64xb32_in1k.py create mode 100644 configs/resnest/resnest269_64xb32_in1k.py create mode 100644 configs/resnest/resnest50_32xb64_in1k.py create mode 100644 configs/resnet/resnet101_8xb16_cifar10.py create mode 100644 configs/resnet/resnet101_8xb32_in1k.py create mode 100644 configs/resnet/resnet152_8xb16_cifar10.py create mode 100644 configs/resnet/resnet152_8xb32_in1k.py create mode 100644 configs/resnet/resnet18_8xb16_cifar10.py create mode 100644 configs/resnet/resnet18_8xb32_in1k.py create mode 100644 configs/resnet/resnet34_8xb16_cifar10.py create mode 100644 configs/resnet/resnet34_8xb32_in1k.py create mode 100644 configs/resnet/resnet50_32xb64-warmup-coslr_in1k.py create mode 100644 configs/resnet/resnet50_32xb64-warmup-lbs_in1k.py create mode 100644 configs/resnet/resnet50_32xb64-warmup_in1k.py create mode 100644 configs/resnet/resnet50_8xb16-mixup_cifar10.py create mode 100644 configs/resnet/resnet50_8xb16_cifar10.py create mode 100644 configs/resnet/resnet50_8xb16_cifar100.py create mode 100644 configs/resnet/resnet50_8xb32-coslr_in1k.py create mode 100644 configs/resnet/resnet50_8xb32-cutmix_in1k.py create mode 100644 configs/resnet/resnet50_8xb32-fp16-dynamic_in1k.py create mode 100644 configs/resnet/resnet50_8xb32-fp16_in1k.py create mode 100644 configs/resnet/resnet50_8xb32-lbs_in1k.py create mode 100644 configs/resnet/resnet50_8xb32-mixup_in1k.py create mode 100644 configs/resnet/resnet50_8xb32_in1k.py create mode 100644 configs/resnet/resnetv1d101_8xb32_in1k.py create mode 100644 configs/resnet/resnetv1d152_8xb32_in1k.py create mode 100644 configs/resnet/resnetv1d50_8xb32_in1k.py create mode 100644 configs/resnext/resnext101-32x4d_8xb32_in1k.py create mode 100644 configs/resnext/resnext101-32x8d_8xb32_in1k.py create mode 100644 configs/resnext/resnext152-32x4d_8xb32_in1k.py create mode 100644 configs/resnext/resnext50-32x4d_8xb32_in1k.py create mode 100644 configs/seresnet/seresnet101_8xb32_in1k.py create mode 100644 configs/seresnet/seresnet50_8xb32_in1k.py create mode 100644 configs/seresnext/seresnext101-32x4d_8xb32_in1k.py create mode 100644 configs/seresnext/seresnext50-32x4d_8xb32_in1k.py create mode 100644 configs/shufflenet_v1/shufflenet-v1-1x_16xb64_in1k.py create mode 100644 configs/shufflenet_v2/shufflenet-v2-1x_16xb64_in1k.py create mode 100644 configs/swin_transformer/swin-base_16xb64_in1k-384px.py create mode 100644 configs/swin_transformer/swin-base_16xb64_in1k.py create mode 100644 configs/swin_transformer/swin-large_16xb64_in1k-384px.py create mode 100644 configs/swin_transformer/swin-large_16xb64_in1k.py create mode 100644 configs/swin_transformer/swin-small_16xb64_in1k.py create mode 100644 configs/swin_transformer/swin-tiny_16xb64_in1k.py create mode 100644 configs/tnt/tnt-s-p16_16xb64_in1k.py create mode 100644 configs/vgg/vgg11_8xb32_in1k.py create mode 100644 configs/vgg/vgg11bn_8xb32_in1k.py create mode 100644 configs/vgg/vgg13_8xb32_in1k.py create mode 100644 configs/vgg/vgg13bn_8xb32_in1k.py create mode 100644 configs/vgg/vgg16_8xb16_voc.py create mode 100644 configs/vgg/vgg16_8xb32_in1k.py create mode 100644 configs/vgg/vgg16bn_8xb32_in1k.py create mode 100644 configs/vgg/vgg19_8xb32_in1k.py create mode 100644 configs/vgg/vgg19bn_8xb32_in1k.py diff --git a/.dev_scripts/benchmark_regression/bench_train.yml b/.dev_scripts/benchmark_regression/bench_train.yml index 644ec18412d..1f41ba75b02 100644 --- a/.dev_scripts/benchmark_regression/bench_train.yml +++ b/.dev_scripts/benchmark_regression/bench_train.yml @@ -6,7 +6,7 @@ Models: Top 1 Accuracy: 73.85 Top 5 Accuracy: 91.53 Weights: https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_batch256_imagenet_20200708-32ffb4f7.pth - Config: configs/resnet/resnet34_b32x8_imagenet.py + Config: configs/resnet/resnet34_8xb32_in1k.py Gpus: 8 - Name: vgg11bn @@ -16,7 +16,7 @@ Models: Top 1 Accuracy: 70.75 Top 5 Accuracy: 90.12 Weights: https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_bn_batch256_imagenet_20210207-f244902c.pth - Config: configs/vgg/vgg11bn_b32x8_imagenet.py + Config: configs/vgg/vgg11bn_8xb32_in1k.py Gpus: 8 - Name: seresnet50 @@ -26,7 +26,7 @@ Models: Top 1 Accuracy: 77.74 Top 5 Accuracy: 93.84 Weights: https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet50_batch256_imagenet_20200804-ae206104.pth - Config: configs/seresnet/seresnet50_b32x8_imagenet.py + Config: configs/seresnet/seresnet50_8xb32_in1k.py Gpus: 8 - Name: resnext50 @@ -36,7 +36,7 @@ Models: Top 1 Accuracy: 77.92 Top 5 Accuracy: 93.74 Weights: https://download.openmmlab.com/mmclassification/v0/resnext/resnext50_32x4d_batch256_imagenet_20200708-c07adbb7.pth - Config: configs/resnext/resnext50_32x4d_b32x8_imagenet.py + Config: configs/resnext/resnext50-32x4d_8xb32_in1k.py Gpus: 8 - Name: mobilenet @@ -46,7 +46,7 @@ Models: Top 1 Accuracy: 71.86 Top 5 Accuracy: 90.42 Weights: https://download.openmmlab.com/mmclassification/v0/mobilenet_v2/mobilenet_v2_batch256_imagenet_20200708-3b2dc3af.pth - Config: configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py + Config: configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py Gpus: 8 Months: - 1 @@ -61,7 +61,7 @@ Models: Top 1 Accuracy: 68.13 Top 5 Accuracy: 87.81 Weights: https://download.openmmlab.com/mmclassification/v0/shufflenet_v1/shufflenet_v1_batch1024_imagenet_20200804-5d6cec73.pth - Config: configs/shufflenet_v1/shufflenet_v1_1x_b64x16_linearlr_bn_nowd_imagenet.py + Config: configs/shufflenet_v1/shufflenet-v1-1x_16xb64_in1k.py Gpus: 16 Months: - 2 @@ -76,7 +76,7 @@ Models: Top 1 Accuracy: 81.18 Top 5 Accuracy: 95.61 Weights: https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_tiny_224_b16x64_300e_imagenet_20210616_090925-66df6be6.pth - Config: configs/swin_transformer/swin_tiny_224_b16x64_300e_imagenet.py + Config: configs/swin_transformer/swin-tiny_16xb64_in1k.py Gpus: 16 Months: - 3 diff --git a/configs/fp16/README.md b/configs/fp16/README.md deleted file mode 100644 index 2ef4ea13dbb..00000000000 --- a/configs/fp16/README.md +++ /dev/null @@ -1,20 +0,0 @@ -# Mixed Precision Training - -## Introduction - - - -```latex -@article{micikevicius2017mixed, - title={Mixed precision training}, - author={Micikevicius, Paulius and Narang, Sharan and Alben, Jonah and Diamos, Gregory and Elsen, Erich and Garcia, David and Ginsburg, Boris and Houston, Michael and Kuchaiev, Oleksii and Venkatesh, Ganesh and others}, - journal={arXiv preprint arXiv:1710.03740}, - year={2017} -} -``` - -## Results and models - -| Model | Params(M) | Flops(G) | Mem (GB) | Top-1 (%) | Top-5 (%) | Config | Download | -|:---------------------:|:---------:|:--------:|:---------:|:---------:|:---------:| :---------:|:--------:| -| ResNet-50 | 25.56 | 4.12 | 1.9 |76.30 | 93.07 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/fp16/resnet50_b32x8_fp16_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/fp16/resnet50_batch256_fp16_imagenet_20210320-b3964210.pth) | [log](https://download.openmmlab.com/mmclassification/v0/fp16/resnet50_batch256_fp16_imagenet_20210320-b3964210.log.json) | diff --git a/configs/fp16/metafile.yml b/configs/fp16/metafile.yml deleted file mode 100644 index 20b42840d5a..00000000000 --- a/configs/fp16/metafile.yml +++ /dev/null @@ -1,35 +0,0 @@ -Collections: - - Name: FP16 - Metadata: - Training Data: ImageNet-1k - Training Techniques: - - SGD with Momentum - - Weight Decay - - Mixed Precision Training - Training Resources: 8x V100 GPUs - Paper: - URL: https://arxiv.org/abs/1710.03740 - Title: Mixed Precision Training - README: configs/fp16/README.md - Code: - URL: https://github.com/open-mmlab/mmclassification/blob/a41cb2fa938d957101cc446e271486206188bf5b/mmcls/core/fp16/hooks.py#L13 - Version: v0.15.0 - -Models: - - Name: resnet50_b32x8_fp16_dynamic_imagenet - Metadata: - FLOPs: 4120000000 - Parameters: 25560000 - Epochs: 100 - Batch Size: 256 - Architecture: - - ResNet - In Collection: FP16 - Results: - - Task: Image Classification - Dataset: ImageNet-1k - Metrics: - Top 1 Accuracy: 76.30 - Top 5 Accuracy: 93.07 - Weights: https://download.openmmlab.com/mmclassification/v0/fp16/resnet50_batch256_fp16_imagenet_20210320-b3964210.pth - Config: configs/fp16/resnet50_b32x8_fp16_dynamic_imagenet.py diff --git a/configs/fp16/resnet50_b32x8_fp16_dynamic_imagenet.py b/configs/fp16/resnet50_b32x8_fp16_dynamic_imagenet.py index 35b4ff54234..9075a894ff7 100644 --- a/configs/fp16/resnet50_b32x8_fp16_dynamic_imagenet.py +++ b/configs/fp16/resnet50_b32x8_fp16_dynamic_imagenet.py @@ -1,4 +1,6 @@ -_base_ = ['../resnet/resnet50_b32x8_imagenet.py'] +_base_ = '../resnet/resnet50_8xb32-fp16-dynamic_in1k.py' -# fp16 settings -fp16 = dict(loss_scale='dynamic') +_deprecation_ = dict( + expected='../resnet/resnet50_8xb32-fp16-dynamic_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/fp16/resnet50_b32x8_fp16_imagenet.py b/configs/fp16/resnet50_b32x8_fp16_imagenet.py index fbab0cc1ecc..a73a4097872 100644 --- a/configs/fp16/resnet50_b32x8_fp16_imagenet.py +++ b/configs/fp16/resnet50_b32x8_fp16_imagenet.py @@ -1,4 +1,6 @@ -_base_ = ['../resnet/resnet50_b32x8_imagenet.py'] +_base_ = '../resnet/resnet50_8xb32-fp16_in1k.py' -# fp16 settings -fp16 = dict(loss_scale=512.) +_deprecation_ = dict( + expected='../resnet/resnet50_8xb32-fp16_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/mobilenet_v2/README.md b/configs/mobilenet_v2/README.md index 75008d3cad3..6e0185eca61 100644 --- a/configs/mobilenet_v2/README.md +++ b/configs/mobilenet_v2/README.md @@ -24,4 +24,4 @@ | Model | Params(M) | Flops(G) | Top-1 (%) | Top-5 (%) | Config | Download | |:---------------------:|:---------:|:--------:|:---------:|:---------:|:---------:|:--------:| -| MobileNet V2 | 3.5 | 0.319 | 71.86 | 90.42 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/mobilenet_v2/mobilenet_v2_batch256_imagenet_20200708-3b2dc3af.pth) | [log](https://download.openmmlab.com/mmclassification/v0/mobilenet_v2/mobilenet_v2_batch256_imagenet_20200708-3b2dc3af.log.json) | +| MobileNet V2 | 3.5 | 0.319 | 71.86 | 90.42 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/mobilenet_v2/mobilenet_v2_batch256_imagenet_20200708-3b2dc3af.pth) | [log](https://download.openmmlab.com/mmclassification/v0/mobilenet_v2/mobilenet_v2_batch256_imagenet_20200708-3b2dc3af.log.json) | diff --git a/configs/mobilenet_v2/metafile.yml b/configs/mobilenet_v2/metafile.yml index 3765f0ca858..e16557fb973 100644 --- a/configs/mobilenet_v2/metafile.yml +++ b/configs/mobilenet_v2/metafile.yml @@ -19,7 +19,7 @@ Collections: Version: v0.15.0 Models: - - Name: mobilenet_v2_b32x8_imagenet + - Name: mobilenet-v2_8xb32_in1k Metadata: FLOPs: 319000000 Parameters: 3500000 @@ -31,4 +31,4 @@ Models: Top 5 Accuracy: 90.42 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/mobilenet_v2/mobilenet_v2_batch256_imagenet_20200708-3b2dc3af.pth - Config: configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py + Config: configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py diff --git a/configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py b/configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py new file mode 100644 index 00000000000..afd2d9795af --- /dev/null +++ b/configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py @@ -0,0 +1,6 @@ +_base_ = [ + '../_base_/models/mobilenet_v2_1x.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256_epochstep.py', + '../_base_/default_runtime.py' +] diff --git a/configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py b/configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py index afd2d9795af..26c2b6ded4f 100644 --- a/configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py +++ b/configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py @@ -1,6 +1,6 @@ -_base_ = [ - '../_base_/models/mobilenet_v2_1x.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256_epochstep.py', - '../_base_/default_runtime.py' -] +_base_ = 'mobilenet-v2_8xb32_in1k.py' + +_deprecation_ = dict( + expected='mobilenet-v2_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/mobilenet_v3/metafile.yml b/configs/mobilenet_v3/metafile.yml index c978fd8f428..d0197d03c22 100644 --- a/configs/mobilenet_v3/metafile.yml +++ b/configs/mobilenet_v3/metafile.yml @@ -26,7 +26,7 @@ Models: Top 5 Accuracy: 87.41 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/mobilenet_v3/convert/mobilenet_v3_small-8427ecf0.pth - Config: configs/mobilenet_v3/mobilenet_v3_small_imagenet.py + Config: configs/mobilenet_v3/mobilenet-v3-small_8xb32_in1k.py - Name: mobilenet_v3_large_imagenet Metadata: FLOPs: 230000000 @@ -39,4 +39,4 @@ Models: Top 5 Accuracy: 91.34 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/mobilenet_v3/convert/mobilenet_v3_large-3ea3c186.pth - Config: configs/mobilenet_v3/mobilenet_v3_large_imagenet.py + Config: configs/mobilenet_v3/mobilenet-v3-large_8xb32_in1k.py diff --git a/configs/mobilenet_v3/mobilenet-v3-large_8xb32_in1k.py b/configs/mobilenet_v3/mobilenet-v3-large_8xb32_in1k.py new file mode 100644 index 00000000000..24fa35d3642 --- /dev/null +++ b/configs/mobilenet_v3/mobilenet-v3-large_8xb32_in1k.py @@ -0,0 +1,158 @@ +# Refer to https://pytorch.org/blog/ml-models-torchvision-v0.9/#classification +# ---------------------------- +# -[x] auto_augment='imagenet' +# -[x] batch_size=128 (per gpu) +# -[x] epochs=600 +# -[x] opt='rmsprop' +# -[x] lr=0.064 +# -[x] eps=0.0316 +# -[x] alpha=0.9 +# -[x] weight_decay=1e-05 +# -[x] momentum=0.9 +# -[x] lr_gamma=0.973 +# -[x] lr_step_size=2 +# -[x] nproc_per_node=8 +# -[x] random_erase=0.2 +# -[x] workers=16 (workers_per_gpu) +# - modify: RandomErasing use RE-M instead of RE-0 + +_base_ = [ + '../_base_/models/mobilenet-v3-large_8xb32_in1k.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/default_runtime.py' +] + +img_norm_cfg = dict( + mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) + +policies = [ + [ + dict(type='Posterize', bits=4, prob=0.4), + dict(type='Rotate', angle=30., prob=0.6) + ], + [ + dict(type='Solarize', thr=256 / 9 * 4, prob=0.6), + dict(type='AutoContrast', prob=0.6) + ], + [dict(type='Equalize', prob=0.8), + dict(type='Equalize', prob=0.6)], + [ + dict(type='Posterize', bits=5, prob=0.6), + dict(type='Posterize', bits=5, prob=0.6) + ], + [ + dict(type='Equalize', prob=0.4), + dict(type='Solarize', thr=256 / 9 * 5, prob=0.2) + ], + [ + dict(type='Equalize', prob=0.4), + dict(type='Rotate', angle=30 / 9 * 8, prob=0.8) + ], + [ + dict(type='Solarize', thr=256 / 9 * 6, prob=0.6), + dict(type='Equalize', prob=0.6) + ], + [dict(type='Posterize', bits=6, prob=0.8), + dict(type='Equalize', prob=1.)], + [ + dict(type='Rotate', angle=10., prob=0.2), + dict(type='Solarize', thr=256 / 9, prob=0.6) + ], + [ + dict(type='Equalize', prob=0.6), + dict(type='Posterize', bits=5, prob=0.4) + ], + [ + dict(type='Rotate', angle=30 / 9 * 8, prob=0.8), + dict(type='ColorTransform', magnitude=0., prob=0.4) + ], + [ + dict(type='Rotate', angle=30., prob=0.4), + dict(type='Equalize', prob=0.6) + ], + [dict(type='Equalize', prob=0.0), + dict(type='Equalize', prob=0.8)], + [dict(type='Invert', prob=0.6), + dict(type='Equalize', prob=1.)], + [ + dict(type='ColorTransform', magnitude=0.4, prob=0.6), + dict(type='Contrast', magnitude=0.8, prob=1.) + ], + [ + dict(type='Rotate', angle=30 / 9 * 8, prob=0.8), + dict(type='ColorTransform', magnitude=0.2, prob=1.) + ], + [ + dict(type='ColorTransform', magnitude=0.8, prob=0.8), + dict(type='Solarize', thr=256 / 9 * 2, prob=0.8) + ], + [ + dict(type='Sharpness', magnitude=0.7, prob=0.4), + dict(type='Invert', prob=0.6) + ], + [ + dict( + type='Shear', + magnitude=0.3 / 9 * 5, + prob=0.6, + direction='horizontal'), + dict(type='Equalize', prob=1.) + ], + [ + dict(type='ColorTransform', magnitude=0., prob=0.4), + dict(type='Equalize', prob=0.6) + ], + [ + dict(type='Equalize', prob=0.4), + dict(type='Solarize', thr=256 / 9 * 5, prob=0.2) + ], + [ + dict(type='Solarize', thr=256 / 9 * 4, prob=0.6), + dict(type='AutoContrast', prob=0.6) + ], + [dict(type='Invert', prob=0.6), + dict(type='Equalize', prob=1.)], + [ + dict(type='ColorTransform', magnitude=0.4, prob=0.6), + dict(type='Contrast', magnitude=0.8, prob=1.) + ], + [dict(type='Equalize', prob=0.8), + dict(type='Equalize', prob=0.6)], +] + +train_pipeline = [ + dict(type='LoadImageFromFile'), + dict(type='RandomResizedCrop', size=224, backend='pillow'), + dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), + dict(type='AutoAugment', policies=policies), + dict( + type='RandomErasing', + erase_prob=0.2, + mode='const', + min_area_ratio=0.02, + max_area_ratio=1 / 3, + fill_color=img_norm_cfg['mean']), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='ToTensor', keys=['gt_label']), + dict(type='Collect', keys=['img', 'gt_label']) +] + +data = dict( + samples_per_gpu=128, + workers_per_gpu=4, + train=dict(pipeline=train_pipeline)) +evaluation = dict(interval=10, metric='accuracy') + +# optimizer +optimizer = dict( + type='RMSprop', + lr=0.064, + alpha=0.9, + momentum=0.9, + eps=0.0316, + weight_decay=1e-5) +optimizer_config = dict(grad_clip=None) +# learning policy +lr_config = dict(policy='step', step=2, gamma=0.973, by_epoch=True) +runner = dict(type='EpochBasedRunner', max_epochs=600) diff --git a/configs/mobilenet_v3/mobilenet-v3-small_8xb16_cifar10.py b/configs/mobilenet_v3/mobilenet-v3-small_8xb16_cifar10.py new file mode 100644 index 00000000000..f8fc525d0c9 --- /dev/null +++ b/configs/mobilenet_v3/mobilenet-v3-small_8xb16_cifar10.py @@ -0,0 +1,8 @@ +_base_ = [ + '../_base_/models/mobilenet-v3-small_8xb16_cifar.py', + '../_base_/datasets/cifar10_bs16.py', + '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' +] + +lr_config = dict(policy='step', step=[120, 170]) +runner = dict(type='EpochBasedRunner', max_epochs=200) diff --git a/configs/mobilenet_v3/mobilenet-v3-small_8xb32_in1k.py b/configs/mobilenet_v3/mobilenet-v3-small_8xb32_in1k.py new file mode 100644 index 00000000000..74a5a6ab06a --- /dev/null +++ b/configs/mobilenet_v3/mobilenet-v3-small_8xb32_in1k.py @@ -0,0 +1,158 @@ +# Refer to https://pytorch.org/blog/ml-models-torchvision-v0.9/#classification +# ---------------------------- +# -[x] auto_augment='imagenet' +# -[x] batch_size=128 (per gpu) +# -[x] epochs=600 +# -[x] opt='rmsprop' +# -[x] lr=0.064 +# -[x] eps=0.0316 +# -[x] alpha=0.9 +# -[x] weight_decay=1e-05 +# -[x] momentum=0.9 +# -[x] lr_gamma=0.973 +# -[x] lr_step_size=2 +# -[x] nproc_per_node=8 +# -[x] random_erase=0.2 +# -[x] workers=16 (workers_per_gpu) +# - modify: RandomErasing use RE-M instead of RE-0 + +_base_ = [ + '../_base_/models/mobilenet-v3-small_8xb32_in1k.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/default_runtime.py' +] + +img_norm_cfg = dict( + mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) + +policies = [ + [ + dict(type='Posterize', bits=4, prob=0.4), + dict(type='Rotate', angle=30., prob=0.6) + ], + [ + dict(type='Solarize', thr=256 / 9 * 4, prob=0.6), + dict(type='AutoContrast', prob=0.6) + ], + [dict(type='Equalize', prob=0.8), + dict(type='Equalize', prob=0.6)], + [ + dict(type='Posterize', bits=5, prob=0.6), + dict(type='Posterize', bits=5, prob=0.6) + ], + [ + dict(type='Equalize', prob=0.4), + dict(type='Solarize', thr=256 / 9 * 5, prob=0.2) + ], + [ + dict(type='Equalize', prob=0.4), + dict(type='Rotate', angle=30 / 9 * 8, prob=0.8) + ], + [ + dict(type='Solarize', thr=256 / 9 * 6, prob=0.6), + dict(type='Equalize', prob=0.6) + ], + [dict(type='Posterize', bits=6, prob=0.8), + dict(type='Equalize', prob=1.)], + [ + dict(type='Rotate', angle=10., prob=0.2), + dict(type='Solarize', thr=256 / 9, prob=0.6) + ], + [ + dict(type='Equalize', prob=0.6), + dict(type='Posterize', bits=5, prob=0.4) + ], + [ + dict(type='Rotate', angle=30 / 9 * 8, prob=0.8), + dict(type='ColorTransform', magnitude=0., prob=0.4) + ], + [ + dict(type='Rotate', angle=30., prob=0.4), + dict(type='Equalize', prob=0.6) + ], + [dict(type='Equalize', prob=0.0), + dict(type='Equalize', prob=0.8)], + [dict(type='Invert', prob=0.6), + dict(type='Equalize', prob=1.)], + [ + dict(type='ColorTransform', magnitude=0.4, prob=0.6), + dict(type='Contrast', magnitude=0.8, prob=1.) + ], + [ + dict(type='Rotate', angle=30 / 9 * 8, prob=0.8), + dict(type='ColorTransform', magnitude=0.2, prob=1.) + ], + [ + dict(type='ColorTransform', magnitude=0.8, prob=0.8), + dict(type='Solarize', thr=256 / 9 * 2, prob=0.8) + ], + [ + dict(type='Sharpness', magnitude=0.7, prob=0.4), + dict(type='Invert', prob=0.6) + ], + [ + dict( + type='Shear', + magnitude=0.3 / 9 * 5, + prob=0.6, + direction='horizontal'), + dict(type='Equalize', prob=1.) + ], + [ + dict(type='ColorTransform', magnitude=0., prob=0.4), + dict(type='Equalize', prob=0.6) + ], + [ + dict(type='Equalize', prob=0.4), + dict(type='Solarize', thr=256 / 9 * 5, prob=0.2) + ], + [ + dict(type='Solarize', thr=256 / 9 * 4, prob=0.6), + dict(type='AutoContrast', prob=0.6) + ], + [dict(type='Invert', prob=0.6), + dict(type='Equalize', prob=1.)], + [ + dict(type='ColorTransform', magnitude=0.4, prob=0.6), + dict(type='Contrast', magnitude=0.8, prob=1.) + ], + [dict(type='Equalize', prob=0.8), + dict(type='Equalize', prob=0.6)], +] + +train_pipeline = [ + dict(type='LoadImageFromFile'), + dict(type='RandomResizedCrop', size=224, backend='pillow'), + dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), + dict(type='AutoAugment', policies=policies), + dict( + type='RandomErasing', + erase_prob=0.2, + mode='const', + min_area_ratio=0.02, + max_area_ratio=1 / 3, + fill_color=img_norm_cfg['mean']), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='ToTensor', keys=['gt_label']), + dict(type='Collect', keys=['img', 'gt_label']) +] + +data = dict( + samples_per_gpu=128, + workers_per_gpu=4, + train=dict(pipeline=train_pipeline)) +evaluation = dict(interval=10, metric='accuracy') + +# optimizer +optimizer = dict( + type='RMSprop', + lr=0.064, + alpha=0.9, + momentum=0.9, + eps=0.0316, + weight_decay=1e-5) +optimizer_config = dict(grad_clip=None) +# learning policy +lr_config = dict(policy='step', step=2, gamma=0.973, by_epoch=True) +runner = dict(type='EpochBasedRunner', max_epochs=600) diff --git a/configs/mobilenet_v3/mobilenet_v3_large_imagenet.py b/configs/mobilenet_v3/mobilenet_v3_large_imagenet.py index 985ef520d53..93e89a49557 100644 --- a/configs/mobilenet_v3/mobilenet_v3_large_imagenet.py +++ b/configs/mobilenet_v3/mobilenet_v3_large_imagenet.py @@ -1,158 +1,6 @@ -# Refer to https://pytorch.org/blog/ml-models-torchvision-v0.9/#classification -# ---------------------------- -# -[x] auto_augment='imagenet' -# -[x] batch_size=128 (per gpu) -# -[x] epochs=600 -# -[x] opt='rmsprop' -# -[x] lr=0.064 -# -[x] eps=0.0316 -# -[x] alpha=0.9 -# -[x] weight_decay=1e-05 -# -[x] momentum=0.9 -# -[x] lr_gamma=0.973 -# -[x] lr_step_size=2 -# -[x] nproc_per_node=8 -# -[x] random_erase=0.2 -# -[x] workers=16 (workers_per_gpu) -# - modify: RandomErasing use RE-M instead of RE-0 +_base_ = 'mobilenet-v3-large_8xb32_in1k.py' -_base_ = [ - '../_base_/models/mobilenet_v3_large_imagenet.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/default_runtime.py' -] - -img_norm_cfg = dict( - mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) - -policies = [ - [ - dict(type='Posterize', bits=4, prob=0.4), - dict(type='Rotate', angle=30., prob=0.6) - ], - [ - dict(type='Solarize', thr=256 / 9 * 4, prob=0.6), - dict(type='AutoContrast', prob=0.6) - ], - [dict(type='Equalize', prob=0.8), - dict(type='Equalize', prob=0.6)], - [ - dict(type='Posterize', bits=5, prob=0.6), - dict(type='Posterize', bits=5, prob=0.6) - ], - [ - dict(type='Equalize', prob=0.4), - dict(type='Solarize', thr=256 / 9 * 5, prob=0.2) - ], - [ - dict(type='Equalize', prob=0.4), - dict(type='Rotate', angle=30 / 9 * 8, prob=0.8) - ], - [ - dict(type='Solarize', thr=256 / 9 * 6, prob=0.6), - dict(type='Equalize', prob=0.6) - ], - [dict(type='Posterize', bits=6, prob=0.8), - dict(type='Equalize', prob=1.)], - [ - dict(type='Rotate', angle=10., prob=0.2), - dict(type='Solarize', thr=256 / 9, prob=0.6) - ], - [ - dict(type='Equalize', prob=0.6), - dict(type='Posterize', bits=5, prob=0.4) - ], - [ - dict(type='Rotate', angle=30 / 9 * 8, prob=0.8), - dict(type='ColorTransform', magnitude=0., prob=0.4) - ], - [ - dict(type='Rotate', angle=30., prob=0.4), - dict(type='Equalize', prob=0.6) - ], - [dict(type='Equalize', prob=0.0), - dict(type='Equalize', prob=0.8)], - [dict(type='Invert', prob=0.6), - dict(type='Equalize', prob=1.)], - [ - dict(type='ColorTransform', magnitude=0.4, prob=0.6), - dict(type='Contrast', magnitude=0.8, prob=1.) - ], - [ - dict(type='Rotate', angle=30 / 9 * 8, prob=0.8), - dict(type='ColorTransform', magnitude=0.2, prob=1.) - ], - [ - dict(type='ColorTransform', magnitude=0.8, prob=0.8), - dict(type='Solarize', thr=256 / 9 * 2, prob=0.8) - ], - [ - dict(type='Sharpness', magnitude=0.7, prob=0.4), - dict(type='Invert', prob=0.6) - ], - [ - dict( - type='Shear', - magnitude=0.3 / 9 * 5, - prob=0.6, - direction='horizontal'), - dict(type='Equalize', prob=1.) - ], - [ - dict(type='ColorTransform', magnitude=0., prob=0.4), - dict(type='Equalize', prob=0.6) - ], - [ - dict(type='Equalize', prob=0.4), - dict(type='Solarize', thr=256 / 9 * 5, prob=0.2) - ], - [ - dict(type='Solarize', thr=256 / 9 * 4, prob=0.6), - dict(type='AutoContrast', prob=0.6) - ], - [dict(type='Invert', prob=0.6), - dict(type='Equalize', prob=1.)], - [ - dict(type='ColorTransform', magnitude=0.4, prob=0.6), - dict(type='Contrast', magnitude=0.8, prob=1.) - ], - [dict(type='Equalize', prob=0.8), - dict(type='Equalize', prob=0.6)], -] - -train_pipeline = [ - dict(type='LoadImageFromFile'), - dict(type='RandomResizedCrop', size=224, backend='pillow'), - dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), - dict(type='AutoAugment', policies=policies), - dict( - type='RandomErasing', - erase_prob=0.2, - mode='const', - min_area_ratio=0.02, - max_area_ratio=1 / 3, - fill_color=img_norm_cfg['mean']), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='ToTensor', keys=['gt_label']), - dict(type='Collect', keys=['img', 'gt_label']) -] - -data = dict( - samples_per_gpu=128, - workers_per_gpu=4, - train=dict(pipeline=train_pipeline)) -evaluation = dict(interval=10, metric='accuracy') - -# optimizer -optimizer = dict( - type='RMSprop', - lr=0.064, - alpha=0.9, - momentum=0.9, - eps=0.0316, - weight_decay=1e-5) -optimizer_config = dict(grad_clip=None) -# learning policy -lr_config = dict(policy='step', step=2, gamma=0.973, by_epoch=True) -runner = dict(type='EpochBasedRunner', max_epochs=600) +_deprecation_ = dict( + expected='mobilenet-v3-large_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/mobilenet_v3/mobilenet_v3_small_cifar.py b/configs/mobilenet_v3/mobilenet_v3_small_cifar.py index 2b5c2b1f07f..c09bd1cd711 100644 --- a/configs/mobilenet_v3/mobilenet_v3_small_cifar.py +++ b/configs/mobilenet_v3/mobilenet_v3_small_cifar.py @@ -1,8 +1,6 @@ -_base_ = [ - '../_base_/models/mobilenet_v3_small_cifar.py', - '../_base_/datasets/cifar10_bs16.py', - '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' -] +_base_ = 'mobilenet-v3-small_8xb16_cifar10.py' -lr_config = dict(policy='step', step=[120, 170]) -runner = dict(type='EpochBasedRunner', max_epochs=200) +_deprecation_ = dict( + expected='mobilenet-v3-small_8xb16_cifar10.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/mobilenet_v3/mobilenet_v3_small_imagenet.py b/configs/mobilenet_v3/mobilenet_v3_small_imagenet.py index 2612166fd2b..15debd0f465 100644 --- a/configs/mobilenet_v3/mobilenet_v3_small_imagenet.py +++ b/configs/mobilenet_v3/mobilenet_v3_small_imagenet.py @@ -1,158 +1,6 @@ -# Refer to https://pytorch.org/blog/ml-models-torchvision-v0.9/#classification -# ---------------------------- -# -[x] auto_augment='imagenet' -# -[x] batch_size=128 (per gpu) -# -[x] epochs=600 -# -[x] opt='rmsprop' -# -[x] lr=0.064 -# -[x] eps=0.0316 -# -[x] alpha=0.9 -# -[x] weight_decay=1e-05 -# -[x] momentum=0.9 -# -[x] lr_gamma=0.973 -# -[x] lr_step_size=2 -# -[x] nproc_per_node=8 -# -[x] random_erase=0.2 -# -[x] workers=16 (workers_per_gpu) -# - modify: RandomErasing use RE-M instead of RE-0 +_base_ = 'mobilenet-v3-small_8xb32_in1k.py' -_base_ = [ - '../_base_/models/mobilenet_v3_small_imagenet.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/default_runtime.py' -] - -img_norm_cfg = dict( - mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) - -policies = [ - [ - dict(type='Posterize', bits=4, prob=0.4), - dict(type='Rotate', angle=30., prob=0.6) - ], - [ - dict(type='Solarize', thr=256 / 9 * 4, prob=0.6), - dict(type='AutoContrast', prob=0.6) - ], - [dict(type='Equalize', prob=0.8), - dict(type='Equalize', prob=0.6)], - [ - dict(type='Posterize', bits=5, prob=0.6), - dict(type='Posterize', bits=5, prob=0.6) - ], - [ - dict(type='Equalize', prob=0.4), - dict(type='Solarize', thr=256 / 9 * 5, prob=0.2) - ], - [ - dict(type='Equalize', prob=0.4), - dict(type='Rotate', angle=30 / 9 * 8, prob=0.8) - ], - [ - dict(type='Solarize', thr=256 / 9 * 6, prob=0.6), - dict(type='Equalize', prob=0.6) - ], - [dict(type='Posterize', bits=6, prob=0.8), - dict(type='Equalize', prob=1.)], - [ - dict(type='Rotate', angle=10., prob=0.2), - dict(type='Solarize', thr=256 / 9, prob=0.6) - ], - [ - dict(type='Equalize', prob=0.6), - dict(type='Posterize', bits=5, prob=0.4) - ], - [ - dict(type='Rotate', angle=30 / 9 * 8, prob=0.8), - dict(type='ColorTransform', magnitude=0., prob=0.4) - ], - [ - dict(type='Rotate', angle=30., prob=0.4), - dict(type='Equalize', prob=0.6) - ], - [dict(type='Equalize', prob=0.0), - dict(type='Equalize', prob=0.8)], - [dict(type='Invert', prob=0.6), - dict(type='Equalize', prob=1.)], - [ - dict(type='ColorTransform', magnitude=0.4, prob=0.6), - dict(type='Contrast', magnitude=0.8, prob=1.) - ], - [ - dict(type='Rotate', angle=30 / 9 * 8, prob=0.8), - dict(type='ColorTransform', magnitude=0.2, prob=1.) - ], - [ - dict(type='ColorTransform', magnitude=0.8, prob=0.8), - dict(type='Solarize', thr=256 / 9 * 2, prob=0.8) - ], - [ - dict(type='Sharpness', magnitude=0.7, prob=0.4), - dict(type='Invert', prob=0.6) - ], - [ - dict( - type='Shear', - magnitude=0.3 / 9 * 5, - prob=0.6, - direction='horizontal'), - dict(type='Equalize', prob=1.) - ], - [ - dict(type='ColorTransform', magnitude=0., prob=0.4), - dict(type='Equalize', prob=0.6) - ], - [ - dict(type='Equalize', prob=0.4), - dict(type='Solarize', thr=256 / 9 * 5, prob=0.2) - ], - [ - dict(type='Solarize', thr=256 / 9 * 4, prob=0.6), - dict(type='AutoContrast', prob=0.6) - ], - [dict(type='Invert', prob=0.6), - dict(type='Equalize', prob=1.)], - [ - dict(type='ColorTransform', magnitude=0.4, prob=0.6), - dict(type='Contrast', magnitude=0.8, prob=1.) - ], - [dict(type='Equalize', prob=0.8), - dict(type='Equalize', prob=0.6)], -] - -train_pipeline = [ - dict(type='LoadImageFromFile'), - dict(type='RandomResizedCrop', size=224, backend='pillow'), - dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), - dict(type='AutoAugment', policies=policies), - dict( - type='RandomErasing', - erase_prob=0.2, - mode='const', - min_area_ratio=0.02, - max_area_ratio=1 / 3, - fill_color=img_norm_cfg['mean']), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='ToTensor', keys=['gt_label']), - dict(type='Collect', keys=['img', 'gt_label']) -] - -data = dict( - samples_per_gpu=128, - workers_per_gpu=4, - train=dict(pipeline=train_pipeline)) -evaluation = dict(interval=10, metric='accuracy') - -# optimizer -optimizer = dict( - type='RMSprop', - lr=0.064, - alpha=0.9, - momentum=0.9, - eps=0.0316, - weight_decay=1e-5) -optimizer_config = dict(grad_clip=None) -# learning policy -lr_config = dict(policy='step', step=2, gamma=0.973, by_epoch=True) -runner = dict(type='EpochBasedRunner', max_epochs=600) +_deprecation_ = dict( + expected='mobilenet-v3-small_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/regnet/regnetx-1.6gf_8xb32_in1k.py b/configs/regnet/regnetx-1.6gf_8xb32_in1k.py new file mode 100644 index 00000000000..cfa956ff786 --- /dev/null +++ b/configs/regnet/regnetx-1.6gf_8xb32_in1k.py @@ -0,0 +1,51 @@ +_base_ = [ + '../_base_/models/regnet/regnetx_1.6gf.py', + '../_base_/datasets/imagenet_bs32.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] + +# dataset settings +dataset_type = 'ImageNet' + +img_norm_cfg = dict( + # The mean and std are used in PyCls when training RegNets + mean=[103.53, 116.28, 123.675], + std=[57.375, 57.12, 58.395], + to_rgb=False) + +train_pipeline = [ + dict(type='LoadImageFromFile'), + dict(type='RandomResizedCrop', size=224), + dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='ToTensor', keys=['gt_label']), + dict(type='Collect', keys=['img', 'gt_label']) +] +test_pipeline = [ + dict(type='LoadImageFromFile'), + dict(type='Resize', size=(256, -1)), + dict(type='CenterCrop', crop_size=224), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='Collect', keys=['img']) +] +data = dict( + samples_per_gpu=32, + workers_per_gpu=2, + train=dict( + type=dataset_type, + data_prefix='data/imagenet/train', + pipeline=train_pipeline), + val=dict( + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline), + test=dict( + # replace `data/val` with `data/test` for standard test + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline)) +evaluation = dict(interval=1, metric='accuracy') diff --git a/configs/regnet/regnetx-12gf_8xb32_in1k.py b/configs/regnet/regnetx-12gf_8xb32_in1k.py new file mode 100644 index 00000000000..17796a4b78c --- /dev/null +++ b/configs/regnet/regnetx-12gf_8xb32_in1k.py @@ -0,0 +1,51 @@ +_base_ = [ + '../_base_/models/regnet/regnetx_12gf.py', + '../_base_/datasets/imagenet_bs32.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] + +# dataset settings +dataset_type = 'ImageNet' + +img_norm_cfg = dict( + # The mean and std are used in PyCls when training RegNets + mean=[103.53, 116.28, 123.675], + std=[57.375, 57.12, 58.395], + to_rgb=False) + +train_pipeline = [ + dict(type='LoadImageFromFile'), + dict(type='RandomResizedCrop', size=224), + dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='ToTensor', keys=['gt_label']), + dict(type='Collect', keys=['img', 'gt_label']) +] +test_pipeline = [ + dict(type='LoadImageFromFile'), + dict(type='Resize', size=(256, -1)), + dict(type='CenterCrop', crop_size=224), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='Collect', keys=['img']) +] +data = dict( + samples_per_gpu=32, + workers_per_gpu=2, + train=dict( + type=dataset_type, + data_prefix='data/imagenet/train', + pipeline=train_pipeline), + val=dict( + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline), + test=dict( + # replace `data/val` with `data/test` for standard test + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline)) +evaluation = dict(interval=1, metric='accuracy') diff --git a/configs/regnet/regnetx-3.2gf_8xb32_in1k.py b/configs/regnet/regnetx-3.2gf_8xb32_in1k.py new file mode 100644 index 00000000000..b772c786049 --- /dev/null +++ b/configs/regnet/regnetx-3.2gf_8xb32_in1k.py @@ -0,0 +1,51 @@ +_base_ = [ + '../_base_/models/regnet/regnetx_3.2gf.py', + '../_base_/datasets/imagenet_bs32.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] + +# dataset settings +dataset_type = 'ImageNet' + +img_norm_cfg = dict( + # The mean and std are used in PyCls when training RegNets + mean=[103.53, 116.28, 123.675], + std=[57.375, 57.12, 58.395], + to_rgb=False) + +train_pipeline = [ + dict(type='LoadImageFromFile'), + dict(type='RandomResizedCrop', size=224), + dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='ToTensor', keys=['gt_label']), + dict(type='Collect', keys=['img', 'gt_label']) +] +test_pipeline = [ + dict(type='LoadImageFromFile'), + dict(type='Resize', size=(256, -1)), + dict(type='CenterCrop', crop_size=224), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='Collect', keys=['img']) +] +data = dict( + samples_per_gpu=32, + workers_per_gpu=2, + train=dict( + type=dataset_type, + data_prefix='data/imagenet/train', + pipeline=train_pipeline), + val=dict( + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline), + test=dict( + # replace `data/val` with `data/test` for standard test + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline)) +evaluation = dict(interval=1, metric='accuracy') diff --git a/configs/regnet/regnetx-4.0gf_8xb32_in1k.py b/configs/regnet/regnetx-4.0gf_8xb32_in1k.py new file mode 100644 index 00000000000..98e6c53b888 --- /dev/null +++ b/configs/regnet/regnetx-4.0gf_8xb32_in1k.py @@ -0,0 +1,51 @@ +_base_ = [ + '../_base_/models/regnet/regnetx_4.0gf.py', + '../_base_/datasets/imagenet_bs32.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] + +# dataset settings +dataset_type = 'ImageNet' + +img_norm_cfg = dict( + # The mean and std are used in PyCls when training RegNets + mean=[103.53, 116.28, 123.675], + std=[57.375, 57.12, 58.395], + to_rgb=False) + +train_pipeline = [ + dict(type='LoadImageFromFile'), + dict(type='RandomResizedCrop', size=224), + dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='ToTensor', keys=['gt_label']), + dict(type='Collect', keys=['img', 'gt_label']) +] +test_pipeline = [ + dict(type='LoadImageFromFile'), + dict(type='Resize', size=(256, -1)), + dict(type='CenterCrop', crop_size=224), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='Collect', keys=['img']) +] +data = dict( + samples_per_gpu=32, + workers_per_gpu=2, + train=dict( + type=dataset_type, + data_prefix='data/imagenet/train', + pipeline=train_pipeline), + val=dict( + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline), + test=dict( + # replace `data/val` with `data/test` for standard test + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline)) +evaluation = dict(interval=1, metric='accuracy') diff --git a/configs/regnet/regnetx-400mf_8xb32_in1k.py b/configs/regnet/regnetx-400mf_8xb32_in1k.py new file mode 100644 index 00000000000..88ccec943d4 --- /dev/null +++ b/configs/regnet/regnetx-400mf_8xb32_in1k.py @@ -0,0 +1,51 @@ +_base_ = [ + '../_base_/models/regnet/regnetx_400mf.py', + '../_base_/datasets/imagenet_bs32.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] + +# dataset settings +dataset_type = 'ImageNet' + +img_norm_cfg = dict( + # The mean and std are used in PyCls when training RegNets + mean=[103.53, 116.28, 123.675], + std=[57.375, 57.12, 58.395], + to_rgb=False) + +train_pipeline = [ + dict(type='LoadImageFromFile'), + dict(type='RandomResizedCrop', size=224), + dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='ToTensor', keys=['gt_label']), + dict(type='Collect', keys=['img', 'gt_label']) +] +test_pipeline = [ + dict(type='LoadImageFromFile'), + dict(type='Resize', size=(256, -1)), + dict(type='CenterCrop', crop_size=224), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='Collect', keys=['img']) +] +data = dict( + samples_per_gpu=32, + workers_per_gpu=2, + train=dict( + type=dataset_type, + data_prefix='data/imagenet/train', + pipeline=train_pipeline), + val=dict( + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline), + test=dict( + # replace `data/val` with `data/test` for standard test + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline)) +evaluation = dict(interval=1, metric='accuracy') diff --git a/configs/regnet/regnetx-6.4gf_8xb32_in1k.py b/configs/regnet/regnetx-6.4gf_8xb32_in1k.py new file mode 100644 index 00000000000..4e5e36a07d6 --- /dev/null +++ b/configs/regnet/regnetx-6.4gf_8xb32_in1k.py @@ -0,0 +1,51 @@ +_base_ = [ + '../_base_/models/regnet/regnetx_6.4gf.py', + '../_base_/datasets/imagenet_bs32.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] + +# dataset settings +dataset_type = 'ImageNet' + +img_norm_cfg = dict( + # The mean and std are used in PyCls when training RegNets + mean=[103.53, 116.28, 123.675], + std=[57.375, 57.12, 58.395], + to_rgb=False) + +train_pipeline = [ + dict(type='LoadImageFromFile'), + dict(type='RandomResizedCrop', size=224), + dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='ToTensor', keys=['gt_label']), + dict(type='Collect', keys=['img', 'gt_label']) +] +test_pipeline = [ + dict(type='LoadImageFromFile'), + dict(type='Resize', size=(256, -1)), + dict(type='CenterCrop', crop_size=224), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='Collect', keys=['img']) +] +data = dict( + samples_per_gpu=32, + workers_per_gpu=2, + train=dict( + type=dataset_type, + data_prefix='data/imagenet/train', + pipeline=train_pipeline), + val=dict( + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline), + test=dict( + # replace `data/val` with `data/test` for standard test + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline)) +evaluation = dict(interval=1, metric='accuracy') diff --git a/configs/regnet/regnetx-8.0gf_8xb32_in1k.py b/configs/regnet/regnetx-8.0gf_8xb32_in1k.py new file mode 100644 index 00000000000..37d7c8fbfbe --- /dev/null +++ b/configs/regnet/regnetx-8.0gf_8xb32_in1k.py @@ -0,0 +1,51 @@ +_base_ = [ + '../_base_/models/regnet/regnetx_8.0gf.py', + '../_base_/datasets/imagenet_bs32.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] + +# dataset settings +dataset_type = 'ImageNet' + +img_norm_cfg = dict( + # The mean and std are used in PyCls when training RegNets + mean=[103.53, 116.28, 123.675], + std=[57.375, 57.12, 58.395], + to_rgb=False) + +train_pipeline = [ + dict(type='LoadImageFromFile'), + dict(type='RandomResizedCrop', size=224), + dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='ToTensor', keys=['gt_label']), + dict(type='Collect', keys=['img', 'gt_label']) +] +test_pipeline = [ + dict(type='LoadImageFromFile'), + dict(type='Resize', size=(256, -1)), + dict(type='CenterCrop', crop_size=224), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='Collect', keys=['img']) +] +data = dict( + samples_per_gpu=32, + workers_per_gpu=2, + train=dict( + type=dataset_type, + data_prefix='data/imagenet/train', + pipeline=train_pipeline), + val=dict( + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline), + test=dict( + # replace `data/val` with `data/test` for standard test + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline)) +evaluation = dict(interval=1, metric='accuracy') diff --git a/configs/regnet/regnetx-800mf_8xb32_in1k.py b/configs/regnet/regnetx-800mf_8xb32_in1k.py new file mode 100644 index 00000000000..3db65b36efe --- /dev/null +++ b/configs/regnet/regnetx-800mf_8xb32_in1k.py @@ -0,0 +1,51 @@ +_base_ = [ + '../_base_/models/regnet/regnetx_800mf.py', + '../_base_/datasets/imagenet_bs32.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] + +# dataset settings +dataset_type = 'ImageNet' + +img_norm_cfg = dict( + # The mean and std are used in PyCls when training RegNets + mean=[103.53, 116.28, 123.675], + std=[57.375, 57.12, 58.395], + to_rgb=False) + +train_pipeline = [ + dict(type='LoadImageFromFile'), + dict(type='RandomResizedCrop', size=224), + dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='ToTensor', keys=['gt_label']), + dict(type='Collect', keys=['img', 'gt_label']) +] +test_pipeline = [ + dict(type='LoadImageFromFile'), + dict(type='Resize', size=(256, -1)), + dict(type='CenterCrop', crop_size=224), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='Collect', keys=['img']) +] +data = dict( + samples_per_gpu=32, + workers_per_gpu=2, + train=dict( + type=dataset_type, + data_prefix='data/imagenet/train', + pipeline=train_pipeline), + val=dict( + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline), + test=dict( + # replace `data/val` with `data/test` for standard test + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline)) +evaluation = dict(interval=1, metric='accuracy') diff --git a/configs/regnet/regnetx_1.6gf_b32x8_imagenet.py b/configs/regnet/regnetx_1.6gf_b32x8_imagenet.py index cfa956ff786..e4797c7a3df 100644 --- a/configs/regnet/regnetx_1.6gf_b32x8_imagenet.py +++ b/configs/regnet/regnetx_1.6gf_b32x8_imagenet.py @@ -1,51 +1,6 @@ -_base_ = [ - '../_base_/models/regnet/regnetx_1.6gf.py', - '../_base_/datasets/imagenet_bs32.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'regnetx-1.6gf_8xb32_in1k.py' -# dataset settings -dataset_type = 'ImageNet' - -img_norm_cfg = dict( - # The mean and std are used in PyCls when training RegNets - mean=[103.53, 116.28, 123.675], - std=[57.375, 57.12, 58.395], - to_rgb=False) - -train_pipeline = [ - dict(type='LoadImageFromFile'), - dict(type='RandomResizedCrop', size=224), - dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='ToTensor', keys=['gt_label']), - dict(type='Collect', keys=['img', 'gt_label']) -] -test_pipeline = [ - dict(type='LoadImageFromFile'), - dict(type='Resize', size=(256, -1)), - dict(type='CenterCrop', crop_size=224), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='Collect', keys=['img']) -] -data = dict( - samples_per_gpu=32, - workers_per_gpu=2, - train=dict( - type=dataset_type, - data_prefix='data/imagenet/train', - pipeline=train_pipeline), - val=dict( - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline), - test=dict( - # replace `data/val` with `data/test` for standard test - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline)) -evaluation = dict(interval=1, metric='accuracy') +_deprecation_ = dict( + expected='regnetx-1.6gf_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/regnet/regnetx_12gf_b32x8_imagenet.py b/configs/regnet/regnetx_12gf_b32x8_imagenet.py index 17796a4b78c..a027054ac85 100644 --- a/configs/regnet/regnetx_12gf_b32x8_imagenet.py +++ b/configs/regnet/regnetx_12gf_b32x8_imagenet.py @@ -1,51 +1,6 @@ -_base_ = [ - '../_base_/models/regnet/regnetx_12gf.py', - '../_base_/datasets/imagenet_bs32.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'regnetx-12gf_8xb32_in1k.py' -# dataset settings -dataset_type = 'ImageNet' - -img_norm_cfg = dict( - # The mean and std are used in PyCls when training RegNets - mean=[103.53, 116.28, 123.675], - std=[57.375, 57.12, 58.395], - to_rgb=False) - -train_pipeline = [ - dict(type='LoadImageFromFile'), - dict(type='RandomResizedCrop', size=224), - dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='ToTensor', keys=['gt_label']), - dict(type='Collect', keys=['img', 'gt_label']) -] -test_pipeline = [ - dict(type='LoadImageFromFile'), - dict(type='Resize', size=(256, -1)), - dict(type='CenterCrop', crop_size=224), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='Collect', keys=['img']) -] -data = dict( - samples_per_gpu=32, - workers_per_gpu=2, - train=dict( - type=dataset_type, - data_prefix='data/imagenet/train', - pipeline=train_pipeline), - val=dict( - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline), - test=dict( - # replace `data/val` with `data/test` for standard test - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline)) -evaluation = dict(interval=1, metric='accuracy') +_deprecation_ = dict( + expected='regnetx-12gf_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/regnet/regnetx_3.2gf_b32x8_imagenet.py b/configs/regnet/regnetx_3.2gf_b32x8_imagenet.py index b772c786049..3839568e97a 100644 --- a/configs/regnet/regnetx_3.2gf_b32x8_imagenet.py +++ b/configs/regnet/regnetx_3.2gf_b32x8_imagenet.py @@ -1,51 +1,6 @@ -_base_ = [ - '../_base_/models/regnet/regnetx_3.2gf.py', - '../_base_/datasets/imagenet_bs32.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'regnetx-3.2gf_8xb32_in1k.py' -# dataset settings -dataset_type = 'ImageNet' - -img_norm_cfg = dict( - # The mean and std are used in PyCls when training RegNets - mean=[103.53, 116.28, 123.675], - std=[57.375, 57.12, 58.395], - to_rgb=False) - -train_pipeline = [ - dict(type='LoadImageFromFile'), - dict(type='RandomResizedCrop', size=224), - dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='ToTensor', keys=['gt_label']), - dict(type='Collect', keys=['img', 'gt_label']) -] -test_pipeline = [ - dict(type='LoadImageFromFile'), - dict(type='Resize', size=(256, -1)), - dict(type='CenterCrop', crop_size=224), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='Collect', keys=['img']) -] -data = dict( - samples_per_gpu=32, - workers_per_gpu=2, - train=dict( - type=dataset_type, - data_prefix='data/imagenet/train', - pipeline=train_pipeline), - val=dict( - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline), - test=dict( - # replace `data/val` with `data/test` for standard test - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline)) -evaluation = dict(interval=1, metric='accuracy') +_deprecation_ = dict( + expected='regnetx-3.2gf_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/regnet/regnetx_4.0gf_b32x8_imagenet.py b/configs/regnet/regnetx_4.0gf_b32x8_imagenet.py index 98e6c53b888..7aefdd404fe 100644 --- a/configs/regnet/regnetx_4.0gf_b32x8_imagenet.py +++ b/configs/regnet/regnetx_4.0gf_b32x8_imagenet.py @@ -1,51 +1,6 @@ -_base_ = [ - '../_base_/models/regnet/regnetx_4.0gf.py', - '../_base_/datasets/imagenet_bs32.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'regnetx-4.0gf_8xb32_in1k.py' -# dataset settings -dataset_type = 'ImageNet' - -img_norm_cfg = dict( - # The mean and std are used in PyCls when training RegNets - mean=[103.53, 116.28, 123.675], - std=[57.375, 57.12, 58.395], - to_rgb=False) - -train_pipeline = [ - dict(type='LoadImageFromFile'), - dict(type='RandomResizedCrop', size=224), - dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='ToTensor', keys=['gt_label']), - dict(type='Collect', keys=['img', 'gt_label']) -] -test_pipeline = [ - dict(type='LoadImageFromFile'), - dict(type='Resize', size=(256, -1)), - dict(type='CenterCrop', crop_size=224), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='Collect', keys=['img']) -] -data = dict( - samples_per_gpu=32, - workers_per_gpu=2, - train=dict( - type=dataset_type, - data_prefix='data/imagenet/train', - pipeline=train_pipeline), - val=dict( - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline), - test=dict( - # replace `data/val` with `data/test` for standard test - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline)) -evaluation = dict(interval=1, metric='accuracy') +_deprecation_ = dict( + expected='regnetx-4.0gf_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/regnet/regnetx_400mf_b32x8_imagenet.py b/configs/regnet/regnetx_400mf_b32x8_imagenet.py index 88ccec943d4..a71d207ffe3 100644 --- a/configs/regnet/regnetx_400mf_b32x8_imagenet.py +++ b/configs/regnet/regnetx_400mf_b32x8_imagenet.py @@ -1,51 +1,6 @@ -_base_ = [ - '../_base_/models/regnet/regnetx_400mf.py', - '../_base_/datasets/imagenet_bs32.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'regnetx-400mf_8xb32_in1k.py' -# dataset settings -dataset_type = 'ImageNet' - -img_norm_cfg = dict( - # The mean and std are used in PyCls when training RegNets - mean=[103.53, 116.28, 123.675], - std=[57.375, 57.12, 58.395], - to_rgb=False) - -train_pipeline = [ - dict(type='LoadImageFromFile'), - dict(type='RandomResizedCrop', size=224), - dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='ToTensor', keys=['gt_label']), - dict(type='Collect', keys=['img', 'gt_label']) -] -test_pipeline = [ - dict(type='LoadImageFromFile'), - dict(type='Resize', size=(256, -1)), - dict(type='CenterCrop', crop_size=224), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='Collect', keys=['img']) -] -data = dict( - samples_per_gpu=32, - workers_per_gpu=2, - train=dict( - type=dataset_type, - data_prefix='data/imagenet/train', - pipeline=train_pipeline), - val=dict( - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline), - test=dict( - # replace `data/val` with `data/test` for standard test - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline)) -evaluation = dict(interval=1, metric='accuracy') +_deprecation_ = dict( + expected='regnetx-400mf_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/regnet/regnetx_6.4gf_b32x8_imagenet.py b/configs/regnet/regnetx_6.4gf_b32x8_imagenet.py index 4e5e36a07d6..d6ae6d4c649 100644 --- a/configs/regnet/regnetx_6.4gf_b32x8_imagenet.py +++ b/configs/regnet/regnetx_6.4gf_b32x8_imagenet.py @@ -1,51 +1,6 @@ -_base_ = [ - '../_base_/models/regnet/regnetx_6.4gf.py', - '../_base_/datasets/imagenet_bs32.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'regnetx-6.4gf_8xb32_in1k.py' -# dataset settings -dataset_type = 'ImageNet' - -img_norm_cfg = dict( - # The mean and std are used in PyCls when training RegNets - mean=[103.53, 116.28, 123.675], - std=[57.375, 57.12, 58.395], - to_rgb=False) - -train_pipeline = [ - dict(type='LoadImageFromFile'), - dict(type='RandomResizedCrop', size=224), - dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='ToTensor', keys=['gt_label']), - dict(type='Collect', keys=['img', 'gt_label']) -] -test_pipeline = [ - dict(type='LoadImageFromFile'), - dict(type='Resize', size=(256, -1)), - dict(type='CenterCrop', crop_size=224), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='Collect', keys=['img']) -] -data = dict( - samples_per_gpu=32, - workers_per_gpu=2, - train=dict( - type=dataset_type, - data_prefix='data/imagenet/train', - pipeline=train_pipeline), - val=dict( - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline), - test=dict( - # replace `data/val` with `data/test` for standard test - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline)) -evaluation = dict(interval=1, metric='accuracy') +_deprecation_ = dict( + expected='regnetx-6.4gf_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/regnet/regnetx_8.0gf_b32x8_imagenet.py b/configs/regnet/regnetx_8.0gf_b32x8_imagenet.py index 37d7c8fbfbe..ab3ec58a24b 100644 --- a/configs/regnet/regnetx_8.0gf_b32x8_imagenet.py +++ b/configs/regnet/regnetx_8.0gf_b32x8_imagenet.py @@ -1,51 +1,6 @@ -_base_ = [ - '../_base_/models/regnet/regnetx_8.0gf.py', - '../_base_/datasets/imagenet_bs32.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'regnetx-8.0gf_8xb32_in1k.py' -# dataset settings -dataset_type = 'ImageNet' - -img_norm_cfg = dict( - # The mean and std are used in PyCls when training RegNets - mean=[103.53, 116.28, 123.675], - std=[57.375, 57.12, 58.395], - to_rgb=False) - -train_pipeline = [ - dict(type='LoadImageFromFile'), - dict(type='RandomResizedCrop', size=224), - dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='ToTensor', keys=['gt_label']), - dict(type='Collect', keys=['img', 'gt_label']) -] -test_pipeline = [ - dict(type='LoadImageFromFile'), - dict(type='Resize', size=(256, -1)), - dict(type='CenterCrop', crop_size=224), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='Collect', keys=['img']) -] -data = dict( - samples_per_gpu=32, - workers_per_gpu=2, - train=dict( - type=dataset_type, - data_prefix='data/imagenet/train', - pipeline=train_pipeline), - val=dict( - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline), - test=dict( - # replace `data/val` with `data/test` for standard test - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline)) -evaluation = dict(interval=1, metric='accuracy') +_deprecation_ = dict( + expected='regnetx-8.0gf_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/regnet/regnetx_800mf_b32x8_imagenet.py b/configs/regnet/regnetx_800mf_b32x8_imagenet.py index 3db65b36efe..0979e646161 100644 --- a/configs/regnet/regnetx_800mf_b32x8_imagenet.py +++ b/configs/regnet/regnetx_800mf_b32x8_imagenet.py @@ -1,51 +1,6 @@ -_base_ = [ - '../_base_/models/regnet/regnetx_800mf.py', - '../_base_/datasets/imagenet_bs32.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'regnetx-800mf_8xb32_in1k.py' -# dataset settings -dataset_type = 'ImageNet' - -img_norm_cfg = dict( - # The mean and std are used in PyCls when training RegNets - mean=[103.53, 116.28, 123.675], - std=[57.375, 57.12, 58.395], - to_rgb=False) - -train_pipeline = [ - dict(type='LoadImageFromFile'), - dict(type='RandomResizedCrop', size=224), - dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='ToTensor', keys=['gt_label']), - dict(type='Collect', keys=['img', 'gt_label']) -] -test_pipeline = [ - dict(type='LoadImageFromFile'), - dict(type='Resize', size=(256, -1)), - dict(type='CenterCrop', crop_size=224), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='Collect', keys=['img']) -] -data = dict( - samples_per_gpu=32, - workers_per_gpu=2, - train=dict( - type=dataset_type, - data_prefix='data/imagenet/train', - pipeline=train_pipeline), - val=dict( - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline), - test=dict( - # replace `data/val` with `data/test` for standard test - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline)) -evaluation = dict(interval=1, metric='accuracy') +_deprecation_ = dict( + expected='regnetx-800mf_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/repvgg/metafile.yml b/configs/repvgg/metafile.yml index d769f86e851..84fee5911c1 100644 --- a/configs/repvgg/metafile.yml +++ b/configs/repvgg/metafile.yml @@ -14,7 +14,7 @@ Collections: Version: v0.16.0 Models: - - Name: repvgg-A0_4xb64-coslr-120e_in1k + - Name: repvgg-A0_3rdparty_4xb64-coslr-120e_in1k In Collection: RepVGG Config: configs/repvgg/repvgg-A0_4xb64-coslr-120e_in1k.py Metadata: @@ -30,7 +30,7 @@ Models: Converted From: Weights: https://drive.google.com/drive/folders/1Avome4KvNp0Lqh2QwhXO6L5URQjzCjUq Code: https://github.com/DingXiaoH/RepVGG/blob/9f272318abfc47a2b702cd0e916fca8d25d683e7/repvgg.py#L196 - - Name: repvgg-A1_4xb64-coslr-120e_in1k + - Name: repvgg-A1_3rdparty_4xb64-coslr-120e_in1k In Collection: RepVGG Config: configs/repvgg/repvgg-A1_4xb64-coslr-120e_in1k.py Metadata: @@ -46,7 +46,7 @@ Models: Converted From: Weights: https://drive.google.com/drive/folders/1Avome4KvNp0Lqh2QwhXO6L5URQjzCjUq Code: https://github.com/DingXiaoH/RepVGG/blob/9f272318abfc47a2b702cd0e916fca8d25d683e7/repvgg.py#L200 - - Name: repvgg-A2_4xb64-coslr-120e_in1k + - Name: repvgg-A2_3rdparty_4xb64-coslr-120e_in1k In Collection: RepVGG Config: configs/repvgg/repvgg-A2_4xb64-coslr-120e_in1k.py Metadata: @@ -62,7 +62,7 @@ Models: Converted From: Weights: https://drive.google.com/drive/folders/1Avome4KvNp0Lqh2QwhXO6L5URQjzCjUq Code: https://github.com/DingXiaoH/RepVGG/blob/9f272318abfc47a2b702cd0e916fca8d25d683e7/repvgg.py#L204 - - Name: repvgg-B0_4xb64-coslr-120e_in1k + - Name: repvgg-B0_3rdparty_4xb64-coslr-120e_in1k In Collection: RepVGG Config: configs/repvgg/repvgg-B0_4xb64-coslr-120e_in1k.py Metadata: @@ -78,7 +78,7 @@ Models: Converted From: Weights: https://drive.google.com/drive/folders/1Avome4KvNp0Lqh2QwhXO6L5URQjzCjUq Code: https://github.com/DingXiaoH/RepVGG/blob/9f272318abfc47a2b702cd0e916fca8d25d683e7/repvgg.py#L208 - - Name: repvgg-B1_4xb64-coslr-120e_in1k + - Name: repvgg-B1_3rdparty_4xb64-coslr-120e_in1k In Collection: RepVGG Config: configs/repvgg/repvgg-B1_4xb64-coslr-120e_in1k.py Metadata: @@ -94,7 +94,7 @@ Models: Converted From: Weights: https://drive.google.com/drive/folders/1Avome4KvNp0Lqh2QwhXO6L5URQjzCjUq Code: https://github.com/DingXiaoH/RepVGG/blob/9f272318abfc47a2b702cd0e916fca8d25d683e7/repvgg.py#L212 - - Name: repvgg-B1g2_4xb64-coslr-120e_in1k + - Name: repvgg-B1g2_3rdparty_4xb64-coslr-120e_in1k In Collection: RepVGG Config: configs/repvgg/repvgg-B1g2_4xb64-coslr-120e_in1k.py Metadata: @@ -110,7 +110,7 @@ Models: Converted From: Weights: https://drive.google.com/drive/folders/1Avome4KvNp0Lqh2QwhXO6L5URQjzCjUq Code: https://github.com/DingXiaoH/RepVGG/blob/9f272318abfc47a2b702cd0e916fca8d25d683e7/repvgg.py#L216 - - Name: repvgg-B1g4_4xb64-coslr-120e_in1k + - Name: repvgg-B1g4_3rdparty_4xb64-coslr-120e_in1k In Collection: RepVGG Config: configs/repvgg/repvgg-B1g4_4xb64-coslr-120e_in1k.py Metadata: @@ -126,7 +126,7 @@ Models: Converted From: Weights: https://drive.google.com/drive/folders/1Avome4KvNp0Lqh2QwhXO6L5URQjzCjUq Code: https://github.com/DingXiaoH/RepVGG/blob/9f272318abfc47a2b702cd0e916fca8d25d683e7/repvgg.py#L220 - - Name: repvgg-B2_4xb64-coslr-120e_in1k + - Name: repvgg-B2_3rdparty_4xb64-coslr-120e_in1k In Collection: RepVGG Config: configs/repvgg/repvgg-B2_4xb64-coslr-120e_in1k.py Metadata: @@ -142,7 +142,7 @@ Models: Converted From: Weights: https://drive.google.com/drive/folders/1Avome4KvNp0Lqh2QwhXO6L5URQjzCjUq Code: https://github.com/DingXiaoH/RepVGG/blob/9f272318abfc47a2b702cd0e916fca8d25d683e7/repvgg.py#L225 - - Name: repvgg-B2g4_4xb64-autoaug-lbs-mixup-coslr-200e_in1k + - Name: repvgg-B2g4_3rdparty_4xb64-autoaug-lbs-mixup-coslr-200e_in1k In Collection: RepVGG Config: configs/repvgg/repvgg-B2g4_4xb64-autoaug-lbs-mixup-coslr-200e_in1k.py Metadata: @@ -158,7 +158,7 @@ Models: Converted From: Weights: https://drive.google.com/drive/folders/1Avome4KvNp0Lqh2QwhXO6L5URQjzCjUq Code: https://github.com/DingXiaoH/RepVGG/blob/9f272318abfc47a2b702cd0e916fca8d25d683e7/repvgg.py#L229 - - Name: repvgg-B3_4xb64-autoaug-lbs-mixup-coslr-200e_in1k + - Name: repvgg-B3_3rdparty_4xb64-autoaug-lbs-mixup-coslr-200e_in1k In Collection: RepVGG Config: configs/repvgg/repvgg-B3_4xb64-autoaug-lbs-mixup-coslr-200e_in1k.py Metadata: @@ -174,7 +174,7 @@ Models: Converted From: Weights: https://drive.google.com/drive/folders/1Avome4KvNp0Lqh2QwhXO6L5URQjzCjUq Code: https://github.com/DingXiaoH/RepVGG/blob/9f272318abfc47a2b702cd0e916fca8d25d683e7/repvgg.py#L238 - - Name: repvgg-B3g4_4xb64-autoaug-lbs-mixup-coslr-200e_in1k + - Name: repvgg-B3g4_3rdparty_4xb64-autoaug-lbs-mixup-coslr-200e_in1k In Collection: RepVGG Config: configs/repvgg/repvgg-B3g4_4xb64-autoaug-lbs-mixup-coslr-200e_in1k.py Metadata: @@ -190,7 +190,7 @@ Models: Converted From: Weights: https://drive.google.com/drive/folders/1Avome4KvNp0Lqh2QwhXO6L5URQjzCjUq Code: https://github.com/DingXiaoH/RepVGG/blob/9f272318abfc47a2b702cd0e916fca8d25d683e7/repvgg.py#L238 - - Name: repvgg-D2se_4xb64-autoaug-lbs-mixup-coslr-200e_in1k + - Name: repvgg-D2se_3rdparty_4xb64-autoaug-lbs-mixup-coslr-200e_in1k In Collection: RepVGG Config: configs/repvgg/repvgg-D2se_4xb64-autoaug-lbs-mixup-coslr-200e_in1k.py Metadata: diff --git a/configs/resnest/resnest101_32xb64_in1k.py b/configs/resnest/resnest101_32xb64_in1k.py new file mode 100644 index 00000000000..27b1882cf75 --- /dev/null +++ b/configs/resnest/resnest101_32xb64_in1k.py @@ -0,0 +1,181 @@ +_base_ = ['../_base_/models/resnest101.py', '../_base_/default_runtime.py'] + +# dataset settings +dataset_type = 'ImageNet' +img_lighting_cfg = dict( + eigval=[55.4625, 4.7940, 1.1475], + eigvec=[[-0.5675, 0.7192, 0.4009], [-0.5808, -0.0045, -0.8140], + [-0.5836, -0.6948, 0.4203]], + alphastd=0.1, + to_rgb=True) +policies = [ + dict(type='AutoContrast', prob=0.5), + dict(type='Equalize', prob=0.5), + dict(type='Invert', prob=0.5), + dict( + type='Rotate', + magnitude_key='angle', + magnitude_range=(0, 30), + pad_val=0, + prob=0.5, + random_negative_prob=0.5), + dict( + type='Posterize', + magnitude_key='bits', + magnitude_range=(0, 4), + prob=0.5), + dict( + type='Solarize', + magnitude_key='thr', + magnitude_range=(0, 256), + prob=0.5), + dict( + type='SolarizeAdd', + magnitude_key='magnitude', + magnitude_range=(0, 110), + thr=128, + prob=0.5), + dict( + type='ColorTransform', + magnitude_key='magnitude', + magnitude_range=(-0.9, 0.9), + prob=0.5, + random_negative_prob=0.), + dict( + type='Contrast', + magnitude_key='magnitude', + magnitude_range=(-0.9, 0.9), + prob=0.5, + random_negative_prob=0.), + dict( + type='Brightness', + magnitude_key='magnitude', + magnitude_range=(-0.9, 0.9), + prob=0.5, + random_negative_prob=0.), + dict( + type='Sharpness', + magnitude_key='magnitude', + magnitude_range=(-0.9, 0.9), + prob=0.5, + random_negative_prob=0.), + dict( + type='Shear', + magnitude_key='magnitude', + magnitude_range=(0, 0.3), + pad_val=0, + prob=0.5, + direction='horizontal', + random_negative_prob=0.5), + dict( + type='Shear', + magnitude_key='magnitude', + magnitude_range=(0, 0.3), + pad_val=0, + prob=0.5, + direction='vertical', + random_negative_prob=0.5), + dict( + type='Cutout', + magnitude_key='shape', + magnitude_range=(1, 41), + pad_val=0, + prob=0.5), + dict( + type='Translate', + magnitude_key='magnitude', + magnitude_range=(0, 0.3), + pad_val=0, + prob=0.5, + direction='horizontal', + random_negative_prob=0.5, + interpolation='bicubic'), + dict( + type='Translate', + magnitude_key='magnitude', + magnitude_range=(0, 0.3), + pad_val=0, + prob=0.5, + direction='vertical', + random_negative_prob=0.5, + interpolation='bicubic') +] +train_pipeline = [ + dict(type='LoadImageFromFile'), + dict( + type='RandAugment', + policies=policies, + num_policies=2, + magnitude_level=12), + dict( + type='RandomResizedCrop', + size=256, + efficientnet_style=True, + interpolation='bicubic', + backend='pillow'), + dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), + dict(type='ColorJitter', brightness=0.4, contrast=0.4, saturation=0.4), + dict(type='Lighting', **img_lighting_cfg), + dict( + type='Normalize', + mean=[123.675, 116.28, 103.53], + std=[58.395, 57.12, 57.375], + to_rgb=False), + dict(type='ImageToTensor', keys=['img']), + dict(type='ToTensor', keys=['gt_label']), + dict(type='Collect', keys=['img', 'gt_label']) +] +test_pipeline = [ + dict(type='LoadImageFromFile'), + dict( + type='CenterCrop', + crop_size=256, + efficientnet_style=True, + interpolation='bicubic', + backend='pillow'), + dict( + type='Normalize', + mean=[123.675, 116.28, 103.53], + std=[58.395, 57.12, 57.375], + to_rgb=True), + dict(type='ImageToTensor', keys=['img']), + dict(type='Collect', keys=['img']) +] +data = dict( + samples_per_gpu=64, + workers_per_gpu=2, + train=dict( + type=dataset_type, + data_prefix='data/imagenet/train', + pipeline=train_pipeline), + val=dict( + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline), + test=dict( + # replace `data/val` with `data/test` for standard test + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline)) +evaluation = dict(interval=1, metric='accuracy') + +# optimizer +optimizer = dict( + type='SGD', + lr=0.8, + momentum=0.9, + weight_decay=1e-4, + paramwise_cfg=dict(bias_decay_mult=0., norm_decay_mult=0.)) +optimizer_config = dict(grad_clip=None) + +# learning policy +lr_config = dict( + policy='CosineAnnealing', + min_lr=0, + warmup='linear', + warmup_iters=5, + warmup_ratio=1e-6, + warmup_by_epoch=True) +runner = dict(type='EpochBasedRunner', max_epochs=270) diff --git a/configs/resnest/resnest101_b64x32_imagenet.py b/configs/resnest/resnest101_b64x32_imagenet.py index 27b1882cf75..31c3647704c 100644 --- a/configs/resnest/resnest101_b64x32_imagenet.py +++ b/configs/resnest/resnest101_b64x32_imagenet.py @@ -1,181 +1,6 @@ -_base_ = ['../_base_/models/resnest101.py', '../_base_/default_runtime.py'] +_base_ = 'resnest101_32xb64_in1k.py' -# dataset settings -dataset_type = 'ImageNet' -img_lighting_cfg = dict( - eigval=[55.4625, 4.7940, 1.1475], - eigvec=[[-0.5675, 0.7192, 0.4009], [-0.5808, -0.0045, -0.8140], - [-0.5836, -0.6948, 0.4203]], - alphastd=0.1, - to_rgb=True) -policies = [ - dict(type='AutoContrast', prob=0.5), - dict(type='Equalize', prob=0.5), - dict(type='Invert', prob=0.5), - dict( - type='Rotate', - magnitude_key='angle', - magnitude_range=(0, 30), - pad_val=0, - prob=0.5, - random_negative_prob=0.5), - dict( - type='Posterize', - magnitude_key='bits', - magnitude_range=(0, 4), - prob=0.5), - dict( - type='Solarize', - magnitude_key='thr', - magnitude_range=(0, 256), - prob=0.5), - dict( - type='SolarizeAdd', - magnitude_key='magnitude', - magnitude_range=(0, 110), - thr=128, - prob=0.5), - dict( - type='ColorTransform', - magnitude_key='magnitude', - magnitude_range=(-0.9, 0.9), - prob=0.5, - random_negative_prob=0.), - dict( - type='Contrast', - magnitude_key='magnitude', - magnitude_range=(-0.9, 0.9), - prob=0.5, - random_negative_prob=0.), - dict( - type='Brightness', - magnitude_key='magnitude', - magnitude_range=(-0.9, 0.9), - prob=0.5, - random_negative_prob=0.), - dict( - type='Sharpness', - magnitude_key='magnitude', - magnitude_range=(-0.9, 0.9), - prob=0.5, - random_negative_prob=0.), - dict( - type='Shear', - magnitude_key='magnitude', - magnitude_range=(0, 0.3), - pad_val=0, - prob=0.5, - direction='horizontal', - random_negative_prob=0.5), - dict( - type='Shear', - magnitude_key='magnitude', - magnitude_range=(0, 0.3), - pad_val=0, - prob=0.5, - direction='vertical', - random_negative_prob=0.5), - dict( - type='Cutout', - magnitude_key='shape', - magnitude_range=(1, 41), - pad_val=0, - prob=0.5), - dict( - type='Translate', - magnitude_key='magnitude', - magnitude_range=(0, 0.3), - pad_val=0, - prob=0.5, - direction='horizontal', - random_negative_prob=0.5, - interpolation='bicubic'), - dict( - type='Translate', - magnitude_key='magnitude', - magnitude_range=(0, 0.3), - pad_val=0, - prob=0.5, - direction='vertical', - random_negative_prob=0.5, - interpolation='bicubic') -] -train_pipeline = [ - dict(type='LoadImageFromFile'), - dict( - type='RandAugment', - policies=policies, - num_policies=2, - magnitude_level=12), - dict( - type='RandomResizedCrop', - size=256, - efficientnet_style=True, - interpolation='bicubic', - backend='pillow'), - dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), - dict(type='ColorJitter', brightness=0.4, contrast=0.4, saturation=0.4), - dict(type='Lighting', **img_lighting_cfg), - dict( - type='Normalize', - mean=[123.675, 116.28, 103.53], - std=[58.395, 57.12, 57.375], - to_rgb=False), - dict(type='ImageToTensor', keys=['img']), - dict(type='ToTensor', keys=['gt_label']), - dict(type='Collect', keys=['img', 'gt_label']) -] -test_pipeline = [ - dict(type='LoadImageFromFile'), - dict( - type='CenterCrop', - crop_size=256, - efficientnet_style=True, - interpolation='bicubic', - backend='pillow'), - dict( - type='Normalize', - mean=[123.675, 116.28, 103.53], - std=[58.395, 57.12, 57.375], - to_rgb=True), - dict(type='ImageToTensor', keys=['img']), - dict(type='Collect', keys=['img']) -] -data = dict( - samples_per_gpu=64, - workers_per_gpu=2, - train=dict( - type=dataset_type, - data_prefix='data/imagenet/train', - pipeline=train_pipeline), - val=dict( - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline), - test=dict( - # replace `data/val` with `data/test` for standard test - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline)) -evaluation = dict(interval=1, metric='accuracy') - -# optimizer -optimizer = dict( - type='SGD', - lr=0.8, - momentum=0.9, - weight_decay=1e-4, - paramwise_cfg=dict(bias_decay_mult=0., norm_decay_mult=0.)) -optimizer_config = dict(grad_clip=None) - -# learning policy -lr_config = dict( - policy='CosineAnnealing', - min_lr=0, - warmup='linear', - warmup_iters=5, - warmup_ratio=1e-6, - warmup_by_epoch=True) -runner = dict(type='EpochBasedRunner', max_epochs=270) +_deprecation_ = dict( + expected='resnest101_32xb64_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnest/resnest200_64xb32_in1k.py b/configs/resnest/resnest200_64xb32_in1k.py new file mode 100644 index 00000000000..3b166a2d62d --- /dev/null +++ b/configs/resnest/resnest200_64xb32_in1k.py @@ -0,0 +1,181 @@ +_base_ = ['../_base_/models/resnest200.py', '../_base_/default_runtime.py'] + +# dataset settings +dataset_type = 'ImageNet' +img_lighting_cfg = dict( + eigval=[55.4625, 4.7940, 1.1475], + eigvec=[[-0.5675, 0.7192, 0.4009], [-0.5808, -0.0045, -0.8140], + [-0.5836, -0.6948, 0.4203]], + alphastd=0.1, + to_rgb=True) +policies = [ + dict(type='AutoContrast', prob=0.5), + dict(type='Equalize', prob=0.5), + dict(type='Invert', prob=0.5), + dict( + type='Rotate', + magnitude_key='angle', + magnitude_range=(0, 30), + pad_val=0, + prob=0.5, + random_negative_prob=0.5), + dict( + type='Posterize', + magnitude_key='bits', + magnitude_range=(0, 4), + prob=0.5), + dict( + type='Solarize', + magnitude_key='thr', + magnitude_range=(0, 256), + prob=0.5), + dict( + type='SolarizeAdd', + magnitude_key='magnitude', + magnitude_range=(0, 110), + thr=128, + prob=0.5), + dict( + type='ColorTransform', + magnitude_key='magnitude', + magnitude_range=(-0.9, 0.9), + prob=0.5, + random_negative_prob=0.), + dict( + type='Contrast', + magnitude_key='magnitude', + magnitude_range=(-0.9, 0.9), + prob=0.5, + random_negative_prob=0.), + dict( + type='Brightness', + magnitude_key='magnitude', + magnitude_range=(-0.9, 0.9), + prob=0.5, + random_negative_prob=0.), + dict( + type='Sharpness', + magnitude_key='magnitude', + magnitude_range=(-0.9, 0.9), + prob=0.5, + random_negative_prob=0.), + dict( + type='Shear', + magnitude_key='magnitude', + magnitude_range=(0, 0.3), + pad_val=0, + prob=0.5, + direction='horizontal', + random_negative_prob=0.5), + dict( + type='Shear', + magnitude_key='magnitude', + magnitude_range=(0, 0.3), + pad_val=0, + prob=0.5, + direction='vertical', + random_negative_prob=0.5), + dict( + type='Cutout', + magnitude_key='shape', + magnitude_range=(1, 41), + pad_val=0, + prob=0.5), + dict( + type='Translate', + magnitude_key='magnitude', + magnitude_range=(0, 0.3), + pad_val=0, + prob=0.5, + direction='horizontal', + random_negative_prob=0.5, + interpolation='bicubic'), + dict( + type='Translate', + magnitude_key='magnitude', + magnitude_range=(0, 0.3), + pad_val=0, + prob=0.5, + direction='vertical', + random_negative_prob=0.5, + interpolation='bicubic') +] +train_pipeline = [ + dict(type='LoadImageFromFile'), + dict( + type='RandAugment', + policies=policies, + num_policies=2, + magnitude_level=12), + dict( + type='RandomResizedCrop', + size=320, + efficientnet_style=True, + interpolation='bicubic', + backend='pillow'), + dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), + dict(type='ColorJitter', brightness=0.4, contrast=0.4, saturation=0.4), + dict(type='Lighting', **img_lighting_cfg), + dict( + type='Normalize', + mean=[123.675, 116.28, 103.53], + std=[58.395, 57.12, 57.375], + to_rgb=False), + dict(type='ImageToTensor', keys=['img']), + dict(type='ToTensor', keys=['gt_label']), + dict(type='Collect', keys=['img', 'gt_label']) +] +test_pipeline = [ + dict(type='LoadImageFromFile'), + dict( + type='CenterCrop', + crop_size=320, + efficientnet_style=True, + interpolation='bicubic', + backend='pillow'), + dict( + type='Normalize', + mean=[123.675, 116.28, 103.53], + std=[58.395, 57.12, 57.375], + to_rgb=True), + dict(type='ImageToTensor', keys=['img']), + dict(type='Collect', keys=['img']) +] +data = dict( + samples_per_gpu=32, + workers_per_gpu=2, + train=dict( + type=dataset_type, + data_prefix='data/imagenet/train', + pipeline=train_pipeline), + val=dict( + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline), + test=dict( + # replace `data/val` with `data/test` for standard test + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline)) +evaluation = dict(interval=1, metric='accuracy') + +# optimizer +optimizer = dict( + type='SGD', + lr=0.8, + momentum=0.9, + weight_decay=1e-4, + paramwise_cfg=dict(bias_decay_mult=0., norm_decay_mult=0.)) +optimizer_config = dict(grad_clip=None) + +# learning policy +lr_config = dict( + policy='CosineAnnealing', + min_lr=0, + warmup='linear', + warmup_iters=5, + warmup_ratio=1e-6, + warmup_by_epoch=True) +runner = dict(type='EpochBasedRunner', max_epochs=270) diff --git a/configs/resnest/resnest200_b32x64_imagenet.py b/configs/resnest/resnest200_b32x64_imagenet.py index 3b166a2d62d..8e62865f3f3 100644 --- a/configs/resnest/resnest200_b32x64_imagenet.py +++ b/configs/resnest/resnest200_b32x64_imagenet.py @@ -1,181 +1,6 @@ -_base_ = ['../_base_/models/resnest200.py', '../_base_/default_runtime.py'] +_base_ = 'resnest200_64xb32_in1k.py' -# dataset settings -dataset_type = 'ImageNet' -img_lighting_cfg = dict( - eigval=[55.4625, 4.7940, 1.1475], - eigvec=[[-0.5675, 0.7192, 0.4009], [-0.5808, -0.0045, -0.8140], - [-0.5836, -0.6948, 0.4203]], - alphastd=0.1, - to_rgb=True) -policies = [ - dict(type='AutoContrast', prob=0.5), - dict(type='Equalize', prob=0.5), - dict(type='Invert', prob=0.5), - dict( - type='Rotate', - magnitude_key='angle', - magnitude_range=(0, 30), - pad_val=0, - prob=0.5, - random_negative_prob=0.5), - dict( - type='Posterize', - magnitude_key='bits', - magnitude_range=(0, 4), - prob=0.5), - dict( - type='Solarize', - magnitude_key='thr', - magnitude_range=(0, 256), - prob=0.5), - dict( - type='SolarizeAdd', - magnitude_key='magnitude', - magnitude_range=(0, 110), - thr=128, - prob=0.5), - dict( - type='ColorTransform', - magnitude_key='magnitude', - magnitude_range=(-0.9, 0.9), - prob=0.5, - random_negative_prob=0.), - dict( - type='Contrast', - magnitude_key='magnitude', - magnitude_range=(-0.9, 0.9), - prob=0.5, - random_negative_prob=0.), - dict( - type='Brightness', - magnitude_key='magnitude', - magnitude_range=(-0.9, 0.9), - prob=0.5, - random_negative_prob=0.), - dict( - type='Sharpness', - magnitude_key='magnitude', - magnitude_range=(-0.9, 0.9), - prob=0.5, - random_negative_prob=0.), - dict( - type='Shear', - magnitude_key='magnitude', - magnitude_range=(0, 0.3), - pad_val=0, - prob=0.5, - direction='horizontal', - random_negative_prob=0.5), - dict( - type='Shear', - magnitude_key='magnitude', - magnitude_range=(0, 0.3), - pad_val=0, - prob=0.5, - direction='vertical', - random_negative_prob=0.5), - dict( - type='Cutout', - magnitude_key='shape', - magnitude_range=(1, 41), - pad_val=0, - prob=0.5), - dict( - type='Translate', - magnitude_key='magnitude', - magnitude_range=(0, 0.3), - pad_val=0, - prob=0.5, - direction='horizontal', - random_negative_prob=0.5, - interpolation='bicubic'), - dict( - type='Translate', - magnitude_key='magnitude', - magnitude_range=(0, 0.3), - pad_val=0, - prob=0.5, - direction='vertical', - random_negative_prob=0.5, - interpolation='bicubic') -] -train_pipeline = [ - dict(type='LoadImageFromFile'), - dict( - type='RandAugment', - policies=policies, - num_policies=2, - magnitude_level=12), - dict( - type='RandomResizedCrop', - size=320, - efficientnet_style=True, - interpolation='bicubic', - backend='pillow'), - dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), - dict(type='ColorJitter', brightness=0.4, contrast=0.4, saturation=0.4), - dict(type='Lighting', **img_lighting_cfg), - dict( - type='Normalize', - mean=[123.675, 116.28, 103.53], - std=[58.395, 57.12, 57.375], - to_rgb=False), - dict(type='ImageToTensor', keys=['img']), - dict(type='ToTensor', keys=['gt_label']), - dict(type='Collect', keys=['img', 'gt_label']) -] -test_pipeline = [ - dict(type='LoadImageFromFile'), - dict( - type='CenterCrop', - crop_size=320, - efficientnet_style=True, - interpolation='bicubic', - backend='pillow'), - dict( - type='Normalize', - mean=[123.675, 116.28, 103.53], - std=[58.395, 57.12, 57.375], - to_rgb=True), - dict(type='ImageToTensor', keys=['img']), - dict(type='Collect', keys=['img']) -] -data = dict( - samples_per_gpu=32, - workers_per_gpu=2, - train=dict( - type=dataset_type, - data_prefix='data/imagenet/train', - pipeline=train_pipeline), - val=dict( - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline), - test=dict( - # replace `data/val` with `data/test` for standard test - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline)) -evaluation = dict(interval=1, metric='accuracy') - -# optimizer -optimizer = dict( - type='SGD', - lr=0.8, - momentum=0.9, - weight_decay=1e-4, - paramwise_cfg=dict(bias_decay_mult=0., norm_decay_mult=0.)) -optimizer_config = dict(grad_clip=None) - -# learning policy -lr_config = dict( - policy='CosineAnnealing', - min_lr=0, - warmup='linear', - warmup_iters=5, - warmup_ratio=1e-6, - warmup_by_epoch=True) -runner = dict(type='EpochBasedRunner', max_epochs=270) +_deprecation_ = dict( + expected='resnest200_64xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnest/resnest269_64xb32_in1k.py b/configs/resnest/resnest269_64xb32_in1k.py new file mode 100644 index 00000000000..7a4db092a41 --- /dev/null +++ b/configs/resnest/resnest269_64xb32_in1k.py @@ -0,0 +1,181 @@ +_base_ = ['../_base_/models/resnest269.py', '../_base_/default_runtime.py'] + +# dataset settings +dataset_type = 'ImageNet' +img_lighting_cfg = dict( + eigval=[55.4625, 4.7940, 1.1475], + eigvec=[[-0.5675, 0.7192, 0.4009], [-0.5808, -0.0045, -0.8140], + [-0.5836, -0.6948, 0.4203]], + alphastd=0.1, + to_rgb=True) +policies = [ + dict(type='AutoContrast', prob=0.5), + dict(type='Equalize', prob=0.5), + dict(type='Invert', prob=0.5), + dict( + type='Rotate', + magnitude_key='angle', + magnitude_range=(0, 30), + pad_val=0, + prob=0.5, + random_negative_prob=0.5), + dict( + type='Posterize', + magnitude_key='bits', + magnitude_range=(0, 4), + prob=0.5), + dict( + type='Solarize', + magnitude_key='thr', + magnitude_range=(0, 256), + prob=0.5), + dict( + type='SolarizeAdd', + magnitude_key='magnitude', + magnitude_range=(0, 110), + thr=128, + prob=0.5), + dict( + type='ColorTransform', + magnitude_key='magnitude', + magnitude_range=(-0.9, 0.9), + prob=0.5, + random_negative_prob=0.), + dict( + type='Contrast', + magnitude_key='magnitude', + magnitude_range=(-0.9, 0.9), + prob=0.5, + random_negative_prob=0.), + dict( + type='Brightness', + magnitude_key='magnitude', + magnitude_range=(-0.9, 0.9), + prob=0.5, + random_negative_prob=0.), + dict( + type='Sharpness', + magnitude_key='magnitude', + magnitude_range=(-0.9, 0.9), + prob=0.5, + random_negative_prob=0.), + dict( + type='Shear', + magnitude_key='magnitude', + magnitude_range=(0, 0.3), + pad_val=0, + prob=0.5, + direction='horizontal', + random_negative_prob=0.5), + dict( + type='Shear', + magnitude_key='magnitude', + magnitude_range=(0, 0.3), + pad_val=0, + prob=0.5, + direction='vertical', + random_negative_prob=0.5), + dict( + type='Cutout', + magnitude_key='shape', + magnitude_range=(1, 41), + pad_val=0, + prob=0.5), + dict( + type='Translate', + magnitude_key='magnitude', + magnitude_range=(0, 0.3), + pad_val=0, + prob=0.5, + direction='horizontal', + random_negative_prob=0.5, + interpolation='bicubic'), + dict( + type='Translate', + magnitude_key='magnitude', + magnitude_range=(0, 0.3), + pad_val=0, + prob=0.5, + direction='vertical', + random_negative_prob=0.5, + interpolation='bicubic') +] +train_pipeline = [ + dict(type='LoadImageFromFile'), + dict( + type='RandAugment', + policies=policies, + num_policies=2, + magnitude_level=12), + dict( + type='RandomResizedCrop', + size=416, + efficientnet_style=True, + interpolation='bicubic', + backend='pillow'), + dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), + dict(type='ColorJitter', brightness=0.4, contrast=0.4, saturation=0.4), + dict(type='Lighting', **img_lighting_cfg), + dict( + type='Normalize', + mean=[123.675, 116.28, 103.53], + std=[58.395, 57.12, 57.375], + to_rgb=False), + dict(type='ImageToTensor', keys=['img']), + dict(type='ToTensor', keys=['gt_label']), + dict(type='Collect', keys=['img', 'gt_label']) +] +test_pipeline = [ + dict(type='LoadImageFromFile'), + dict( + type='CenterCrop', + crop_size=416, + efficientnet_style=True, + interpolation='bicubic', + backend='pillow'), + dict( + type='Normalize', + mean=[123.675, 116.28, 103.53], + std=[58.395, 57.12, 57.375], + to_rgb=True), + dict(type='ImageToTensor', keys=['img']), + dict(type='Collect', keys=['img']) +] +data = dict( + samples_per_gpu=32, + workers_per_gpu=2, + train=dict( + type=dataset_type, + data_prefix='data/imagenet/train', + pipeline=train_pipeline), + val=dict( + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline), + test=dict( + # replace `data/val` with `data/test` for standard test + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline)) +evaluation = dict(interval=1, metric='accuracy') + +# optimizer +optimizer = dict( + type='SGD', + lr=0.8, + momentum=0.9, + weight_decay=1e-4, + paramwise_cfg=dict(bias_decay_mult=0., norm_decay_mult=0.)) +optimizer_config = dict(grad_clip=None) + +# learning policy +lr_config = dict( + policy='CosineAnnealing', + min_lr=0, + warmup='linear', + warmup_iters=5, + warmup_ratio=1e-6, + warmup_by_epoch=True) +runner = dict(type='EpochBasedRunner', max_epochs=270) diff --git a/configs/resnest/resnest269_b32x64_imagenet.py b/configs/resnest/resnest269_b32x64_imagenet.py index 7a4db092a41..0f8b76c599b 100644 --- a/configs/resnest/resnest269_b32x64_imagenet.py +++ b/configs/resnest/resnest269_b32x64_imagenet.py @@ -1,181 +1,6 @@ -_base_ = ['../_base_/models/resnest269.py', '../_base_/default_runtime.py'] +_base_ = 'resnest269_64xb32_in1k.py' -# dataset settings -dataset_type = 'ImageNet' -img_lighting_cfg = dict( - eigval=[55.4625, 4.7940, 1.1475], - eigvec=[[-0.5675, 0.7192, 0.4009], [-0.5808, -0.0045, -0.8140], - [-0.5836, -0.6948, 0.4203]], - alphastd=0.1, - to_rgb=True) -policies = [ - dict(type='AutoContrast', prob=0.5), - dict(type='Equalize', prob=0.5), - dict(type='Invert', prob=0.5), - dict( - type='Rotate', - magnitude_key='angle', - magnitude_range=(0, 30), - pad_val=0, - prob=0.5, - random_negative_prob=0.5), - dict( - type='Posterize', - magnitude_key='bits', - magnitude_range=(0, 4), - prob=0.5), - dict( - type='Solarize', - magnitude_key='thr', - magnitude_range=(0, 256), - prob=0.5), - dict( - type='SolarizeAdd', - magnitude_key='magnitude', - magnitude_range=(0, 110), - thr=128, - prob=0.5), - dict( - type='ColorTransform', - magnitude_key='magnitude', - magnitude_range=(-0.9, 0.9), - prob=0.5, - random_negative_prob=0.), - dict( - type='Contrast', - magnitude_key='magnitude', - magnitude_range=(-0.9, 0.9), - prob=0.5, - random_negative_prob=0.), - dict( - type='Brightness', - magnitude_key='magnitude', - magnitude_range=(-0.9, 0.9), - prob=0.5, - random_negative_prob=0.), - dict( - type='Sharpness', - magnitude_key='magnitude', - magnitude_range=(-0.9, 0.9), - prob=0.5, - random_negative_prob=0.), - dict( - type='Shear', - magnitude_key='magnitude', - magnitude_range=(0, 0.3), - pad_val=0, - prob=0.5, - direction='horizontal', - random_negative_prob=0.5), - dict( - type='Shear', - magnitude_key='magnitude', - magnitude_range=(0, 0.3), - pad_val=0, - prob=0.5, - direction='vertical', - random_negative_prob=0.5), - dict( - type='Cutout', - magnitude_key='shape', - magnitude_range=(1, 41), - pad_val=0, - prob=0.5), - dict( - type='Translate', - magnitude_key='magnitude', - magnitude_range=(0, 0.3), - pad_val=0, - prob=0.5, - direction='horizontal', - random_negative_prob=0.5, - interpolation='bicubic'), - dict( - type='Translate', - magnitude_key='magnitude', - magnitude_range=(0, 0.3), - pad_val=0, - prob=0.5, - direction='vertical', - random_negative_prob=0.5, - interpolation='bicubic') -] -train_pipeline = [ - dict(type='LoadImageFromFile'), - dict( - type='RandAugment', - policies=policies, - num_policies=2, - magnitude_level=12), - dict( - type='RandomResizedCrop', - size=416, - efficientnet_style=True, - interpolation='bicubic', - backend='pillow'), - dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), - dict(type='ColorJitter', brightness=0.4, contrast=0.4, saturation=0.4), - dict(type='Lighting', **img_lighting_cfg), - dict( - type='Normalize', - mean=[123.675, 116.28, 103.53], - std=[58.395, 57.12, 57.375], - to_rgb=False), - dict(type='ImageToTensor', keys=['img']), - dict(type='ToTensor', keys=['gt_label']), - dict(type='Collect', keys=['img', 'gt_label']) -] -test_pipeline = [ - dict(type='LoadImageFromFile'), - dict( - type='CenterCrop', - crop_size=416, - efficientnet_style=True, - interpolation='bicubic', - backend='pillow'), - dict( - type='Normalize', - mean=[123.675, 116.28, 103.53], - std=[58.395, 57.12, 57.375], - to_rgb=True), - dict(type='ImageToTensor', keys=['img']), - dict(type='Collect', keys=['img']) -] -data = dict( - samples_per_gpu=32, - workers_per_gpu=2, - train=dict( - type=dataset_type, - data_prefix='data/imagenet/train', - pipeline=train_pipeline), - val=dict( - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline), - test=dict( - # replace `data/val` with `data/test` for standard test - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline)) -evaluation = dict(interval=1, metric='accuracy') - -# optimizer -optimizer = dict( - type='SGD', - lr=0.8, - momentum=0.9, - weight_decay=1e-4, - paramwise_cfg=dict(bias_decay_mult=0., norm_decay_mult=0.)) -optimizer_config = dict(grad_clip=None) - -# learning policy -lr_config = dict( - policy='CosineAnnealing', - min_lr=0, - warmup='linear', - warmup_iters=5, - warmup_ratio=1e-6, - warmup_by_epoch=True) -runner = dict(type='EpochBasedRunner', max_epochs=270) +_deprecation_ = dict( + expected='resnest269_64xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnest/resnest50_32xb64_in1k.py b/configs/resnest/resnest50_32xb64_in1k.py new file mode 100644 index 00000000000..812a3bee53d --- /dev/null +++ b/configs/resnest/resnest50_32xb64_in1k.py @@ -0,0 +1,181 @@ +_base_ = ['../_base_/models/resnest50.py', '../_base_/default_runtime.py'] + +# dataset settings +dataset_type = 'ImageNet' +img_lighting_cfg = dict( + eigval=[55.4625, 4.7940, 1.1475], + eigvec=[[-0.5675, 0.7192, 0.4009], [-0.5808, -0.0045, -0.8140], + [-0.5836, -0.6948, 0.4203]], + alphastd=0.1, + to_rgb=True) +policies = [ + dict(type='AutoContrast', prob=0.5), + dict(type='Equalize', prob=0.5), + dict(type='Invert', prob=0.5), + dict( + type='Rotate', + magnitude_key='angle', + magnitude_range=(0, 30), + pad_val=0, + prob=0.5, + random_negative_prob=0.5), + dict( + type='Posterize', + magnitude_key='bits', + magnitude_range=(0, 4), + prob=0.5), + dict( + type='Solarize', + magnitude_key='thr', + magnitude_range=(0, 256), + prob=0.5), + dict( + type='SolarizeAdd', + magnitude_key='magnitude', + magnitude_range=(0, 110), + thr=128, + prob=0.5), + dict( + type='ColorTransform', + magnitude_key='magnitude', + magnitude_range=(-0.9, 0.9), + prob=0.5, + random_negative_prob=0.), + dict( + type='Contrast', + magnitude_key='magnitude', + magnitude_range=(-0.9, 0.9), + prob=0.5, + random_negative_prob=0.), + dict( + type='Brightness', + magnitude_key='magnitude', + magnitude_range=(-0.9, 0.9), + prob=0.5, + random_negative_prob=0.), + dict( + type='Sharpness', + magnitude_key='magnitude', + magnitude_range=(-0.9, 0.9), + prob=0.5, + random_negative_prob=0.), + dict( + type='Shear', + magnitude_key='magnitude', + magnitude_range=(0, 0.3), + pad_val=0, + prob=0.5, + direction='horizontal', + random_negative_prob=0.5), + dict( + type='Shear', + magnitude_key='magnitude', + magnitude_range=(0, 0.3), + pad_val=0, + prob=0.5, + direction='vertical', + random_negative_prob=0.5), + dict( + type='Cutout', + magnitude_key='shape', + magnitude_range=(1, 41), + pad_val=0, + prob=0.5), + dict( + type='Translate', + magnitude_key='magnitude', + magnitude_range=(0, 0.3), + pad_val=0, + prob=0.5, + direction='horizontal', + random_negative_prob=0.5, + interpolation='bicubic'), + dict( + type='Translate', + magnitude_key='magnitude', + magnitude_range=(0, 0.3), + pad_val=0, + prob=0.5, + direction='vertical', + random_negative_prob=0.5, + interpolation='bicubic') +] +train_pipeline = [ + dict(type='LoadImageFromFile'), + dict( + type='RandAugment', + policies=policies, + num_policies=2, + magnitude_level=12), + dict( + type='RandomResizedCrop', + size=224, + efficientnet_style=True, + interpolation='bicubic', + backend='pillow'), + dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), + dict(type='ColorJitter', brightness=0.4, contrast=0.4, saturation=0.4), + dict(type='Lighting', **img_lighting_cfg), + dict( + type='Normalize', + mean=[123.675, 116.28, 103.53], + std=[58.395, 57.12, 57.375], + to_rgb=False), + dict(type='ImageToTensor', keys=['img']), + dict(type='ToTensor', keys=['gt_label']), + dict(type='Collect', keys=['img', 'gt_label']) +] +test_pipeline = [ + dict(type='LoadImageFromFile'), + dict( + type='CenterCrop', + crop_size=224, + efficientnet_style=True, + interpolation='bicubic', + backend='pillow'), + dict( + type='Normalize', + mean=[123.675, 116.28, 103.53], + std=[58.395, 57.12, 57.375], + to_rgb=True), + dict(type='ImageToTensor', keys=['img']), + dict(type='Collect', keys=['img']) +] +data = dict( + samples_per_gpu=64, + workers_per_gpu=2, + train=dict( + type=dataset_type, + data_prefix='data/imagenet/train', + pipeline=train_pipeline), + val=dict( + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline), + test=dict( + # replace `data/val` with `data/test` for standard test + type=dataset_type, + data_prefix='data/imagenet/val', + ann_file='data/imagenet/meta/val.txt', + pipeline=test_pipeline)) +evaluation = dict(interval=1, metric='accuracy') + +# optimizer +optimizer = dict( + type='SGD', + lr=0.8, + momentum=0.9, + weight_decay=1e-4, + paramwise_cfg=dict(bias_decay_mult=0., norm_decay_mult=0.)) +optimizer_config = dict(grad_clip=None) + +# learning policy +lr_config = dict( + policy='CosineAnnealing', + min_lr=0, + warmup='linear', + warmup_iters=5, + warmup_ratio=1e-6, + warmup_by_epoch=True) +runner = dict(type='EpochBasedRunner', max_epochs=270) diff --git a/configs/resnest/resnest50_b64x32_imagenet.py b/configs/resnest/resnest50_b64x32_imagenet.py index 812a3bee53d..c0da422a2df 100644 --- a/configs/resnest/resnest50_b64x32_imagenet.py +++ b/configs/resnest/resnest50_b64x32_imagenet.py @@ -1,181 +1,6 @@ -_base_ = ['../_base_/models/resnest50.py', '../_base_/default_runtime.py'] +_base_ = 'resnest50_32xb64_in1k.py' -# dataset settings -dataset_type = 'ImageNet' -img_lighting_cfg = dict( - eigval=[55.4625, 4.7940, 1.1475], - eigvec=[[-0.5675, 0.7192, 0.4009], [-0.5808, -0.0045, -0.8140], - [-0.5836, -0.6948, 0.4203]], - alphastd=0.1, - to_rgb=True) -policies = [ - dict(type='AutoContrast', prob=0.5), - dict(type='Equalize', prob=0.5), - dict(type='Invert', prob=0.5), - dict( - type='Rotate', - magnitude_key='angle', - magnitude_range=(0, 30), - pad_val=0, - prob=0.5, - random_negative_prob=0.5), - dict( - type='Posterize', - magnitude_key='bits', - magnitude_range=(0, 4), - prob=0.5), - dict( - type='Solarize', - magnitude_key='thr', - magnitude_range=(0, 256), - prob=0.5), - dict( - type='SolarizeAdd', - magnitude_key='magnitude', - magnitude_range=(0, 110), - thr=128, - prob=0.5), - dict( - type='ColorTransform', - magnitude_key='magnitude', - magnitude_range=(-0.9, 0.9), - prob=0.5, - random_negative_prob=0.), - dict( - type='Contrast', - magnitude_key='magnitude', - magnitude_range=(-0.9, 0.9), - prob=0.5, - random_negative_prob=0.), - dict( - type='Brightness', - magnitude_key='magnitude', - magnitude_range=(-0.9, 0.9), - prob=0.5, - random_negative_prob=0.), - dict( - type='Sharpness', - magnitude_key='magnitude', - magnitude_range=(-0.9, 0.9), - prob=0.5, - random_negative_prob=0.), - dict( - type='Shear', - magnitude_key='magnitude', - magnitude_range=(0, 0.3), - pad_val=0, - prob=0.5, - direction='horizontal', - random_negative_prob=0.5), - dict( - type='Shear', - magnitude_key='magnitude', - magnitude_range=(0, 0.3), - pad_val=0, - prob=0.5, - direction='vertical', - random_negative_prob=0.5), - dict( - type='Cutout', - magnitude_key='shape', - magnitude_range=(1, 41), - pad_val=0, - prob=0.5), - dict( - type='Translate', - magnitude_key='magnitude', - magnitude_range=(0, 0.3), - pad_val=0, - prob=0.5, - direction='horizontal', - random_negative_prob=0.5, - interpolation='bicubic'), - dict( - type='Translate', - magnitude_key='magnitude', - magnitude_range=(0, 0.3), - pad_val=0, - prob=0.5, - direction='vertical', - random_negative_prob=0.5, - interpolation='bicubic') -] -train_pipeline = [ - dict(type='LoadImageFromFile'), - dict( - type='RandAugment', - policies=policies, - num_policies=2, - magnitude_level=12), - dict( - type='RandomResizedCrop', - size=224, - efficientnet_style=True, - interpolation='bicubic', - backend='pillow'), - dict(type='RandomFlip', flip_prob=0.5, direction='horizontal'), - dict(type='ColorJitter', brightness=0.4, contrast=0.4, saturation=0.4), - dict(type='Lighting', **img_lighting_cfg), - dict( - type='Normalize', - mean=[123.675, 116.28, 103.53], - std=[58.395, 57.12, 57.375], - to_rgb=False), - dict(type='ImageToTensor', keys=['img']), - dict(type='ToTensor', keys=['gt_label']), - dict(type='Collect', keys=['img', 'gt_label']) -] -test_pipeline = [ - dict(type='LoadImageFromFile'), - dict( - type='CenterCrop', - crop_size=224, - efficientnet_style=True, - interpolation='bicubic', - backend='pillow'), - dict( - type='Normalize', - mean=[123.675, 116.28, 103.53], - std=[58.395, 57.12, 57.375], - to_rgb=True), - dict(type='ImageToTensor', keys=['img']), - dict(type='Collect', keys=['img']) -] -data = dict( - samples_per_gpu=64, - workers_per_gpu=2, - train=dict( - type=dataset_type, - data_prefix='data/imagenet/train', - pipeline=train_pipeline), - val=dict( - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline), - test=dict( - # replace `data/val` with `data/test` for standard test - type=dataset_type, - data_prefix='data/imagenet/val', - ann_file='data/imagenet/meta/val.txt', - pipeline=test_pipeline)) -evaluation = dict(interval=1, metric='accuracy') - -# optimizer -optimizer = dict( - type='SGD', - lr=0.8, - momentum=0.9, - weight_decay=1e-4, - paramwise_cfg=dict(bias_decay_mult=0., norm_decay_mult=0.)) -optimizer_config = dict(grad_clip=None) - -# learning policy -lr_config = dict( - policy='CosineAnnealing', - min_lr=0, - warmup='linear', - warmup_iters=5, - warmup_ratio=1e-6, - warmup_by_epoch=True) -runner = dict(type='EpochBasedRunner', max_epochs=270) +_deprecation_ = dict( + expected='resnest50_32xb64_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/README.md b/configs/resnet/README.md index 96cb7529146..ea82990b687 100644 --- a/configs/resnet/README.md +++ b/configs/resnet/README.md @@ -21,27 +21,28 @@ | Model | Params(M) | Flops(G) | Top-1 (%) | Top-5 (%) | Config | Download | |:---------------------:|:---------:|:--------:|:---------:|:---------:|:---------:|:--------:| -| ResNet-18-b16x8 | 11.17 | 0.56 | 94.82 | 99.87 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet18_b16x8_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_b16x8_cifar10_20210528-bd6371c8.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_b16x8_cifar10_20210528-bd6371c8.log.json) | -| ResNet-34-b16x8 | 21.28 | 1.16 | 95.34 | 99.87 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet34_b16x8_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_b16x8_cifar10_20210528-a8aa36a6.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_b16x8_cifar10_20210528-a8aa36a6.log.json) | -| ResNet-50-b16x8 | 23.52 | 1.31 | 95.55 | 99.91 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet50_b16x8_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_b16x8_cifar10_20210528-f54bfad9.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_b16x8_cifar10_20210528-f54bfad9.log.json) | -| ResNet-101-b16x8 | 42.51 | 2.52 | 95.58 | 99.87 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet101_b16x8_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet101_b16x8_cifar10_20210528-2d29e936.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet101_b16x8_cifar10_20210528-2d29e936.log.json) | -| ResNet-152-b16x8 | 58.16 | 3.74 | 95.76 | 99.89 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet152_b16x8_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet152_b16x8_cifar10_20210528-3e8e9178.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet152_b16x8_cifar10_20210528-3e8e9178.log.json) | +| ResNet-18-b16x8 | 11.17 | 0.56 | 94.82 | 99.87 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet18_8xb16_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_b16x8_cifar10_20210528-bd6371c8.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_b16x8_cifar10_20210528-bd6371c8.log.json) | +| ResNet-34-b16x8 | 21.28 | 1.16 | 95.34 | 99.87 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet34_8xb16_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_b16x8_cifar10_20210528-a8aa36a6.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_b16x8_cifar10_20210528-a8aa36a6.log.json) | +| ResNet-50-b16x8 | 23.52 | 1.31 | 95.55 | 99.91 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet50_8xb16_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_b16x8_cifar10_20210528-f54bfad9.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_b16x8_cifar10_20210528-f54bfad9.log.json) | +| ResNet-101-b16x8 | 42.51 | 2.52 | 95.58 | 99.87 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet101_8xb16_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet101_b16x8_cifar10_20210528-2d29e936.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet101_b16x8_cifar10_20210528-2d29e936.log.json) | +| ResNet-152-b16x8 | 58.16 | 3.74 | 95.76 | 99.89 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet152_8xb16_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet152_b16x8_cifar10_20210528-3e8e9178.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet152_b16x8_cifar10_20210528-3e8e9178.log.json) | ## Cifar100 | Model | Params(M) | Flops(G) | Top-1 (%) | Top-5 (%) | Config | Download | |:---------------------:|:---------:|:--------:|:---------:|:---------:|:---------:|:--------:| -| ResNet-50-b16x8 | 23.71 | 1.31 | 79.90 | 95.19 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet50_b16x8_cifar100.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_b16x8_cifar100_20210528-67b58a1b.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_b16x8_cifar100_20210528-67b58a1b.log.json) | +| ResNet-50-b16x8 | 23.71 | 1.31 | 79.90 | 95.19 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet50_8xb16_cifar100.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_b16x8_cifar100_20210528-67b58a1b.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_b16x8_cifar100_20210528-67b58a1b.log.json) | ### ImageNet | Model | Params(M) | Flops(G) | Top-1 (%) | Top-5 (%) | Config | Download | |:---------------------:|:---------:|:--------:|:---------:|:---------:|:---------:|:--------:| -| ResNet-18 | 11.69 | 1.82 | 69.90 | 89.43 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet18_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_8xb32_in1k_20210831-fbbb1da6.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_8xb32_in1k_20210831-fbbb1da6.log.json) | -| ResNet-34 | 21.8 | 3.68 | 73.62 | 91.59 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet34_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_8xb32_in1k_20210831-f257d4e6.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_8xb32_in1k_20210831-f257d4e6.log.json) | -| ResNet-50 | 25.56 | 4.12 | 76.55 | 93.06 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet50_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_8xb32_in1k_20210831-ea4938fc.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_8xb32_in1k_20210831-ea4938fc.log.json) | -| ResNet-101 | 44.55 | 7.85 | 77.97 | 94.06 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet101_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet101_8xb32_in1k_20210831-539c63f8.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet101_8xb32_in1k_20210831-539c63f8.log.json) | -| ResNet-152 | 60.19 | 11.58 | 78.48 | 94.13 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet152_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet152_8xb32_in1k_20210901-4d7582fa.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet152_8xb32_in1k_20210901-4d7582fa.log.json) | -| ResNetV1D-50 | 25.58 | 4.36 | 77.54 | 93.57 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnetv1d50_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d50_b32x8_imagenet_20210531-db14775a.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d50_b32x8_imagenet_20210531-db14775a.log.json) | -| ResNetV1D-101 | 44.57 | 8.09 | 78.93 | 94.48 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnetv1d101_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d101_b32x8_imagenet_20210531-6e13bcd3.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d101_b32x8_imagenet_20210531-6e13bcd3.log.json) | -| ResNetV1D-152 | 60.21 | 11.82 | 79.41 | 94.70 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnetv1d152_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d152_b32x8_imagenet_20210531-278cf22a.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d152_b32x8_imagenet_20210531-278cf22a.log.json) | +| ResNet-18 | 11.69 | 1.82 | 69.90 | 89.43 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet18_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_8xb32_in1k_20210831-fbbb1da6.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_8xb32_in1k_20210831-fbbb1da6.log.json) | +| ResNet-34 | 21.8 | 3.68 | 73.62 | 91.59 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet34_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_8xb32_in1k_20210831-f257d4e6.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_8xb32_in1k_20210831-f257d4e6.log.json) | +| ResNet-50 | 25.56 | 4.12 | 76.55 | 93.06 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet50_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_8xb32_in1k_20210831-ea4938fc.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_8xb32_in1k_20210831-ea4938fc.log.json) | +| ResNet-101 | 44.55 | 7.85 | 77.97 | 94.06 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet101_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet101_8xb32_in1k_20210831-539c63f8.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet101_8xb32_in1k_20210831-539c63f8.log.json) | +| ResNet-152 | 60.19 | 11.58 | 78.48 | 94.13 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet152_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet152_8xb32_in1k_20210901-4d7582fa.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet152_8xb32_in1k_20210901-4d7582fa.log.json) | +| ResNetV1D-50 | 25.58 | 4.36 | 77.54 | 93.57 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnetv1d50_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d50_b32x8_imagenet_20210531-db14775a.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d50_b32x8_imagenet_20210531-db14775a.log.json) | +| ResNetV1D-101 | 44.57 | 8.09 | 78.93 | 94.48 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnetv1d101_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d101_b32x8_imagenet_20210531-6e13bcd3.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d101_b32x8_imagenet_20210531-6e13bcd3.log.json) | +| ResNetV1D-152 | 60.21 | 11.82 | 79.41 | 94.70 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnetv1d152_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d152_b32x8_imagenet_20210531-278cf22a.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d152_b32x8_imagenet_20210531-278cf22a.log.json) | +| ResNet-50 (fp16) | 25.56 | 4.12 | 76.30 | 93.07 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet50_8xb32-fp16_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/fp16/resnet50_batch256_fp16_imagenet_20210320-b3964210.pth) | [log](https://download.openmmlab.com/mmclassification/v0/fp16/resnet50_batch256_fp16_imagenet_20210320-b3964210.log.json) | diff --git a/configs/resnet/metafile.yml b/configs/resnet/metafile.yml index 8353014dbd3..5fdc0ada208 100644 --- a/configs/resnet/metafile.yml +++ b/configs/resnet/metafile.yml @@ -37,7 +37,7 @@ Collections: Version: v0.15.0 Models: - - Name: resnet18_b16x8_cifar10 + - Name: resnet18_8xb16_cifar10 Metadata: FLOPs: 560000000 Parameters: 11170000 @@ -48,8 +48,8 @@ Models: Top 1 Accuracy: 94.82 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_b16x8_cifar10_20210528-bd6371c8.pth - Config: configs/resnet/resnet18_b16x8_cifar10.py - - Name: resnet34_b16x8_cifar10 + Config: configs/resnet/resnet18_8xb16_cifar10.py + - Name: resnet34_8xb16_cifar10 Metadata: FLOPs: 1160000000 Parameters: 21280000 @@ -60,8 +60,8 @@ Models: Top 1 Accuracy: 95.34 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_b16x8_cifar10_20210528-a8aa36a6.pth - Config: configs/resnet/resnet34_b16x8_cifar10.py - - Name: resnet50_b16x8_cifar10 + Config: configs/resnet/resnet34_8xb16_cifar10.py + - Name: resnet50_8xb16_cifar10 Metadata: FLOPs: 1310000000 Parameters: 23520000 @@ -72,8 +72,8 @@ Models: Top 1 Accuracy: 95.55 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_b16x8_cifar10_20210528-f54bfad9.pth - Config: configs/resnet/resnet50_b16x8_cifar10.py - - Name: resnet101_b16x8_cifar10 + Config: configs/resnet/resnet50_8xb16_cifar10.py + - Name: resnet101_8xb16_cifar10 Metadata: FLOPs: 2520000000 Parameters: 42510000 @@ -84,8 +84,8 @@ Models: Top 1 Accuracy: 95.58 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/resnet/resnet101_b16x8_cifar10_20210528-2d29e936.pth - Config: configs/resnet/resnet101_b16x8_cifar10.py - - Name: resnet152_b16x8_cifar10 + Config: configs/resnet/resnet101_8xb16_cifar10.py + - Name: resnet152_8xb16_cifar10 Metadata: FLOPs: 3740000000 Parameters: 58160000 @@ -96,8 +96,8 @@ Models: Top 1 Accuracy: 95.76 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/resnet/resnet152_b16x8_cifar10_20210528-3e8e9178.pth - Config: configs/resnet/resnet152_b16x8_cifar10.py - - Name: resnet50_b16x8_cifar100 + Config: configs/resnet/resnet152_8xb16_cifar10.py + - Name: resnet50_8xb16_cifar100 Metadata: FLOPs: 1310000000 Parameters: 23710000 @@ -110,8 +110,8 @@ Models: Top 5 Accuracy: 95.19 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_b16x8_cifar100_20210528-67b58a1b.pth - Config: configs/resnet/resnet50_b16x8_cifar100.py - - Name: resnet18_b32x8_imagenet + Config: configs/resnet/resnet50_8xb16_cifar100.py + - Name: resnet18_8xb32_in1k Metadata: FLOPs: 1820000000 Parameters: 11690000 @@ -123,8 +123,8 @@ Models: Top 5 Accuracy: 89.43 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_8xb32_in1k_20210831-fbbb1da6.pth - Config: configs/resnet/resnet18_b32x8_imagenet.py - - Name: resnet34_b32x8_imagenet + Config: configs/resnet/resnet18_8xb32_in1k.py + - Name: resnet34_8xb32_in1k Metadata: FLOPs: 3680000000 Parameters: 2180000 @@ -136,8 +136,8 @@ Models: Top 5 Accuracy: 91.59 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_8xb32_in1k_20210831-f257d4e6.pth - Config: configs/resnet/resnet34_b32x8_imagenet.py - - Name: resnet50_b32x8_imagenet + Config: configs/resnet/resnet34_8xb32_in1k.py + - Name: resnet50_8xb32_in1k Metadata: FLOPs: 4120000000 Parameters: 25560000 @@ -149,8 +149,8 @@ Models: Top 5 Accuracy: 93.06 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_8xb32_in1k_20210831-ea4938fc.pth - Config: configs/resnet/resnet50_b32x8_imagenet.py - - Name: resnet101_b32x8_imagenet + Config: configs/resnet/resnet50_8xb32_in1k.py + - Name: resnet101_8xb32_in1k Metadata: FLOPs: 7850000000 Parameters: 44550000 @@ -162,8 +162,8 @@ Models: Top 5 Accuracy: 94.06 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/resnet/resnet101_8xb32_in1k_20210831-539c63f8.pth - Config: configs/resnet/resnet101_b32x8_imagenet.py - - Name: resnet152_b32x8_imagenet + Config: configs/resnet/resnet101_8xb32_in1k.py + - Name: resnet152_8xb32_in1k Metadata: FLOPs: 11580000000 Parameters: 60190000 @@ -175,8 +175,8 @@ Models: Top 5 Accuracy: 94.13 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/resnet/resnet152_8xb32_in1k_20210901-4d7582fa.pth - Config: configs/resnet/resnet152_b32x8_imagenet.py - - Name: resnetv1d50_b32x8_imagenet + Config: configs/resnet/resnet152_8xb32_in1k.py + - Name: resnetv1d50_8xb32_in1k Metadata: FLOPs: 4360000000 Parameters: 25580000 @@ -188,8 +188,8 @@ Models: Top 5 Accuracy: 93.57 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d50_b32x8_imagenet_20210531-db14775a.pth - Config: configs/resnet/resnetv1d50_b32x8_imagenet.py - - Name: resnetv1d101_b32x8_imagenet + Config: configs/resnet/resnetv1d50_8xb32_in1k.py + - Name: resnetv1d101_8xb32_in1k Metadata: FLOPs: 8090000000 Parameters: 44570000 @@ -201,8 +201,8 @@ Models: Top 5 Accuracy: 94.48 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d101_b32x8_imagenet_20210531-6e13bcd3.pth - Config: configs/resnet/resnetv1d101_b32x8_imagenet.py - - Name: resnetv1d152_b32x8_imagenet + Config: configs/resnet/resnetv1d101_8xb32_in1k.py + - Name: resnetv1d152_8xb32_in1k Metadata: FLOPs: 11820000000 Parameters: 60210000 @@ -214,4 +214,21 @@ Models: Top 5 Accuracy: 94.70 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d152_b32x8_imagenet_20210531-278cf22a.pth - Config: configs/resnet/resnetv1d152_b32x8_imagenet.py + Config: configs/resnet/resnetv1d152_8xb32_in1k.py + - Name: resnet50_8xb32-fp16_in1k + Metadata: + FLOPs: 4120000000 + Parameters: 25560000 + Training Techniques: + - SGD with Momentum + - Weight Decay + - Mixed Precision Training + In Collection: ResNet + Results: + - Task: Image Classification + Dataset: ImageNet-1k + Metrics: + Top 1 Accuracy: 76.30 + Top 5 Accuracy: 93.07 + Weights: https://download.openmmlab.com/mmclassification/v0/fp16/resnet50_batch256_fp16_imagenet_20210320-b3964210.pth + Config: configs/resnet/resnet50_8xb32-fp16_in1k.py diff --git a/configs/resnet/resnet101_8xb16_cifar10.py b/configs/resnet/resnet101_8xb16_cifar10.py new file mode 100644 index 00000000000..166a1740b09 --- /dev/null +++ b/configs/resnet/resnet101_8xb16_cifar10.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/resnet101_cifar.py', + '../_base_/datasets/cifar10_bs16.py', + '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnet101_8xb32_in1k.py b/configs/resnet/resnet101_8xb32_in1k.py new file mode 100644 index 00000000000..388d2cd918a --- /dev/null +++ b/configs/resnet/resnet101_8xb32_in1k.py @@ -0,0 +1,4 @@ +_base_ = [ + '../_base_/models/resnet101.py', '../_base_/datasets/imagenet_bs32.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnet101_b16x8_cifar10.py b/configs/resnet/resnet101_b16x8_cifar10.py index 166a1740b09..57758f2d335 100644 --- a/configs/resnet/resnet101_b16x8_cifar10.py +++ b/configs/resnet/resnet101_b16x8_cifar10.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/resnet101_cifar.py', - '../_base_/datasets/cifar10_bs16.py', - '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' -] +_base_ = 'resnet101_8xb16_cifar10.py' + +_deprecation_ = dict( + expected='resnet101_8xb16_cifar10.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnet101_b32x8_imagenet.py b/configs/resnet/resnet101_b32x8_imagenet.py index 388d2cd918a..8d45adc3287 100644 --- a/configs/resnet/resnet101_b32x8_imagenet.py +++ b/configs/resnet/resnet101_b32x8_imagenet.py @@ -1,4 +1,6 @@ -_base_ = [ - '../_base_/models/resnet101.py', '../_base_/datasets/imagenet_bs32.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'resnet101_8xb32_in1k.py' + +_deprecation_ = dict( + expected='resnet101_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnet152_8xb16_cifar10.py b/configs/resnet/resnet152_8xb16_cifar10.py new file mode 100644 index 00000000000..3f307b6aa81 --- /dev/null +++ b/configs/resnet/resnet152_8xb16_cifar10.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/resnet152_cifar.py', + '../_base_/datasets/cifar10_bs16.py', + '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnet152_8xb32_in1k.py b/configs/resnet/resnet152_8xb32_in1k.py new file mode 100644 index 00000000000..cc9dc2cee4a --- /dev/null +++ b/configs/resnet/resnet152_8xb32_in1k.py @@ -0,0 +1,4 @@ +_base_ = [ + '../_base_/models/resnet152.py', '../_base_/datasets/imagenet_bs32.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnet152_b16x8_cifar10.py b/configs/resnet/resnet152_b16x8_cifar10.py index 3f307b6aa81..5c76cac6682 100644 --- a/configs/resnet/resnet152_b16x8_cifar10.py +++ b/configs/resnet/resnet152_b16x8_cifar10.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/resnet152_cifar.py', - '../_base_/datasets/cifar10_bs16.py', - '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' -] +_base_ = 'resnet152_8xb16_cifar10.py' + +_deprecation_ = dict( + expected='resnet152_8xb16_cifar10.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnet152_b32x8_imagenet.py b/configs/resnet/resnet152_b32x8_imagenet.py index cc9dc2cee4a..133638a471c 100644 --- a/configs/resnet/resnet152_b32x8_imagenet.py +++ b/configs/resnet/resnet152_b32x8_imagenet.py @@ -1,4 +1,6 @@ -_base_ = [ - '../_base_/models/resnet152.py', '../_base_/datasets/imagenet_bs32.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'resnet152_8xb32_in1k.py' + +_deprecation_ = dict( + expected='resnet152_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnet18_8xb16_cifar10.py b/configs/resnet/resnet18_8xb16_cifar10.py new file mode 100644 index 00000000000..c7afa397b7b --- /dev/null +++ b/configs/resnet/resnet18_8xb16_cifar10.py @@ -0,0 +1,4 @@ +_base_ = [ + '../_base_/models/resnet18_cifar.py', '../_base_/datasets/cifar10_bs16.py', + '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnet18_8xb32_in1k.py b/configs/resnet/resnet18_8xb32_in1k.py new file mode 100644 index 00000000000..ac452ff7560 --- /dev/null +++ b/configs/resnet/resnet18_8xb32_in1k.py @@ -0,0 +1,4 @@ +_base_ = [ + '../_base_/models/resnet18.py', '../_base_/datasets/imagenet_bs32.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnet18_b16x8_cifar10.py b/configs/resnet/resnet18_b16x8_cifar10.py index c7afa397b7b..5a25a0e43ab 100644 --- a/configs/resnet/resnet18_b16x8_cifar10.py +++ b/configs/resnet/resnet18_b16x8_cifar10.py @@ -1,4 +1,6 @@ -_base_ = [ - '../_base_/models/resnet18_cifar.py', '../_base_/datasets/cifar10_bs16.py', - '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' -] +_base_ = 'resnet18_8xb16_cifar10.py' + +_deprecation_ = dict( + expected='resnet18_8xb16_cifar10.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnet18_b32x8_imagenet.py b/configs/resnet/resnet18_b32x8_imagenet.py index ac452ff7560..e6d08f60909 100644 --- a/configs/resnet/resnet18_b32x8_imagenet.py +++ b/configs/resnet/resnet18_b32x8_imagenet.py @@ -1,4 +1,6 @@ -_base_ = [ - '../_base_/models/resnet18.py', '../_base_/datasets/imagenet_bs32.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'resnet18_8xb32_in1k.py' + +_deprecation_ = dict( + expected='resnet18_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnet34_8xb16_cifar10.py b/configs/resnet/resnet34_8xb16_cifar10.py new file mode 100644 index 00000000000..7f5cd517d50 --- /dev/null +++ b/configs/resnet/resnet34_8xb16_cifar10.py @@ -0,0 +1,4 @@ +_base_ = [ + '../_base_/models/resnet34_cifar.py', '../_base_/datasets/cifar10_bs16.py', + '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnet34_8xb32_in1k.py b/configs/resnet/resnet34_8xb32_in1k.py new file mode 100644 index 00000000000..7749261c80d --- /dev/null +++ b/configs/resnet/resnet34_8xb32_in1k.py @@ -0,0 +1,4 @@ +_base_ = [ + '../_base_/models/resnet34.py', '../_base_/datasets/imagenet_bs32.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnet34_b16x8_cifar10.py b/configs/resnet/resnet34_b16x8_cifar10.py index 7f5cd517d50..eec98b2a75e 100644 --- a/configs/resnet/resnet34_b16x8_cifar10.py +++ b/configs/resnet/resnet34_b16x8_cifar10.py @@ -1,4 +1,6 @@ -_base_ = [ - '../_base_/models/resnet34_cifar.py', '../_base_/datasets/cifar10_bs16.py', - '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' -] +_base_ = 'resnet34_8xb16_cifar10.py' + +_deprecation_ = dict( + expected='resnet34_8xb16_cifar10.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnet34_b32x8_imagenet.py b/configs/resnet/resnet34_b32x8_imagenet.py index 7749261c80d..144613a3a7a 100644 --- a/configs/resnet/resnet34_b32x8_imagenet.py +++ b/configs/resnet/resnet34_b32x8_imagenet.py @@ -1,4 +1,6 @@ -_base_ = [ - '../_base_/models/resnet34.py', '../_base_/datasets/imagenet_bs32.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'resnet34_8xb32_in1k.py' + +_deprecation_ = dict( + expected='resnet34_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnet50_32xb64-warmup-coslr_in1k.py b/configs/resnet/resnet50_32xb64-warmup-coslr_in1k.py new file mode 100644 index 00000000000..c26245ef53a --- /dev/null +++ b/configs/resnet/resnet50_32xb64-warmup-coslr_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs64.py', + '../_base_/schedules/imagenet_bs2048_coslr.py', + '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnet50_32xb64-warmup-lbs_in1k.py b/configs/resnet/resnet50_32xb64-warmup-lbs_in1k.py new file mode 100644 index 00000000000..2f24f9a0f2c --- /dev/null +++ b/configs/resnet/resnet50_32xb64-warmup-lbs_in1k.py @@ -0,0 +1,12 @@ +_base_ = ['./resnet50_32xb64-warmup_in1k.py'] +model = dict( + head=dict( + type='LinearClsHead', + num_classes=1000, + in_channels=2048, + loss=dict( + type='LabelSmoothLoss', + loss_weight=1.0, + label_smooth_val=0.1, + num_classes=1000), + )) diff --git a/configs/resnet/resnet50_32xb64-warmup_in1k.py b/configs/resnet/resnet50_32xb64-warmup_in1k.py new file mode 100644 index 00000000000..34d5288b9d3 --- /dev/null +++ b/configs/resnet/resnet50_32xb64-warmup_in1k.py @@ -0,0 +1,4 @@ +_base_ = [ + '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs64.py', + '../_base_/schedules/imagenet_bs2048.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnet50_8xb16-mixup_cifar10.py b/configs/resnet/resnet50_8xb16-mixup_cifar10.py new file mode 100644 index 00000000000..2420ebfeb0a --- /dev/null +++ b/configs/resnet/resnet50_8xb16-mixup_cifar10.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/resnet50_cifar_mixup.py', + '../_base_/datasets/cifar10_bs16.py', + '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnet50_8xb16_cifar10.py b/configs/resnet/resnet50_8xb16_cifar10.py new file mode 100644 index 00000000000..669e5de27e5 --- /dev/null +++ b/configs/resnet/resnet50_8xb16_cifar10.py @@ -0,0 +1,4 @@ +_base_ = [ + '../_base_/models/resnet50_cifar.py', '../_base_/datasets/cifar10_bs16.py', + '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnet50_8xb16_cifar100.py b/configs/resnet/resnet50_8xb16_cifar100.py new file mode 100644 index 00000000000..39bd90f7949 --- /dev/null +++ b/configs/resnet/resnet50_8xb16_cifar100.py @@ -0,0 +1,10 @@ +_base_ = [ + '../_base_/models/resnet50_cifar.py', + '../_base_/datasets/cifar100_bs16.py', + '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' +] + +model = dict(head=dict(num_classes=100)) + +optimizer = dict(type='SGD', lr=0.1, momentum=0.9, weight_decay=0.0005) +lr_config = dict(policy='step', step=[60, 120, 160], gamma=0.2) diff --git a/configs/resnet/resnet50_8xb32-coslr_in1k.py b/configs/resnet/resnet50_8xb32-coslr_in1k.py new file mode 100644 index 00000000000..938a114b796 --- /dev/null +++ b/configs/resnet/resnet50_8xb32-coslr_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs32.py', + '../_base_/schedules/imagenet_bs256_coslr.py', + '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnet50_8xb32-cutmix_in1k.py b/configs/resnet/resnet50_8xb32-cutmix_in1k.py new file mode 100644 index 00000000000..2f8d0ca9f3a --- /dev/null +++ b/configs/resnet/resnet50_8xb32-cutmix_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/resnet50_cutmix.py', + '../_base_/datasets/imagenet_bs32.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnet50_8xb32-fp16-dynamic_in1k.py b/configs/resnet/resnet50_8xb32-fp16-dynamic_in1k.py new file mode 100644 index 00000000000..7a6c93c3efb --- /dev/null +++ b/configs/resnet/resnet50_8xb32-fp16-dynamic_in1k.py @@ -0,0 +1,4 @@ +_base_ = ['./resnet50_8xb32_in1k.py'] + +# fp16 settings +fp16 = dict(loss_scale='dynamic') diff --git a/configs/resnet/resnet50_8xb32-fp16_in1k.py b/configs/resnet/resnet50_8xb32-fp16_in1k.py new file mode 100644 index 00000000000..4245d198b98 --- /dev/null +++ b/configs/resnet/resnet50_8xb32-fp16_in1k.py @@ -0,0 +1,4 @@ +_base_ = ['./resnet50_8xb32_in1k.py'] + +# fp16 settings +fp16 = dict(loss_scale=512.) diff --git a/configs/resnet/resnet50_8xb32-lbs_in1k.py b/configs/resnet/resnet50_8xb32-lbs_in1k.py new file mode 100644 index 00000000000..1c1aa5a2c4e --- /dev/null +++ b/configs/resnet/resnet50_8xb32-lbs_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/resnet50_label_smooth.py', + '../_base_/datasets/imagenet_bs32.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnet50_8xb32-mixup_in1k.py b/configs/resnet/resnet50_8xb32-mixup_in1k.py new file mode 100644 index 00000000000..2a153d0e18f --- /dev/null +++ b/configs/resnet/resnet50_8xb32-mixup_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/resnet50_mixup.py', + '../_base_/datasets/imagenet_bs32.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnet50_8xb32_in1k.py b/configs/resnet/resnet50_8xb32_in1k.py new file mode 100644 index 00000000000..c32f333b67c --- /dev/null +++ b/configs/resnet/resnet50_8xb32_in1k.py @@ -0,0 +1,4 @@ +_base_ = [ + '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs32.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnet50_b16x8_cifar10.py b/configs/resnet/resnet50_b16x8_cifar10.py index 669e5de27e5..e40d1ee3ae0 100644 --- a/configs/resnet/resnet50_b16x8_cifar10.py +++ b/configs/resnet/resnet50_b16x8_cifar10.py @@ -1,4 +1,6 @@ -_base_ = [ - '../_base_/models/resnet50_cifar.py', '../_base_/datasets/cifar10_bs16.py', - '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' -] +_base_ = 'resnet50_8xb16_cifar10.py' + +_deprecation_ = dict( + expected='resnet50_8xb16_cifar10.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnet50_b16x8_cifar100.py b/configs/resnet/resnet50_b16x8_cifar100.py index 39bd90f7949..b49b6f45875 100644 --- a/configs/resnet/resnet50_b16x8_cifar100.py +++ b/configs/resnet/resnet50_b16x8_cifar100.py @@ -1,10 +1,6 @@ -_base_ = [ - '../_base_/models/resnet50_cifar.py', - '../_base_/datasets/cifar100_bs16.py', - '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' -] +_base_ = 'resnet50_8xb16_cifar100.py' -model = dict(head=dict(num_classes=100)) - -optimizer = dict(type='SGD', lr=0.1, momentum=0.9, weight_decay=0.0005) -lr_config = dict(policy='step', step=[60, 120, 160], gamma=0.2) +_deprecation_ = dict( + expected='resnet50_8xb16_cifar100.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnet50_b16x8_cifar10_mixup.py b/configs/resnet/resnet50_b16x8_cifar10_mixup.py index 2420ebfeb0a..409a40e91de 100644 --- a/configs/resnet/resnet50_b16x8_cifar10_mixup.py +++ b/configs/resnet/resnet50_b16x8_cifar10_mixup.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/resnet50_cifar_mixup.py', - '../_base_/datasets/cifar10_bs16.py', - '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' -] +_base_ = 'resnet50_8xb16-mixup_cifar10.py' + +_deprecation_ = dict( + expected='resnet50_8xb16-mixup_cifar10.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnet50_b32x8_coslr_imagenet.py b/configs/resnet/resnet50_b32x8_coslr_imagenet.py index 938a114b796..647153b48da 100644 --- a/configs/resnet/resnet50_b32x8_coslr_imagenet.py +++ b/configs/resnet/resnet50_b32x8_coslr_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs32.py', - '../_base_/schedules/imagenet_bs256_coslr.py', - '../_base_/default_runtime.py' -] +_base_ = 'resnet50_8xb32-coslr_in1k.py' + +_deprecation_ = dict( + expected='resnet50_8xb32-coslr_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnet50_b32x8_cutmix_imagenet.py b/configs/resnet/resnet50_b32x8_cutmix_imagenet.py index 2f8d0ca9f3a..87b27d5a954 100644 --- a/configs/resnet/resnet50_b32x8_cutmix_imagenet.py +++ b/configs/resnet/resnet50_b32x8_cutmix_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/resnet50_cutmix.py', - '../_base_/datasets/imagenet_bs32.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'resnet50_8xb32-cutmix_in1k.py' + +_deprecation_ = dict( + expected='resnet50_8xb32-cutmix_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnet50_b32x8_imagenet.py b/configs/resnet/resnet50_b32x8_imagenet.py index c32f333b67c..7d7f69ec3de 100644 --- a/configs/resnet/resnet50_b32x8_imagenet.py +++ b/configs/resnet/resnet50_b32x8_imagenet.py @@ -1,4 +1,6 @@ -_base_ = [ - '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs32.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'resnet50_8xb32_in1k.py' + +_deprecation_ = dict( + expected='resnet50_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnet50_b32x8_label_smooth_imagenet.py b/configs/resnet/resnet50_b32x8_label_smooth_imagenet.py index 1c1aa5a2c4e..6e874155b48 100644 --- a/configs/resnet/resnet50_b32x8_label_smooth_imagenet.py +++ b/configs/resnet/resnet50_b32x8_label_smooth_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/resnet50_label_smooth.py', - '../_base_/datasets/imagenet_bs32.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'resnet50_8xb32-lbs_in1k.py' + +_deprecation_ = dict( + expected='resnet50_8xb32-lbs_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnet50_b32x8_mixup_imagenet.py b/configs/resnet/resnet50_b32x8_mixup_imagenet.py index 2a153d0e18f..3405319d0b6 100644 --- a/configs/resnet/resnet50_b32x8_mixup_imagenet.py +++ b/configs/resnet/resnet50_b32x8_mixup_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/resnet50_mixup.py', - '../_base_/datasets/imagenet_bs32.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'resnet50_8xb32-mixup_in1k.py' + +_deprecation_ = dict( + expected='resnet50_8xb32-mixup_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnet50_b64x32_warmup_coslr_imagenet.py b/configs/resnet/resnet50_b64x32_warmup_coslr_imagenet.py index c26245ef53a..4724616c0da 100644 --- a/configs/resnet/resnet50_b64x32_warmup_coslr_imagenet.py +++ b/configs/resnet/resnet50_b64x32_warmup_coslr_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs64.py', - '../_base_/schedules/imagenet_bs2048_coslr.py', - '../_base_/default_runtime.py' -] +_base_ = 'resnet50_32xb64-warmup-coslr_in1k.py' + +_deprecation_ = dict( + expected='resnet50_32xb64-warmup-coslr_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnet50_b64x32_warmup_imagenet.py b/configs/resnet/resnet50_b64x32_warmup_imagenet.py index 34d5288b9d3..3e350541d41 100644 --- a/configs/resnet/resnet50_b64x32_warmup_imagenet.py +++ b/configs/resnet/resnet50_b64x32_warmup_imagenet.py @@ -1,4 +1,6 @@ -_base_ = [ - '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs64.py', - '../_base_/schedules/imagenet_bs2048.py', '../_base_/default_runtime.py' -] +_base_ = 'resnet50_32xb64-warmup_in1k.py' + +_deprecation_ = dict( + expected='resnet50_32xb64-warmup_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnet50_b64x32_warmup_label_smooth_imagenet.py b/configs/resnet/resnet50_b64x32_warmup_label_smooth_imagenet.py index 23c9defdde1..2544e33fc8d 100644 --- a/configs/resnet/resnet50_b64x32_warmup_label_smooth_imagenet.py +++ b/configs/resnet/resnet50_b64x32_warmup_label_smooth_imagenet.py @@ -1,12 +1,6 @@ -_base_ = ['./resnet50_b64x32_warmup_imagenet.py'] -model = dict( - head=dict( - type='LinearClsHead', - num_classes=1000, - in_channels=2048, - loss=dict( - type='LabelSmoothLoss', - loss_weight=1.0, - label_smooth_val=0.1, - num_classes=1000), - )) +_base_ = 'resnet50_32xb64-warmup-lbs_in1k.py' + +_deprecation_ = dict( + expected='resnet50_32xb64-warmup-lbs_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnetv1d101_8xb32_in1k.py b/configs/resnet/resnetv1d101_8xb32_in1k.py new file mode 100644 index 00000000000..b16ca863db2 --- /dev/null +++ b/configs/resnet/resnetv1d101_8xb32_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/resnetv1d101.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnetv1d101_b32x8_imagenet.py b/configs/resnet/resnetv1d101_b32x8_imagenet.py index b16ca863db2..e736937e096 100644 --- a/configs/resnet/resnetv1d101_b32x8_imagenet.py +++ b/configs/resnet/resnetv1d101_b32x8_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/resnetv1d101.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'resnetv1d101_8xb32_in1k.py' + +_deprecation_ = dict( + expected='resnetv1d101_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnetv1d152_8xb32_in1k.py b/configs/resnet/resnetv1d152_8xb32_in1k.py new file mode 100644 index 00000000000..76926ddbb66 --- /dev/null +++ b/configs/resnet/resnetv1d152_8xb32_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/resnetv1d152.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnetv1d152_b32x8_imagenet.py b/configs/resnet/resnetv1d152_b32x8_imagenet.py index 76926ddbb66..88e5b9f0e9c 100644 --- a/configs/resnet/resnetv1d152_b32x8_imagenet.py +++ b/configs/resnet/resnetv1d152_b32x8_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/resnetv1d152.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'resnetv1d152_8xb32_in1k.py' + +_deprecation_ = dict( + expected='resnetv1d152_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnet/resnetv1d50_8xb32_in1k.py b/configs/resnet/resnetv1d50_8xb32_in1k.py new file mode 100644 index 00000000000..208bde470ad --- /dev/null +++ b/configs/resnet/resnetv1d50_8xb32_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/resnetv1d50.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnet/resnetv1d50_b32x8_imagenet.py b/configs/resnet/resnetv1d50_b32x8_imagenet.py index 208bde470ad..5455e055b12 100644 --- a/configs/resnet/resnetv1d50_b32x8_imagenet.py +++ b/configs/resnet/resnetv1d50_b32x8_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/resnetv1d50.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'resnetv1d50_8xb32_in1k.py' + +_deprecation_ = dict( + expected='resnetv1d50_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnext/README.md b/configs/resnext/README.md index 8a4786aac92..404ab867ed5 100644 --- a/configs/resnext/README.md +++ b/configs/resnext/README.md @@ -21,7 +21,7 @@ | Model | Params(M) | Flops(G) | Top-1 (%) | Top-5 (%) | Config | Download | |:---------------------:|:---------:|:--------:|:---------:|:---------:|:---------:|:--------:| -| ResNeXt-32x4d-50 | 25.03 | 4.27 | 77.90 | 93.66 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnext/resnext50_32x4d_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnext/resnext50_32x4d_b32x8_imagenet_20210429-56066e27.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnext/resnext50_32x4d_b32x8_imagenet_20210429-56066e27.log.json) | -| ResNeXt-32x4d-101 | 44.18 | 8.03 | 78.61 | 94.17 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnext/resnext101_32x4d_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnext/resnext101_32x4d_b32x8_imagenet_20210506-e0fa3dd5.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnext/resnext101_32x4d_b32x8_imagenet_20210506-e0fa3dd5.log.json) | -| ResNeXt-32x8d-101 | 88.79 | 16.5 | 79.27 | 94.58 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnext/resnext101_32x8d_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnext/resnext101_32x8d_b32x8_imagenet_20210506-23a247d5.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnext/resnext101_32x8d_b32x8_imagenet_20210506-23a247d5.log.json) | -| ResNeXt-32x4d-152 | 59.95 | 11.8 | 78.88 | 94.33 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnext/resnext152_32x4d_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnext/resnext152_32x4d_b32x8_imagenet_20210524-927787be.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnext/resnext152_32x4d_b32x8_imagenet_20210524-927787be.log.json) | +| ResNeXt-32x4d-50 | 25.03 | 4.27 | 77.90 | 93.66 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnext/resnext50-32x4d_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnext/resnext50_32x4d_b32x8_imagenet_20210429-56066e27.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnext/resnext50_32x4d_b32x8_imagenet_20210429-56066e27.log.json) | +| ResNeXt-32x4d-101 | 44.18 | 8.03 | 78.61 | 94.17 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnext/resnext101-32x4d_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnext/resnext101_32x4d_b32x8_imagenet_20210506-e0fa3dd5.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnext/resnext101_32x4d_b32x8_imagenet_20210506-e0fa3dd5.log.json) | +| ResNeXt-32x8d-101 | 88.79 | 16.5 | 79.27 | 94.58 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnext/resnext101-32x8d_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnext/resnext101_32x8d_b32x8_imagenet_20210506-23a247d5.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnext/resnext101_32x8d_b32x8_imagenet_20210506-23a247d5.log.json) | +| ResNeXt-32x4d-152 | 59.95 | 11.8 | 78.88 | 94.33 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnext/resnext152-32x4d_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnext/resnext152_32x4d_b32x8_imagenet_20210524-927787be.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnext/resnext152_32x4d_b32x8_imagenet_20210524-927787be.log.json) | diff --git a/configs/resnext/metafile.yml b/configs/resnext/metafile.yml index 841bad4ca12..c68e7f9d9ab 100644 --- a/configs/resnext/metafile.yml +++ b/configs/resnext/metafile.yml @@ -19,7 +19,7 @@ Collections: Version: v0.15.0 Models: - - Name: resnext50_32x4d_b32x8_imagenet + - Name: resnext50-32x4d_8xb32_in1k Metadata: FLOPs: 4270000000 Parameters: 25030000 @@ -31,8 +31,8 @@ Models: Top 5 Accuracy: 93.66 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/resnext/resnext50_32x4d_b32x8_imagenet_20210429-56066e27.pth - Config: configs/resnext/resnext50_32x4d_b32x8_imagenet.py - - Name: resnext101_32x4d_b32x8_imagenet + Config: configs/resnext/resnext50-32x4d_8xb32_in1k.py + - Name: resnext101-32x4d_8xb32_in1k Metadata: FLOPs: 8030000000 Parameters: 44180000 @@ -44,8 +44,8 @@ Models: Top 5 Accuracy: 94.17 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/resnext/resnext101_32x4d_b32x8_imagenet_20210506-e0fa3dd5.pth - Config: configs/resnext/resnext101_32x4d_b32x8_imagenet.py - - Name: resnext101_32x8d_b32x8_imagenet + Config: configs/resnext/resnext101-32x4d_8xb32_in1k.py + - Name: resnext101-32x8d_8xb32_in1k Metadata: FLOPs: 16500000000 Parameters: 88790000 @@ -57,8 +57,8 @@ Models: Top 5 Accuracy: 94.58 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/resnext/resnext101_32x8d_b32x8_imagenet_20210506-23a247d5.pth - Config: configs/resnext/resnext101_32x8d_b32x8_imagenet.py - - Name: resnext152_32x4d_b32x8_imagenet + Config: configs/resnext/resnext101-32x8d_8xb32_in1k.py + - Name: resnext152-32x4d_8xb32_in1k Metadata: FLOPs: 11800000000 Parameters: 59950000 @@ -70,4 +70,4 @@ Models: Top 5 Accuracy: 94.33 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/resnext/resnext152_32x4d_b32x8_imagenet_20210524-927787be.pth - Config: configs/resnext/resnext152_32x4d_b32x8_imagenet.py + Config: configs/resnext/resnext152-32x4d_8xb32_in1k.py diff --git a/configs/resnext/resnext101-32x4d_8xb32_in1k.py b/configs/resnext/resnext101-32x4d_8xb32_in1k.py new file mode 100644 index 00000000000..970aa60f35f --- /dev/null +++ b/configs/resnext/resnext101-32x4d_8xb32_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/resnext101_32x4d.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnext/resnext101-32x8d_8xb32_in1k.py b/configs/resnext/resnext101-32x8d_8xb32_in1k.py new file mode 100644 index 00000000000..315d05fd57b --- /dev/null +++ b/configs/resnext/resnext101-32x8d_8xb32_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/resnext101_32x8d.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnext/resnext101_32x4d_b32x8_imagenet.py b/configs/resnext/resnext101_32x4d_b32x8_imagenet.py index 970aa60f35f..07d66c356f6 100644 --- a/configs/resnext/resnext101_32x4d_b32x8_imagenet.py +++ b/configs/resnext/resnext101_32x4d_b32x8_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/resnext101_32x4d.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'resnext101-32x4d_8xb32_in1k.py' + +_deprecation_ = dict( + expected='resnext101-32x4d_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnext/resnext101_32x8d_b32x8_imagenet.py b/configs/resnext/resnext101_32x8d_b32x8_imagenet.py index 315d05fd57b..071ca60f21c 100644 --- a/configs/resnext/resnext101_32x8d_b32x8_imagenet.py +++ b/configs/resnext/resnext101_32x8d_b32x8_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/resnext101_32x8d.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'resnext101-32x8d_8xb32_in1k.py' + +_deprecation_ = dict( + expected='resnext101-32x8d_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnext/resnext152-32x4d_8xb32_in1k.py b/configs/resnext/resnext152-32x4d_8xb32_in1k.py new file mode 100644 index 00000000000..9c137313cb7 --- /dev/null +++ b/configs/resnext/resnext152-32x4d_8xb32_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/resnext152_32x4d.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnext/resnext152_32x4d_b32x8_imagenet.py b/configs/resnext/resnext152_32x4d_b32x8_imagenet.py index 9c137313cb7..6d05c8b3a1e 100644 --- a/configs/resnext/resnext152_32x4d_b32x8_imagenet.py +++ b/configs/resnext/resnext152_32x4d_b32x8_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/resnext152_32x4d.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'resnext152-32x4d_8xb32_in1k.py' + +_deprecation_ = dict( + expected='resnext152-32x4d_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/resnext/resnext50-32x4d_8xb32_in1k.py b/configs/resnext/resnext50-32x4d_8xb32_in1k.py new file mode 100644 index 00000000000..bd9c9fcf4e6 --- /dev/null +++ b/configs/resnext/resnext50-32x4d_8xb32_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/resnext50_32x4d.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/resnext/resnext50_32x4d_b32x8_imagenet.py b/configs/resnext/resnext50_32x4d_b32x8_imagenet.py index bd9c9fcf4e6..92ae0639941 100644 --- a/configs/resnext/resnext50_32x4d_b32x8_imagenet.py +++ b/configs/resnext/resnext50_32x4d_b32x8_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/resnext50_32x4d.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'resnext50-32x4d_8xb32_in1k.py' + +_deprecation_ = dict( + expected='resnext50-32x4d_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/seresnet/README.md b/configs/seresnet/README.md index 1241e3fc6e5..b9b239fa584 100644 --- a/configs/seresnet/README.md +++ b/configs/seresnet/README.md @@ -21,5 +21,5 @@ | Model | Params(M) | Flops(G) | Top-1 (%) | Top-5 (%) | Config | Download | |:---------------------:|:---------:|:--------:|:---------:|:---------:|:---------:|:--------:| -| SE-ResNet-50 | 28.09 | 4.13 | 77.74 | 93.84 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/seresnet/seresnet50_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet50_batch256_imagenet_20200804-ae206104.pth) | [log](https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet50_batch256_imagenet_20200708-657b3c36.log.json) | -| SE-ResNet-101 | 49.33 | 7.86 | 78.26 | 94.07 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/seresnet/seresnet101_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet101_batch256_imagenet_20200804-ba5b51d4.pth) | [log](https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet101_batch256_imagenet_20200708-038a4d04.log.json) | +| SE-ResNet-50 | 28.09 | 4.13 | 77.74 | 93.84 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/seresnet/seresnet50_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet50_batch256_imagenet_20200804-ae206104.pth) | [log](https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet50_batch256_imagenet_20200708-657b3c36.log.json) | +| SE-ResNet-101 | 49.33 | 7.86 | 78.26 | 94.07 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/seresnet/seresnet101_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet101_batch256_imagenet_20200804-ba5b51d4.pth) | [log](https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet101_batch256_imagenet_20200708-038a4d04.log.json) | diff --git a/configs/seresnet/metafile.yml b/configs/seresnet/metafile.yml index 419425dc793..7d2a38109ef 100644 --- a/configs/seresnet/metafile.yml +++ b/configs/seresnet/metafile.yml @@ -19,7 +19,7 @@ Collections: Version: v0.15.0 Models: - - Name: seresnet50_b32x8_imagenet + - Name: seresnet50_8xb32_in1k Metadata: FLOPs: 4130000000 Parameters: 28090000 @@ -31,8 +31,8 @@ Models: Top 5 Accuracy: 93.84 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet50_batch256_imagenet_20200804-ae206104.pth - Config: configs/seresnet/seresnet50_b32x8_imagenet.py - - Name: seresnet101_b32x8_imagenet + Config: configs/seresnet/seresnet50_8xb32_in1k.py + - Name: seresnet101_8xb32_in1k Metadata: FLOPs: 7860000000 Parameters: 49330000 @@ -44,4 +44,4 @@ Models: Top 5 Accuracy: 94.07 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet101_batch256_imagenet_20200804-ba5b51d4.pth - Config: configs/seresnet/seresnet101_b32x8_imagenet.py + Config: configs/seresnet/seresnet101_8xb32_in1k.py diff --git a/configs/seresnet/seresnet101_8xb32_in1k.py b/configs/seresnet/seresnet101_8xb32_in1k.py new file mode 100644 index 00000000000..8be39e7a32a --- /dev/null +++ b/configs/seresnet/seresnet101_8xb32_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/seresnet101.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/seresnet/seresnet101_b32x8_imagenet.py b/configs/seresnet/seresnet101_b32x8_imagenet.py index 8be39e7a32a..46daa09a3c3 100644 --- a/configs/seresnet/seresnet101_b32x8_imagenet.py +++ b/configs/seresnet/seresnet101_b32x8_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/seresnet101.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'seresnet101_8xb32_in1k.py' + +_deprecation_ = dict( + expected='seresnet101_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/seresnet/seresnet50_8xb32_in1k.py b/configs/seresnet/seresnet50_8xb32_in1k.py new file mode 100644 index 00000000000..19082bd0dd6 --- /dev/null +++ b/configs/seresnet/seresnet50_8xb32_in1k.py @@ -0,0 +1,6 @@ +_base_ = [ + '../_base_/models/seresnet50.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256_140e.py', + '../_base_/default_runtime.py' +] diff --git a/configs/seresnet/seresnet50_b32x8_imagenet.py b/configs/seresnet/seresnet50_b32x8_imagenet.py index 19082bd0dd6..0fb9df39d51 100644 --- a/configs/seresnet/seresnet50_b32x8_imagenet.py +++ b/configs/seresnet/seresnet50_b32x8_imagenet.py @@ -1,6 +1,6 @@ -_base_ = [ - '../_base_/models/seresnet50.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256_140e.py', - '../_base_/default_runtime.py' -] +_base_ = 'seresnet50_8xb32_in1k.py' + +_deprecation_ = dict( + expected='seresnet50_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/seresnext/seresnext101-32x4d_8xb32_in1k.py b/configs/seresnext/seresnext101-32x4d_8xb32_in1k.py new file mode 100644 index 00000000000..01778305caf --- /dev/null +++ b/configs/seresnext/seresnext101-32x4d_8xb32_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/seresnext101_32x4d.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/seresnext/seresnext101_32x4d_b32x8_imagenet.py b/configs/seresnext/seresnext101_32x4d_b32x8_imagenet.py index 01778305caf..cb99ec661b3 100644 --- a/configs/seresnext/seresnext101_32x4d_b32x8_imagenet.py +++ b/configs/seresnext/seresnext101_32x4d_b32x8_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/seresnext101_32x4d.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'seresnext101-32x4d_8xb32_in1k.py' + +_deprecation_ = dict( + expected='seresnext101-32x4d_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/seresnext/seresnext50-32x4d_8xb32_in1k.py b/configs/seresnext/seresnext50-32x4d_8xb32_in1k.py new file mode 100644 index 00000000000..4d593e45b89 --- /dev/null +++ b/configs/seresnext/seresnext50-32x4d_8xb32_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/seresnext50_32x4d.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/seresnext/seresnext50_32x4d_b32x8_imagenet.py b/configs/seresnext/seresnext50_32x4d_b32x8_imagenet.py index 4d593e45b89..49229604f4a 100644 --- a/configs/seresnext/seresnext50_32x4d_b32x8_imagenet.py +++ b/configs/seresnext/seresnext50_32x4d_b32x8_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/seresnext50_32x4d.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'seresnext50-32x4d_8xb32_in1k.py' + +_deprecation_ = dict( + expected='seresnext50-32x4d_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/shufflenet_v1/README.md b/configs/shufflenet_v1/README.md index b18934565b8..3cd6cd4e412 100644 --- a/configs/shufflenet_v1/README.md +++ b/configs/shufflenet_v1/README.md @@ -21,4 +21,4 @@ | Model | Params(M) | Flops(G) | Top-1 (%) | Top-5 (%) | Config | Download | |:---------------------:|:---------:|:--------:|:---------:|:---------:|:---------:|:--------:| -| ShuffleNetV1 1.0x (group=3) | 1.87 | 0.146 | 68.13 | 87.81 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/shufflenet_v1/shufflenet_v1_1x_b64x16_linearlr_bn_nowd_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/shufflenet_v1/shufflenet_v1_batch1024_imagenet_20200804-5d6cec73.pth) | [log](https://download.openmmlab.com/mmclassification/v0/shufflenet_v1/shufflenet_v1_batch1024_imagenet_20200804-5d6cec73.log.json) | +| ShuffleNetV1 1.0x (group=3) | 1.87 | 0.146 | 68.13 | 87.81 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/shufflenet_v1/shufflenet-v1-1x_16xb64_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/shufflenet_v1/shufflenet_v1_batch1024_imagenet_20200804-5d6cec73.pth) | [log](https://download.openmmlab.com/mmclassification/v0/shufflenet_v1/shufflenet_v1_batch1024_imagenet_20200804-5d6cec73.log.json) | diff --git a/configs/shufflenet_v1/metafile.yml b/configs/shufflenet_v1/metafile.yml index 04e7e46484c..2cfffa103f9 100644 --- a/configs/shufflenet_v1/metafile.yml +++ b/configs/shufflenet_v1/metafile.yml @@ -20,7 +20,7 @@ Collections: Version: v0.15.0 Models: - - Name: shufflenet_v1_1x_b64x16_linearlr_bn_nowd_imagenet + - Name: shufflenet-v1-1x_16xb64_in1k Metadata: FLOPs: 146000000 Parameters: 1870000 @@ -32,4 +32,4 @@ Models: Top 5 Accuracy: 87.81 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/shufflenet_v1/shufflenet_v1_batch1024_imagenet_20200804-5d6cec73.pth - Config: configs/shufflenet_v1/shufflenet_v1_1x_b64x16_linearlr_bn_nowd_imagenet.py + Config: configs/shufflenet_v1/shufflenet-v1-1x_16xb64_in1k.py diff --git a/configs/shufflenet_v1/shufflenet-v1-1x_16xb64_in1k.py b/configs/shufflenet_v1/shufflenet-v1-1x_16xb64_in1k.py new file mode 100644 index 00000000000..58e45f1ba41 --- /dev/null +++ b/configs/shufflenet_v1/shufflenet-v1-1x_16xb64_in1k.py @@ -0,0 +1,6 @@ +_base_ = [ + '../_base_/models/shufflenet_v1_1x.py', + '../_base_/datasets/imagenet_bs64_pil_resize.py', + '../_base_/schedules/imagenet_bs1024_linearlr_bn_nowd.py', + '../_base_/default_runtime.py' +] diff --git a/configs/shufflenet_v1/shufflenet_v1_1x_b64x16_linearlr_bn_nowd_imagenet.py b/configs/shufflenet_v1/shufflenet_v1_1x_b64x16_linearlr_bn_nowd_imagenet.py index 58e45f1ba41..03121979470 100644 --- a/configs/shufflenet_v1/shufflenet_v1_1x_b64x16_linearlr_bn_nowd_imagenet.py +++ b/configs/shufflenet_v1/shufflenet_v1_1x_b64x16_linearlr_bn_nowd_imagenet.py @@ -1,6 +1,6 @@ -_base_ = [ - '../_base_/models/shufflenet_v1_1x.py', - '../_base_/datasets/imagenet_bs64_pil_resize.py', - '../_base_/schedules/imagenet_bs1024_linearlr_bn_nowd.py', - '../_base_/default_runtime.py' -] +_base_ = 'shufflenet-v1-1x_16xb64_in1k.py' + +_deprecation_ = dict( + expected='shufflenet-v1-1x_16xb64_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/shufflenet_v2/README.md b/configs/shufflenet_v2/README.md index 35024258199..fbcd03db8a5 100644 --- a/configs/shufflenet_v2/README.md +++ b/configs/shufflenet_v2/README.md @@ -21,4 +21,4 @@ | Model | Params(M) | Flops(G) | Top-1 (%) | Top-5 (%) | Config | Download | |:---------------------:|:---------:|:--------:|:---------:|:---------:|:---------:|:--------:| -| ShuffleNetV2 1.0x | 2.28 | 0.149 | 69.55 | 88.92 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/shufflenet_v2/shufflenet_v2_1x_b64x16_linearlr_bn_nowd_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/shufflenet_v2/shufflenet_v2_batch1024_imagenet_20200812-5bf4721e.pth) | [log](https://download.openmmlab.com/mmclassification/v0/shufflenet_v2/shufflenet_v2_batch1024_imagenet_20200804-8860eec9.log.json) | +| ShuffleNetV2 1.0x | 2.28 | 0.149 | 69.55 | 88.92 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/shufflenet_v2/shufflenet-v2-1x_16xb64_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/shufflenet_v2/shufflenet_v2_batch1024_imagenet_20200812-5bf4721e.pth) | [log](https://download.openmmlab.com/mmclassification/v0/shufflenet_v2/shufflenet_v2_batch1024_imagenet_20200804-8860eec9.log.json) | diff --git a/configs/shufflenet_v2/metafile.yml b/configs/shufflenet_v2/metafile.yml index a1aa95daaab..a06322dd6d4 100644 --- a/configs/shufflenet_v2/metafile.yml +++ b/configs/shufflenet_v2/metafile.yml @@ -20,7 +20,7 @@ Collections: Version: v0.15.0 Models: - - Name: shufflenet_v2_1x_b64x16_linearlr_bn_nowd_imagenet + - Name: shufflenet-v2-1x_16xb64_in1k Metadata: FLOPs: 149000000 Parameters: 2280000 @@ -32,4 +32,4 @@ Models: Top 5 Accuracy: 88.92 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/shufflenet_v2/shufflenet_v2_batch1024_imagenet_20200812-5bf4721e.pth - Config: configs/shufflenet_v2/shufflenet_v2_1x_b64x16_linearlr_bn_nowd_imagenet.py + Config: configs/shufflenet_v2/shufflenet-v2-1x_16xb64_in1k.py diff --git a/configs/shufflenet_v2/shufflenet-v2-1x_16xb64_in1k.py b/configs/shufflenet_v2/shufflenet-v2-1x_16xb64_in1k.py new file mode 100644 index 00000000000..a106ab8686c --- /dev/null +++ b/configs/shufflenet_v2/shufflenet-v2-1x_16xb64_in1k.py @@ -0,0 +1,6 @@ +_base_ = [ + '../_base_/models/shufflenet_v2_1x.py', + '../_base_/datasets/imagenet_bs64_pil_resize.py', + '../_base_/schedules/imagenet_bs1024_linearlr_bn_nowd.py', + '../_base_/default_runtime.py' +] diff --git a/configs/shufflenet_v2/shufflenet_v2_1x_b64x16_linearlr_bn_nowd_imagenet.py b/configs/shufflenet_v2/shufflenet_v2_1x_b64x16_linearlr_bn_nowd_imagenet.py index a106ab8686c..c0938b0956f 100644 --- a/configs/shufflenet_v2/shufflenet_v2_1x_b64x16_linearlr_bn_nowd_imagenet.py +++ b/configs/shufflenet_v2/shufflenet_v2_1x_b64x16_linearlr_bn_nowd_imagenet.py @@ -1,6 +1,6 @@ -_base_ = [ - '../_base_/models/shufflenet_v2_1x.py', - '../_base_/datasets/imagenet_bs64_pil_resize.py', - '../_base_/schedules/imagenet_bs1024_linearlr_bn_nowd.py', - '../_base_/default_runtime.py' -] +_base_ = 'shufflenet-v2-1x_16xb64_in1k.py' + +_deprecation_ = dict( + expected='shufflenet-v2-1x_16xb64_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/swin_transformer/README.md b/configs/swin_transformer/README.md index b1fade80dde..b6720708c4b 100644 --- a/configs/swin_transformer/README.md +++ b/configs/swin_transformer/README.md @@ -37,6 +37,6 @@ The pre-trained modles are converted from [model zoo of Swin Transformer](https: ### ImageNet | Model | Pretrain | resolution | Params(M) | Flops(G) | Top-1 (%) | Top-5 (%) | Config | Download | |:---------:|:------------:|:-----------:|:---------:|:---------:|:---------:|:---------:|:----------:|:--------:| -| Swin-T | ImageNet-1k | 224x224 | 28.29 | 4.36 | 81.18 | 95.61 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/swin_transformer/swin_tiny_224_b16x64_300e_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_tiny_224_b16x64_300e_imagenet_20210616_090925-66df6be6.pth) | [log](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_tiny_224_b16x64_300e_imagenet_20210616_090925.log.json)| -| Swin-S | ImageNet-1k | 224x224 | 49.61 | 8.52 | 83.02 | 96.29 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/swin_transformer/swin_small_224_b16x64_300e_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_small_224_b16x64_300e_imagenet_20210615_110219-7f9d988b.pth) | [log](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_small_224_b16x64_300e_imagenet_20210615_110219.log.json)| +| Swin-T | ImageNet-1k | 224x224 | 28.29 | 4.36 | 81.18 | 95.61 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/swin_transformer/swin-tiny_16xb64_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_tiny_224_b16x64_300e_imagenet_20210616_090925-66df6be6.pth) | [log](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_tiny_224_b16x64_300e_imagenet_20210616_090925.log.json)| +| Swin-S | ImageNet-1k | 224x224 | 49.61 | 8.52 | 83.02 | 96.29 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/swin_transformer/swin-small_16xb64_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_small_224_b16x64_300e_imagenet_20210615_110219-7f9d988b.pth) | [log](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_small_224_b16x64_300e_imagenet_20210615_110219.log.json)| | Swin-B | ImageNet-1k | 224x224 | 87.77 | 15.14 | 83.36 | 96.44 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/swin_transformer/swin_base_224_b16x64_300e_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_base_224_b16x64_300e_imagenet_20210616_190742-93230b0d.pth) | [log](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_base_224_b16x64_300e_imagenet_20210616_190742.log.json)| diff --git a/configs/swin_transformer/metafile.yml b/configs/swin_transformer/metafile.yml index 46ea185da29..1dc82349fa6 100644 --- a/configs/swin_transformer/metafile.yml +++ b/configs/swin_transformer/metafile.yml @@ -19,7 +19,7 @@ Collections: Version: v0.15.0 Models: - - Name: swin-tiny_64xb16_in1k + - Name: swin-tiny_16xb64_in1k Metadata: FLOPs: 4360000000 Parameters: 28290000 @@ -31,8 +31,8 @@ Models: Top 5 Accuracy: 95.61 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_tiny_224_b16x64_300e_imagenet_20210616_090925-66df6be6.pth - Config: configs/swin_transformer/swin_tiny_224_b16x64_300e_imagenet.py - - Name: swin-small_64xb16_in1k + Config: configs/swin_transformer/swin-tiny_16xb64_in1k.py + - Name: swin-small_16xb64_in1k Metadata: FLOPs: 8520000000 Parameters: 49610000 @@ -44,8 +44,8 @@ Models: Top 5 Accuracy: 96.29 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_small_224_b16x64_300e_imagenet_20210615_110219-7f9d988b.pth - Config: configs/swin_transformer/swin_small_224_b16x64_300e_imagenet.py - - Name: swin-base_64xb16_in1k + Config: configs/swin_transformer/swin-small_16xb64_in1k.py + - Name: swin-base_16xb64_in1k Metadata: FLOPs: 15140000000 Parameters: 87770000 @@ -57,7 +57,7 @@ Models: Top 5 Accuracy: 96.44 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_base_224_b16x64_300e_imagenet_20210616_190742-93230b0d.pth - Config: configs/swin_transformer/swin_base_224_b16x64_300e_imagenet.py + Config: configs/swin_transformer/swin-base_16xb64_in1k.py - Name: swin-tiny_3rdparty_in1k Metadata: FLOPs: 4360000000 @@ -73,7 +73,7 @@ Models: Converted From: Weights: https://github.com/SwinTransformer/storage/releases/download/v1.0.0/swin_tiny_patch4_window7_224.pth Code: https://github.com/microsoft/Swin-Transformer/blob/777f6c66604bb5579086c4447efe3620344d95a9/models/swin_transformer.py#L458 - Config: configs/swin_transformer/swin_tiny_224_b16x64_300e_imagenet.py + Config: configs/swin_transformer/swin-tiny_16xb64_in1k.py - Name: swin-small_3rdparty_in1k Metadata: FLOPs: 8520000000 @@ -89,7 +89,7 @@ Models: Converted From: Weights: https://github.com/SwinTransformer/storage/releases/download/v1.0.0/swin_small_patch4_window7_224.pth Code: https://github.com/microsoft/Swin-Transformer/blob/777f6c66604bb5579086c4447efe3620344d95a9/models/swin_transformer.py#L458 - Config: configs/swin_transformer/swin_small_224_b16x64_300e_imagenet.py + Config: configs/swin_transformer/swin-small_16xb64_in1k.py - Name: swin-base_3rdparty_in1k Metadata: FLOPs: 15140000000 @@ -105,7 +105,7 @@ Models: Converted From: Weights: https://github.com/SwinTransformer/storage/releases/download/v1.0.0/swin_base_patch4_window7_224.pth Code: https://github.com/microsoft/Swin-Transformer/blob/777f6c66604bb5579086c4447efe3620344d95a9/models/swin_transformer.py#L458 - Config: configs/swin_transformer/swin_base_224_b16x64_300e_imagenet.py + Config: configs/swin_transformer/swin-base_16xb64_in1k.py - Name: swin-base_3rdparty_in1k-384 Metadata: FLOPs: 44490000000 @@ -121,7 +121,7 @@ Models: Converted From: Weights: https://github.com/SwinTransformer/storage/releases/download/v1.0.0/swin_base_patch4_window12_384.pth Code: https://github.com/microsoft/Swin-Transformer/blob/777f6c66604bb5579086c4447efe3620344d95a9/models/swin_transformer.py#L458 - Config: configs/swin_transformer/swin_base_384_evalonly_imagenet.py + Config: configs/swin_transformer/swin-base_16xb64_in1k-384px.py - Name: swin-base_in21k-pre-3rdparty_in1k Metadata: FLOPs: 15140000000 @@ -137,7 +137,7 @@ Models: Converted From: Weights: https://github.com/SwinTransformer/storage/releases/download/v1.0.0/swin_base_patch4_window7_224_22kto1k.pth Code: https://github.com/microsoft/Swin-Transformer/blob/777f6c66604bb5579086c4447efe3620344d95a9/models/swin_transformer.py#L458 - Config: configs/swin_transformer/swin_base_224_b16x64_300e_imagenet.py + Config: configs/swin_transformer/swin-base_16xb64_in1k.py - Name: swin-base_in21k-pre-3rdparty_in1k-384 Metadata: FLOPs: 44490000000 @@ -153,7 +153,7 @@ Models: Converted From: Weights: https://github.com/SwinTransformer/storage/releases/download/v1.0.0/swin_base_patch4_window12_384_22kto1k.pth Code: https://github.com/microsoft/Swin-Transformer/blob/777f6c66604bb5579086c4447efe3620344d95a9/models/swin_transformer.py#L458 - Config: configs/swin_transformer/swin_base_384_evalonly_imagenet.py + Config: configs/swin_transformer/swin-base_16xb64_in1k-384px.py - Name: swin-large_in21k-pre-3rdparty_in1k Metadata: FLOPs: 34040000000 @@ -169,7 +169,7 @@ Models: Converted From: Weights: https://github.com/SwinTransformer/storage/releases/download/v1.0.0/swin_large_patch4_window7_224_22kto1k.pth Code: https://github.com/microsoft/Swin-Transformer/blob/777f6c66604bb5579086c4447efe3620344d95a9/models/swin_transformer.py#L458 - Config: configs/swin_transformer/swin_large_224_evalonly_imagenet.py + Config: configs/swin_transformer/swin-large_16xb64_in1k.py - Name: swin-large_in21k-pre-3rdparty_in1k-384 Metadata: FLOPs: 100040000000 @@ -185,4 +185,4 @@ Models: Converted From: Weights: https://github.com/SwinTransformer/storage/releases/download/v1.0.0/swin_large_patch4_window12_384_22kto1k.pth Code: https://github.com/microsoft/Swin-Transformer/blob/777f6c66604bb5579086c4447efe3620344d95a9/models/swin_transformer.py#L458 - Config: configs/swin_transformer/swin_large_384_evalonly_imagenet.py + Config: configs/swin_transformer/swin-large_16xb64_in1k-384px.py diff --git a/configs/swin_transformer/swin-base_16xb64_in1k-384px.py b/configs/swin_transformer/swin-base_16xb64_in1k-384px.py new file mode 100644 index 00000000000..711a0d6d218 --- /dev/null +++ b/configs/swin_transformer/swin-base_16xb64_in1k-384px.py @@ -0,0 +1,7 @@ +# Only for evaluation +_base_ = [ + '../_base_/models/swin_transformer/base_384.py', + '../_base_/datasets/imagenet_bs64_swin_384.py', + '../_base_/schedules/imagenet_bs1024_adamw_swin.py', + '../_base_/default_runtime.py' +] diff --git a/configs/swin_transformer/swin-base_16xb64_in1k.py b/configs/swin_transformer/swin-base_16xb64_in1k.py new file mode 100644 index 00000000000..2a4548af0bf --- /dev/null +++ b/configs/swin_transformer/swin-base_16xb64_in1k.py @@ -0,0 +1,6 @@ +_base_ = [ + '../_base_/models/swin_transformer/base_224.py', + '../_base_/datasets/imagenet_bs64_swin_224.py', + '../_base_/schedules/imagenet_bs1024_adamw_swin.py', + '../_base_/default_runtime.py' +] diff --git a/configs/swin_transformer/swin-large_16xb64_in1k-384px.py b/configs/swin_transformer/swin-large_16xb64_in1k-384px.py new file mode 100644 index 00000000000..a7f0ad2762f --- /dev/null +++ b/configs/swin_transformer/swin-large_16xb64_in1k-384px.py @@ -0,0 +1,7 @@ +# Only for evaluation +_base_ = [ + '../_base_/models/swin_transformer/large_384.py', + '../_base_/datasets/imagenet_bs64_swin_384.py', + '../_base_/schedules/imagenet_bs1024_adamw_swin.py', + '../_base_/default_runtime.py' +] diff --git a/configs/swin_transformer/swin-large_16xb64_in1k.py b/configs/swin_transformer/swin-large_16xb64_in1k.py new file mode 100644 index 00000000000..4e875c59f38 --- /dev/null +++ b/configs/swin_transformer/swin-large_16xb64_in1k.py @@ -0,0 +1,7 @@ +# Only for evaluation +_base_ = [ + '../_base_/models/swin_transformer/large_224.py', + '../_base_/datasets/imagenet_bs64_swin_224.py', + '../_base_/schedules/imagenet_bs1024_adamw_swin.py', + '../_base_/default_runtime.py' +] diff --git a/configs/swin_transformer/swin-small_16xb64_in1k.py b/configs/swin_transformer/swin-small_16xb64_in1k.py new file mode 100644 index 00000000000..aa1fa21b054 --- /dev/null +++ b/configs/swin_transformer/swin-small_16xb64_in1k.py @@ -0,0 +1,6 @@ +_base_ = [ + '../_base_/models/swin_transformer/small_224.py', + '../_base_/datasets/imagenet_bs64_swin_224.py', + '../_base_/schedules/imagenet_bs1024_adamw_swin.py', + '../_base_/default_runtime.py' +] diff --git a/configs/swin_transformer/swin-tiny_16xb64_in1k.py b/configs/swin_transformer/swin-tiny_16xb64_in1k.py new file mode 100644 index 00000000000..e1ed022a1b7 --- /dev/null +++ b/configs/swin_transformer/swin-tiny_16xb64_in1k.py @@ -0,0 +1,6 @@ +_base_ = [ + '../_base_/models/swin_transformer/tiny_224.py', + '../_base_/datasets/imagenet_bs64_swin_224.py', + '../_base_/schedules/imagenet_bs1024_adamw_swin.py', + '../_base_/default_runtime.py' +] diff --git a/configs/swin_transformer/swin_base_224_b16x64_300e_imagenet.py b/configs/swin_transformer/swin_base_224_b16x64_300e_imagenet.py index 2a4548af0bf..912c379b18f 100644 --- a/configs/swin_transformer/swin_base_224_b16x64_300e_imagenet.py +++ b/configs/swin_transformer/swin_base_224_b16x64_300e_imagenet.py @@ -1,6 +1,6 @@ -_base_ = [ - '../_base_/models/swin_transformer/base_224.py', - '../_base_/datasets/imagenet_bs64_swin_224.py', - '../_base_/schedules/imagenet_bs1024_adamw_swin.py', - '../_base_/default_runtime.py' -] +_base_ = 'swin-base_16xb64_in1k.py' + +_deprecation_ = dict( + expected='swin-base_16xb64_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/swin_transformer/swin_base_384_evalonly_imagenet.py b/configs/swin_transformer/swin_base_384_evalonly_imagenet.py index 711a0d6d218..9ed58889d7a 100644 --- a/configs/swin_transformer/swin_base_384_evalonly_imagenet.py +++ b/configs/swin_transformer/swin_base_384_evalonly_imagenet.py @@ -1,7 +1,6 @@ -# Only for evaluation -_base_ = [ - '../_base_/models/swin_transformer/base_384.py', - '../_base_/datasets/imagenet_bs64_swin_384.py', - '../_base_/schedules/imagenet_bs1024_adamw_swin.py', - '../_base_/default_runtime.py' -] +_base_ = 'swin-base_16xb64_in1k-384px.py' + +_deprecation_ = dict( + expected='swin-base_16xb64_in1k-384px.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/swin_transformer/swin_large_224_evalonly_imagenet.py b/configs/swin_transformer/swin_large_224_evalonly_imagenet.py index 4e875c59f38..5ebb54a59e9 100644 --- a/configs/swin_transformer/swin_large_224_evalonly_imagenet.py +++ b/configs/swin_transformer/swin_large_224_evalonly_imagenet.py @@ -1,7 +1,6 @@ -# Only for evaluation -_base_ = [ - '../_base_/models/swin_transformer/large_224.py', - '../_base_/datasets/imagenet_bs64_swin_224.py', - '../_base_/schedules/imagenet_bs1024_adamw_swin.py', - '../_base_/default_runtime.py' -] +_base_ = 'swin-large_16xb64_in1k.py' + +_deprecation_ = dict( + expected='swin-large_16xb64_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/swin_transformer/swin_large_384_evalonly_imagenet.py b/configs/swin_transformer/swin_large_384_evalonly_imagenet.py index a7f0ad2762f..9a59f5b649a 100644 --- a/configs/swin_transformer/swin_large_384_evalonly_imagenet.py +++ b/configs/swin_transformer/swin_large_384_evalonly_imagenet.py @@ -1,7 +1,6 @@ -# Only for evaluation -_base_ = [ - '../_base_/models/swin_transformer/large_384.py', - '../_base_/datasets/imagenet_bs64_swin_384.py', - '../_base_/schedules/imagenet_bs1024_adamw_swin.py', - '../_base_/default_runtime.py' -] +_base_ = 'swin-large_16xb64_in1k-384px.py' + +_deprecation_ = dict( + expected='swin-large_16xb64_in1k-384px.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/swin_transformer/swin_small_224_b16x64_300e_imagenet.py b/configs/swin_transformer/swin_small_224_b16x64_300e_imagenet.py index aa1fa21b054..a747aa4debf 100644 --- a/configs/swin_transformer/swin_small_224_b16x64_300e_imagenet.py +++ b/configs/swin_transformer/swin_small_224_b16x64_300e_imagenet.py @@ -1,6 +1,6 @@ -_base_ = [ - '../_base_/models/swin_transformer/small_224.py', - '../_base_/datasets/imagenet_bs64_swin_224.py', - '../_base_/schedules/imagenet_bs1024_adamw_swin.py', - '../_base_/default_runtime.py' -] +_base_ = 'swin-small_16xb64_in1k.py' + +_deprecation_ = dict( + expected='swin-small_16xb64_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/swin_transformer/swin_tiny_224_b16x64_300e_imagenet.py b/configs/swin_transformer/swin_tiny_224_b16x64_300e_imagenet.py index e1ed022a1b7..2160eb91fc2 100644 --- a/configs/swin_transformer/swin_tiny_224_b16x64_300e_imagenet.py +++ b/configs/swin_transformer/swin_tiny_224_b16x64_300e_imagenet.py @@ -1,6 +1,6 @@ -_base_ = [ - '../_base_/models/swin_transformer/tiny_224.py', - '../_base_/datasets/imagenet_bs64_swin_224.py', - '../_base_/schedules/imagenet_bs1024_adamw_swin.py', - '../_base_/default_runtime.py' -] +_base_ = 'swin-tiny_16xb64_in1k.py' + +_deprecation_ = dict( + expected='swin-tiny_16xb64_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/tnt/README.md b/configs/tnt/README.md index 5e4bd38c94b..88fa363a0a0 100644 --- a/configs/tnt/README.md +++ b/configs/tnt/README.md @@ -23,7 +23,7 @@ The pre-trained modles are converted from [timm](https://github.com/rwightman/py | Model | Params(M) | Flops(G) | Top-1 (%) | Top-5 (%) | Download | |:---------------------:|:---------:|:--------:|:---------:|:---------:|:--------:| -| Transformer in Transformer small\* | 23.76 | 3.36 | 81.52 | 95.73 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/tnt/tnt_s_patch16_224_evalonly_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/tnt/tnt-small-p16_3rdparty_in1k_20210903-c56ee7df.pth) | [log]()| +| Transformer in Transformer small\* | 23.76 | 3.36 | 81.52 | 95.73 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/tnt/tnt-s-p16_16xb64_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/tnt/tnt-small-p16_3rdparty_in1k_20210903-c56ee7df.pth) | [log]()| *Models with \* are converted from other repos.* diff --git a/configs/tnt/metafile.yml b/configs/tnt/metafile.yml index ff8558b3c62..67f3c7825fb 100644 --- a/configs/tnt/metafile.yml +++ b/configs/tnt/metafile.yml @@ -23,7 +23,7 @@ Models: Top 5 Accuracy: 95.73 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/tnt/tnt-small-p16_3rdparty_in1k_20210903-c56ee7df.pth - Config: configs/tnt/tnt_s_patch16_224_evalonly_imagenet.py + Config: configs/tnt/tnt-s-p16_16xb64_in1k.py Converted From: Weights: https://github.com/contrastive/pytorch-image-models/releases/download/TNT/tnt_s_patch16_224.pth.tar Code: https://github.com/contrastive/pytorch-image-models/blob/809271b0f3e5d9be4e11c0c5cec1dbba8b5e2c60/timm/models/tnt.py#L144 diff --git a/configs/tnt/tnt-s-p16_16xb64_in1k.py b/configs/tnt/tnt-s-p16_16xb64_in1k.py new file mode 100644 index 00000000000..36693689d41 --- /dev/null +++ b/configs/tnt/tnt-s-p16_16xb64_in1k.py @@ -0,0 +1,39 @@ +# accuracy_top-1 : 81.52 accuracy_top-5 : 95.73 +_base_ = [ + '../_base_/models/tnt_s_patch16_224.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/default_runtime.py' +] + +img_norm_cfg = dict( + mean=[127.5, 127.5, 127.5], std=[127.5, 127.5, 127.5], to_rgb=True) + +test_pipeline = [ + dict(type='LoadImageFromFile'), + dict( + type='Resize', + size=(248, -1), + interpolation='bicubic', + backend='pillow'), + dict(type='CenterCrop', crop_size=224), + dict(type='Normalize', **img_norm_cfg), + dict(type='ImageToTensor', keys=['img']), + dict(type='Collect', keys=['img']) +] + +dataset_type = 'ImageNet' +data = dict( + samples_per_gpu=64, workers_per_gpu=4, test=dict(pipeline=test_pipeline)) + +# optimizer +optimizer = dict(type='AdamW', lr=1e-3, weight_decay=0.05) +optimizer_config = dict(grad_clip=None) + +lr_config = dict( + policy='CosineAnnealing', + min_lr=0, + warmup_by_epoch=True, + warmup='linear', + warmup_iters=5, + warmup_ratio=1e-3) +runner = dict(type='EpochBasedRunner', max_epochs=300) diff --git a/configs/tnt/tnt_s_patch16_224_evalonly_imagenet.py b/configs/tnt/tnt_s_patch16_224_evalonly_imagenet.py index e09820bf5d2..3c054d4a643 100644 --- a/configs/tnt/tnt_s_patch16_224_evalonly_imagenet.py +++ b/configs/tnt/tnt_s_patch16_224_evalonly_imagenet.py @@ -1,39 +1,6 @@ -# accuracy_top-1 : 81.52 accuracy_top-5 : 95.73 -_base_ = [ - '../_base_/models/tnt_s_patch16_224.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/default_runtime.py' -] +_base_ = 'tnt-s-p16_16xb64_in1k.py' -img_norm_cfg = dict( - mean=[127.5, 127.5, 127.5], std=[127.5, 127.5, 127.5], to_rgb=True) - -test_pipeline = [ - dict(type='LoadImageFromFile'), - dict( - type='Resize', - size=(248, -1), - interpolation='bicubic', - backend='pillow'), - dict(type='CenterCrop', crop_size=224), - dict(type='Normalize', **img_norm_cfg), - dict(type='ImageToTensor', keys=['img']), - dict(type='Collect', keys=['img']) -] - -dataset_type = 'ImageNet' -data = dict( - samples_per_gpu=32, workers_per_gpu=4, test=dict(pipeline=test_pipeline)) - -# optimizer -optimizer = dict(type='AdamW', lr=1e-3, weight_decay=0.05) -optimizer_config = dict(grad_clip=None) - -lr_config = dict( - policy='CosineAnnealing', - min_lr=0, - warmup_by_epoch=True, - warmup='linear', - warmup_iters=5, - warmup_ratio=1e-3) -runner = dict(type='EpochBasedRunner', max_epochs=300) +_deprecation_ = dict( + expected='tnt-s-p16_16xb64_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/vgg/README.md b/configs/vgg/README.md index a1aca53dfc9..cfa95e1f8c8 100644 --- a/configs/vgg/README.md +++ b/configs/vgg/README.md @@ -21,11 +21,11 @@ | Model | Params(M) | Flops(G) | Top-1 (%) | Top-5 (%) | Config | Download | |:---------------------:|:---------:|:--------:|:---------:|:---------:|:---------:|:--------:| -| VGG-11 | 132.86 | 7.63 | 68.75 | 88.87 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg11_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_batch256_imagenet_20210208-4271cd6c.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_batch256_imagenet_20210208-4271cd6c.log.json) | -| VGG-13 | 133.05 | 11.34 | 70.02 | 89.46 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg13_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg13_batch256_imagenet_20210208-4d1d6080.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg13_batch256_imagenet_20210208-4d1d6080.log.json) | -| VGG-16 | 138.36 | 15.5 | 71.62 | 90.49 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg16_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_batch256_imagenet_20210208-db26f1a5.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_batch256_imagenet_20210208-db26f1a5.log.json) | -| VGG-19 | 143.67 | 19.67 | 72.41 | 90.80 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg19_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg19_batch256_imagenet_20210208-e6920e4a.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg19_batch256_imagenet_20210208-e6920e4a.log.json)| -| VGG-11-BN | 132.87 | 7.64 | 70.67 | 90.16 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg11bn_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_bn_batch256_imagenet_20210207-f244902c.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_bn_batch256_imagenet_20210207-f244902c.log.json) | -| VGG-13-BN | 133.05 | 11.36 | 72.12 | 90.66 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg13bn_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg13_bn_batch256_imagenet_20210207-1a8b7864.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg13_bn_batch256_imagenet_20210207-1a8b7864.log.json) | -| VGG-16-BN | 138.37 | 15.53 | 73.74 | 91.66 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg16_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_bn_batch256_imagenet_20210208-7e55cd29.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_bn_batch256_imagenet_20210208-7e55cd29.log.json) | -| VGG-19-BN | 143.68 | 19.7 | 74.68 | 92.27 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg19bn_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg19_bn_batch256_imagenet_20210208-da620c4f.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg19_bn_batch256_imagenet_20210208-da620c4f.log.json)| +| VGG-11 | 132.86 | 7.63 | 68.75 | 88.87 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg11_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_batch256_imagenet_20210208-4271cd6c.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_batch256_imagenet_20210208-4271cd6c.log.json) | +| VGG-13 | 133.05 | 11.34 | 70.02 | 89.46 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg13_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg13_batch256_imagenet_20210208-4d1d6080.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg13_batch256_imagenet_20210208-4d1d6080.log.json) | +| VGG-16 | 138.36 | 15.5 | 71.62 | 90.49 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg16_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_batch256_imagenet_20210208-db26f1a5.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_batch256_imagenet_20210208-db26f1a5.log.json) | +| VGG-19 | 143.67 | 19.67 | 72.41 | 90.80 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg19_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg19_batch256_imagenet_20210208-e6920e4a.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg19_batch256_imagenet_20210208-e6920e4a.log.json)| +| VGG-11-BN | 132.87 | 7.64 | 70.67 | 90.16 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg11bn_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_bn_batch256_imagenet_20210207-f244902c.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_bn_batch256_imagenet_20210207-f244902c.log.json) | +| VGG-13-BN | 133.05 | 11.36 | 72.12 | 90.66 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg13bn_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg13_bn_batch256_imagenet_20210207-1a8b7864.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg13_bn_batch256_imagenet_20210207-1a8b7864.log.json) | +| VGG-16-BN | 138.37 | 15.53 | 73.74 | 91.66 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg16_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_bn_batch256_imagenet_20210208-7e55cd29.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_bn_batch256_imagenet_20210208-7e55cd29.log.json) | +| VGG-19-BN | 143.68 | 19.7 | 74.68 | 92.27 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg19bn_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg19_bn_batch256_imagenet_20210208-da620c4f.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg19_bn_batch256_imagenet_20210208-da620c4f.log.json)| diff --git a/configs/vgg/metafile.yml b/configs/vgg/metafile.yml index 0c944812008..4410c950db5 100644 --- a/configs/vgg/metafile.yml +++ b/configs/vgg/metafile.yml @@ -19,7 +19,7 @@ Collections: Version: v0.15.0 Models: - - Name: vgg11_b32x8_imagenet + - Name: vgg11_8xb32_in1k Metadata: FLOPs: 7630000000 Parameters: 132860000 @@ -31,8 +31,8 @@ Models: Top 5 Accuracy: 88.87 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_batch256_imagenet_20210208-4271cd6c.pth - Config: configs/vgg/vgg11_b32x8_imagenet.py - - Name: vgg13_b32x8_imagenet + Config: configs/vgg/vgg11_8xb32_in1k.py + - Name: vgg13_8xb32_in1k Metadata: FLOPs: 11340000000 Parameters: 133050000 @@ -44,8 +44,8 @@ Models: Top 5 Accuracy: 89.46 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/vgg/vgg13_batch256_imagenet_20210208-4d1d6080.pth - Config: configs/vgg/vgg13_b32x8_imagenet.py - - Name: vgg16_b32x8_imagenet + Config: configs/vgg/vgg13_8xb32_in1k.py + - Name: vgg16_8xb32_in1k Metadata: FLOPs: 15500000000 Parameters: 138360000 @@ -57,8 +57,8 @@ Models: Top 5 Accuracy: 90.49 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_batch256_imagenet_20210208-db26f1a5.pth - Config: configs/vgg/vgg16_b32x8_imagenet.py - - Name: vgg19_b32x8_imagenet + Config: configs/vgg/vgg16_8xb32_in1k.py + - Name: vgg19_8xb32_in1k Metadata: FLOPs: 19670000000 Parameters: 143670000 @@ -70,8 +70,8 @@ Models: Top 5 Accuracy: 90.8 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/vgg/vgg19_batch256_imagenet_20210208-e6920e4a.pth - Config: configs/vgg/vgg19_b32x8_imagenet.py - - Name: vgg11bn_b32x8_imagenet + Config: configs/vgg/vgg19_8xb32_in1k.py + - Name: vgg11bn_8xb32_in1k Metadata: FLOPs: 7640000000 Parameters: 132870000 @@ -83,8 +83,8 @@ Models: Top 5 Accuracy: 90.16 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_bn_batch256_imagenet_20210207-f244902c.pth - Config: configs/vgg/vgg11bn_b32x8_imagenet.py - - Name: vgg13bn_b32x8_imagenet + Config: configs/vgg/vgg11bn_8xb32_in1k.py + - Name: vgg13bn_8xb32_in1k Metadata: FLOPs: 11360000000 Parameters: 133050000 @@ -96,8 +96,8 @@ Models: Top 5 Accuracy: 90.66 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/vgg/vgg13_bn_batch256_imagenet_20210207-1a8b7864.pth - Config: configs/vgg/vgg13bn_b32x8_imagenet.py - - Name: vgg16bn_b32x8_imagenet + Config: configs/vgg/vgg13bn_8xb32_in1k.py + - Name: vgg16bn_8xb32_in1k Metadata: FLOPs: 15530000000 Parameters: 138370000 @@ -109,8 +109,8 @@ Models: Top 5 Accuracy: 91.66 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_bn_batch256_imagenet_20210208-7e55cd29.pth - Config: configs/vgg/vgg16bn_b32x8_imagenet.py - - Name: vgg19bn_b32x8_imagenet + Config: configs/vgg/vgg16bn_8xb32_in1k.py + - Name: vgg19bn_8xb32_in1k Metadata: FLOPs: 19700000000 Parameters: 143680000 @@ -122,4 +122,4 @@ Models: Top 5 Accuracy: 92.27 Task: Image Classification Weights: https://download.openmmlab.com/mmclassification/v0/vgg/vgg19_bn_batch256_imagenet_20210208-da620c4f.pth - Config: configs/vgg/vgg19bn_b32x8_imagenet.py + Config: configs/vgg/vgg19bn_8xb32_in1k.py diff --git a/configs/vgg/vgg11_8xb32_in1k.py b/configs/vgg/vgg11_8xb32_in1k.py new file mode 100644 index 00000000000..c5742bcb981 --- /dev/null +++ b/configs/vgg/vgg11_8xb32_in1k.py @@ -0,0 +1,7 @@ +_base_ = [ + '../_base_/models/vgg11.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256.py', + '../_base_/default_runtime.py', +] +optimizer = dict(lr=0.01) diff --git a/configs/vgg/vgg11_b32x8_imagenet.py b/configs/vgg/vgg11_b32x8_imagenet.py index c5742bcb981..b15396be55f 100644 --- a/configs/vgg/vgg11_b32x8_imagenet.py +++ b/configs/vgg/vgg11_b32x8_imagenet.py @@ -1,7 +1,6 @@ -_base_ = [ - '../_base_/models/vgg11.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256.py', - '../_base_/default_runtime.py', -] -optimizer = dict(lr=0.01) +_base_ = 'vgg11_8xb32_in1k.py' + +_deprecation_ = dict( + expected='vgg11_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/vgg/vgg11bn_8xb32_in1k.py b/configs/vgg/vgg11bn_8xb32_in1k.py new file mode 100644 index 00000000000..4ead074bfbd --- /dev/null +++ b/configs/vgg/vgg11bn_8xb32_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/vgg11bn.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/vgg/vgg11bn_b32x8_imagenet.py b/configs/vgg/vgg11bn_b32x8_imagenet.py index 4ead074bfbd..350c9befebf 100644 --- a/configs/vgg/vgg11bn_b32x8_imagenet.py +++ b/configs/vgg/vgg11bn_b32x8_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/vgg11bn.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'vgg11bn_8xb32_in1k.py' + +_deprecation_ = dict( + expected='vgg11bn_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/vgg/vgg13_8xb32_in1k.py b/configs/vgg/vgg13_8xb32_in1k.py new file mode 100644 index 00000000000..50d26f3d2b3 --- /dev/null +++ b/configs/vgg/vgg13_8xb32_in1k.py @@ -0,0 +1,6 @@ +_base_ = [ + '../_base_/models/vgg13.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] +optimizer = dict(lr=0.01) diff --git a/configs/vgg/vgg13_b32x8_imagenet.py b/configs/vgg/vgg13_b32x8_imagenet.py index 50d26f3d2b3..6198ca2ca17 100644 --- a/configs/vgg/vgg13_b32x8_imagenet.py +++ b/configs/vgg/vgg13_b32x8_imagenet.py @@ -1,6 +1,6 @@ -_base_ = [ - '../_base_/models/vgg13.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] -optimizer = dict(lr=0.01) +_base_ = 'vgg13_8xb32_in1k.py' + +_deprecation_ = dict( + expected='vgg13_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/vgg/vgg13bn_8xb32_in1k.py b/configs/vgg/vgg13bn_8xb32_in1k.py new file mode 100644 index 00000000000..8d22a81729b --- /dev/null +++ b/configs/vgg/vgg13bn_8xb32_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/vgg13bn.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/vgg/vgg13bn_b32x8_imagenet.py b/configs/vgg/vgg13bn_b32x8_imagenet.py index 8d22a81729b..0a715d7fb81 100644 --- a/configs/vgg/vgg13bn_b32x8_imagenet.py +++ b/configs/vgg/vgg13bn_b32x8_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/vgg13bn.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'vgg13bn_8xb32_in1k.py' + +_deprecation_ = dict( + expected='vgg13bn_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/vgg/vgg16_8xb16_voc.py b/configs/vgg/vgg16_8xb16_voc.py new file mode 100644 index 00000000000..d096959f293 --- /dev/null +++ b/configs/vgg/vgg16_8xb16_voc.py @@ -0,0 +1,25 @@ +_base_ = ['../_base_/datasets/voc_bs16.py', '../_base_/default_runtime.py'] + +# use different head for multilabel task +model = dict( + type='ImageClassifier', + backbone=dict(type='VGG', depth=16, num_classes=20), + neck=None, + head=dict( + type='MultiLabelClsHead', + loss=dict(type='CrossEntropyLoss', use_sigmoid=True, loss_weight=1.0))) + +# load model pretrained on imagenet +load_from = 'https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_batch256_imagenet_20210208-db26f1a5.pth' # noqa + +# optimizer +optimizer = dict( + type='SGD', + lr=0.001, + momentum=0.9, + weight_decay=0, + paramwise_cfg=dict(custom_keys={'.backbone.classifier': dict(lr_mult=10)})) +optimizer_config = dict(grad_clip=None) +# learning policy +lr_config = dict(policy='step', step=20, gamma=0.1) +runner = dict(type='EpochBasedRunner', max_epochs=40) diff --git a/configs/vgg/vgg16_8xb32_in1k.py b/configs/vgg/vgg16_8xb32_in1k.py new file mode 100644 index 00000000000..55cd9fc4ab6 --- /dev/null +++ b/configs/vgg/vgg16_8xb32_in1k.py @@ -0,0 +1,6 @@ +_base_ = [ + '../_base_/models/vgg16.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] +optimizer = dict(lr=0.01) diff --git a/configs/vgg/vgg16_b16x8_voc.py b/configs/vgg/vgg16_b16x8_voc.py index d096959f293..06225e72205 100644 --- a/configs/vgg/vgg16_b16x8_voc.py +++ b/configs/vgg/vgg16_b16x8_voc.py @@ -1,25 +1,6 @@ -_base_ = ['../_base_/datasets/voc_bs16.py', '../_base_/default_runtime.py'] +_base_ = 'vgg16_8xb16_voc.py' -# use different head for multilabel task -model = dict( - type='ImageClassifier', - backbone=dict(type='VGG', depth=16, num_classes=20), - neck=None, - head=dict( - type='MultiLabelClsHead', - loss=dict(type='CrossEntropyLoss', use_sigmoid=True, loss_weight=1.0))) - -# load model pretrained on imagenet -load_from = 'https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_batch256_imagenet_20210208-db26f1a5.pth' # noqa - -# optimizer -optimizer = dict( - type='SGD', - lr=0.001, - momentum=0.9, - weight_decay=0, - paramwise_cfg=dict(custom_keys={'.backbone.classifier': dict(lr_mult=10)})) -optimizer_config = dict(grad_clip=None) -# learning policy -lr_config = dict(policy='step', step=20, gamma=0.1) -runner = dict(type='EpochBasedRunner', max_epochs=40) +_deprecation_ = dict( + expected='vgg16_8xb16_voc.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/vgg/vgg16_b32x8_imagenet.py b/configs/vgg/vgg16_b32x8_imagenet.py index 55cd9fc4ab6..2fefb94977f 100644 --- a/configs/vgg/vgg16_b32x8_imagenet.py +++ b/configs/vgg/vgg16_b32x8_imagenet.py @@ -1,6 +1,6 @@ -_base_ = [ - '../_base_/models/vgg16.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] -optimizer = dict(lr=0.01) +_base_ = 'vgg16_8xb32_in1k.py' + +_deprecation_ = dict( + expected='vgg16_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/vgg/vgg16bn_8xb32_in1k.py b/configs/vgg/vgg16bn_8xb32_in1k.py new file mode 100644 index 00000000000..60674c71447 --- /dev/null +++ b/configs/vgg/vgg16bn_8xb32_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/vgg16bn.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/vgg/vgg16bn_b32x8_imagenet.py b/configs/vgg/vgg16bn_b32x8_imagenet.py index 60674c71447..cb21917f578 100644 --- a/configs/vgg/vgg16bn_b32x8_imagenet.py +++ b/configs/vgg/vgg16bn_b32x8_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/vgg16bn.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'vgg16bn_8xb32_in1k.py' + +_deprecation_ = dict( + expected='vgg16bn_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/vgg/vgg19_8xb32_in1k.py b/configs/vgg/vgg19_8xb32_in1k.py new file mode 100644 index 00000000000..6b033c90b6d --- /dev/null +++ b/configs/vgg/vgg19_8xb32_in1k.py @@ -0,0 +1,6 @@ +_base_ = [ + '../_base_/models/vgg19.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] +optimizer = dict(lr=0.01) diff --git a/configs/vgg/vgg19_b32x8_imagenet.py b/configs/vgg/vgg19_b32x8_imagenet.py index 6b033c90b6d..e8b8b25a1a2 100644 --- a/configs/vgg/vgg19_b32x8_imagenet.py +++ b/configs/vgg/vgg19_b32x8_imagenet.py @@ -1,6 +1,6 @@ -_base_ = [ - '../_base_/models/vgg19.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] -optimizer = dict(lr=0.01) +_base_ = 'vgg19_8xb32_in1k.py' + +_deprecation_ = dict( + expected='vgg19_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/configs/vgg/vgg19bn_8xb32_in1k.py b/configs/vgg/vgg19bn_8xb32_in1k.py new file mode 100644 index 00000000000..18a1897f652 --- /dev/null +++ b/configs/vgg/vgg19bn_8xb32_in1k.py @@ -0,0 +1,5 @@ +_base_ = [ + '../_base_/models/vgg19bn.py', + '../_base_/datasets/imagenet_bs32_pil_resize.py', + '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' +] diff --git a/configs/vgg/vgg19bn_b32x8_imagenet.py b/configs/vgg/vgg19bn_b32x8_imagenet.py index 18a1897f652..f615496c2ce 100644 --- a/configs/vgg/vgg19bn_b32x8_imagenet.py +++ b/configs/vgg/vgg19bn_b32x8_imagenet.py @@ -1,5 +1,6 @@ -_base_ = [ - '../_base_/models/vgg19bn.py', - '../_base_/datasets/imagenet_bs32_pil_resize.py', - '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' -] +_base_ = 'vgg19bn_8xb32_in1k.py' + +_deprecation_ = dict( + expected='vgg19bn_8xb32_in1k.py', + reference='https://github.com/open-mmlab/mmclassification/pull/508', +) diff --git a/docs/getting_started.md b/docs/getting_started.md index 0e3042d5673..e45c7e138e7 100644 --- a/docs/getting_started.md +++ b/docs/getting_started.md @@ -51,7 +51,7 @@ We provide scripts to inference a single image, inference a dataset and test a d python demo/image_demo.py ${IMAGE_FILE} ${CONFIG_FILE} ${CHECKPOINT_FILE} # Example -python demo/image_demo.py demo/demo.JPEG configs/resnet/resnet50_b32x8_imagenet.py \ +python demo/image_demo.py demo/demo.JPEG configs/resnet/resnet50_8xb32_in1k.py \ https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_8xb32_in1k_20210831-ea4938fc.pth ``` @@ -85,7 +85,7 @@ Assume that you have already downloaded the checkpoints to the directory `checkp Infer ResNet-50 on ImageNet validation set to get predicted labels and their corresponding predicted scores. ```shell -python tools/test.py configs/resnet/resnet50_b16x8_cifar10.py \ +python tools/test.py configs/resnet/resnet50_8xb16_cifar10.py \ https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_b16x8_cifar10_20210528-f54bfad9.pth \ --out result.pkl ``` diff --git a/docs/model_zoo.md b/docs/model_zoo.md index dc4163569d9..5c5f386ea58 100644 --- a/docs/model_zoo.md +++ b/docs/model_zoo.md @@ -7,14 +7,14 @@ The ResNet family models below are trained by standard data augmentations, i.e., | Model | Params(M) | Flops(G) | Top-1 (%) | Top-5 (%) | Config | Download | |:---------------------:|:---------:|:--------:|:---------:|:---------:|:---------:|:--------:| -| VGG-11 | 132.86 | 7.63 | 68.75 | 88.87 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg11_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_batch256_imagenet_20210208-4271cd6c.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_batch256_imagenet_20210208-4271cd6c.log.json) | -| VGG-13 | 133.05 | 11.34 | 70.02 | 89.46 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg13_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg13_batch256_imagenet_20210208-4d1d6080.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg13_batch256_imagenet_20210208-4d1d6080.log.json) | -| VGG-16 | 138.36 | 15.5 | 71.62 | 90.49 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg16_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_batch256_imagenet_20210208-db26f1a5.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_batch256_imagenet_20210208-db26f1a5.log.json) | -| VGG-19 | 143.67 | 19.67 | 72.41 | 90.80 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg19_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg19_batch256_imagenet_20210208-e6920e4a.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg19_batch256_imagenet_20210208-e6920e4a.log.json)| -| VGG-11-BN | 132.87 | 7.64 | 70.75 | 90.12 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg11bn_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_bn_batch256_imagenet_20210207-f244902c.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_bn_batch256_imagenet_20210207-f244902c.log.json) | -| VGG-13-BN | 133.05 | 11.36 | 72.15 | 90.71 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg13bn_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg13_bn_batch256_imagenet_20210207-1a8b7864.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg13_bn_batch256_imagenet_20210207-1a8b7864.log.json) | -| VGG-16-BN | 138.37 | 15.53 | 73.72 | 91.68 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg16_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_bn_batch256_imagenet_20210208-7e55cd29.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_bn_batch256_imagenet_20210208-7e55cd29.log.json) | -| VGG-19-BN | 143.68 | 19.7 | 74.70 | 92.24 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg19bn_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg19_bn_batch256_imagenet_20210208-da620c4f.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg19_bn_batch256_imagenet_20210208-da620c4f.log.json)| +| VGG-11 | 132.86 | 7.63 | 68.75 | 88.87 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg11_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_batch256_imagenet_20210208-4271cd6c.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_batch256_imagenet_20210208-4271cd6c.log.json) | +| VGG-13 | 133.05 | 11.34 | 70.02 | 89.46 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg13_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg13_batch256_imagenet_20210208-4d1d6080.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg13_batch256_imagenet_20210208-4d1d6080.log.json) | +| VGG-16 | 138.36 | 15.5 | 71.62 | 90.49 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg16_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_batch256_imagenet_20210208-db26f1a5.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_batch256_imagenet_20210208-db26f1a5.log.json) | +| VGG-19 | 143.67 | 19.67 | 72.41 | 90.80 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg19_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg19_batch256_imagenet_20210208-e6920e4a.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg19_batch256_imagenet_20210208-e6920e4a.log.json)| +| VGG-11-BN | 132.87 | 7.64 | 70.75 | 90.12 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg11bn_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_bn_batch256_imagenet_20210207-f244902c.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg11_bn_batch256_imagenet_20210207-f244902c.log.json) | +| VGG-13-BN | 133.05 | 11.36 | 72.15 | 90.71 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg13bn_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg13_bn_batch256_imagenet_20210207-1a8b7864.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg13_bn_batch256_imagenet_20210207-1a8b7864.log.json) | +| VGG-16-BN | 138.37 | 15.53 | 73.72 | 91.68 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg16_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_bn_batch256_imagenet_20210208-7e55cd29.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg16_bn_batch256_imagenet_20210208-7e55cd29.log.json) | +| VGG-19-BN | 143.68 | 19.7 | 74.70 | 92.24 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vgg/vgg19bn_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/vgg/vgg19_bn_batch256_imagenet_20210208-da620c4f.pth) | [log](https://download.openmmlab.com/mmclassification/v0/vgg/vgg19_bn_batch256_imagenet_20210208-da620c4f.log.json)| | RepVGG-A0\* | 9.11(train) | 8.31 (deploy) | 1.52 (train) | 1.36 (deploy) | 72.41 | 90.50 | [config (train)](https://github.com/open-mmlab/mmclassification/blob/master/configs/repvgg/repvgg-A0_4xb64-coslr-120e_in1k.py) | [config (deploy)](https://github.com/open-mmlab/mmclassification/blob/master/configs/repvgg/deploy/repvgg-A0_deploy_4xb64-coslr-120e_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/repvgg/repvgg-A0_3rdparty_4xb64-coslr-120e_in1k_20210909-883ab98c.pth) | [log]() | | RepVGG-A1\* | 14.09 (train) | 12.79 (deploy) | 2.64 (train) | 2.37 (deploy) | 74.47 | 91.85 | [config (train)](https://github.com/open-mmlab/mmclassification/blob/master/configs/repvgg/repvgg-A1_4xb64-coslr-120e_in1k.py) | [config (deploy)](https://github.com/open-mmlab/mmclassification/blob/master/configs/repvgg/deploy/repvgg-A1_deploy_4xb64-coslr-120e_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/repvgg/repvgg-A1_3rdparty_4xb64-coslr-120e_in1k_20210909-24003a24.pth) | [log]() | | RepVGG-A2\* | 28.21 (train) | 25.5 (deploy) | 5.7 (train) | 5.12 (deploy) | 76.48 | 93.01 | [config (train)](https://github.com/open-mmlab/mmclassification/blob/master/configs/repvgg/repvgg-A2_4xb64-coslr-120e_in1k.py) | [config (deploy)](https://github.com/open-mmlab/mmclassification/blob/master/configs/repvgg/deploy/repvgg-A2_deploy_4xb64-coslr-120e_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/repvgg/repvgg-A2_3rdparty_4xb64-coslr-120e_in1k_20210909-97d7695a.pth) | [log]() | @@ -27,11 +27,11 @@ The ResNet family models below are trained by standard data augmentations, i.e., | RepVGG-B3\* | 123.09 (train) | 110.96 (deploy) | 29.17 (train) | 26.22 (deploy) | 80.52 | 95.26 | [config (train)](https://github.com/open-mmlab/mmclassification/blob/master/configs/repvgg/repvgg-B3_4xb64-autoaug-lbs-mixup-coslr-200e_in1k.py) | [config (deploy)](https://github.com/open-mmlab/mmclassification/blob/master/configs/repvgg/deploy/repvgg-B3_deploy_4xb64-autoaug-lbs-mixup-coslr-200e_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/repvgg/repvgg-B3_3rdparty_4xb64-autoaug-lbs-mixup-coslr-200e_in1k_20210909-dda968bf.pth) | [log]() | | RepVGG-B3g4\* | 83.83 (train) | 75.63 (deploy) | 17.9 (train) | 16.08 (deploy) | 80.22 | 95.10 | [config (train)](https://github.com/open-mmlab/mmclassification/blob/master/configs/repvgg/repvgg-B3g4_4xb64-autoaug-lbs-mixup-coslr-200e_in1k.py) | [config (deploy)](https://github.com/open-mmlab/mmclassification/blob/master/configs/repvgg/deploy/repvgg-B3g4_deploy_4xb64-autoaug-lbs-mixup-coslr-200e_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/repvgg/repvgg-B3g4_3rdparty_4xb64-autoaug-lbs-mixup-coslr-200e_in1k_20210909-4e54846a.pth) | [log]() | | RepVGG-D2se\* | 133.33 (train) | 120.39 (deploy) | 36.56 (train) | 32.85 (deploy) | 81.81 | 95.94 | [config (train)](https://github.com/open-mmlab/mmclassification/blob/master/configs/repvgg/repvgg-D2se_4xb64-autoaug-lbs-mixup-coslr-200e_in1k.py) | [config (deploy)](https://github.com/open-mmlab/mmclassification/blob/master/configs/repvgg/deploy/repvgg-D2se_deploy_4xb64-autoaug-lbs-mixup-coslr-200e_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/repvgg/repvgg-D2se_3rdparty_4xb64-autoaug-lbs-mixup-coslr-200e_in1k_20210909-cf3139b7.pth) | [log]() | -| ResNet-18 | 11.69 | 1.82 | 70.07 | 89.44 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet18_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_batch256_imagenet_20200708-34ab8f90.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_batch256_imagenet_20200708-34ab8f90.log.json) | -| ResNet-34 | 21.8 | 3.68 | 73.85 | 91.53 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet34_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_batch256_imagenet_20200708-32ffb4f7.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_batch256_imagenet_20200708-32ffb4f7.log.json) | -| ResNet-50 | 25.56 | 4.12 | 76.55 | 93.15 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet50_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_batch256_imagenet_20200708-cfb998bf.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_batch256_imagenet_20200708-cfb998bf.log.json) | -| ResNet-101 | 44.55 | 7.85 | 78.18 | 94.03 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet101_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet101_batch256_imagenet_20200708-753f3608.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet101_batch256_imagenet_20200708-753f3608.log.json) | -| ResNet-152 | 60.19 | 11.58 | 78.63 | 94.16 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet152_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet152_batch256_imagenet_20200708-ec25b1f9.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet152_batch256_imagenet_20200708-ec25b1f9.log.json) | +| ResNet-18 | 11.69 | 1.82 | 70.07 | 89.44 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet18_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_batch256_imagenet_20200708-34ab8f90.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_batch256_imagenet_20200708-34ab8f90.log.json) | +| ResNet-34 | 21.8 | 3.68 | 73.85 | 91.53 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet34_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_batch256_imagenet_20200708-32ffb4f7.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_batch256_imagenet_20200708-32ffb4f7.log.json) | +| ResNet-50 | 25.56 | 4.12 | 76.55 | 93.15 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet50_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_batch256_imagenet_20200708-cfb998bf.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_batch256_imagenet_20200708-cfb998bf.log.json) | +| ResNet-101 | 44.55 | 7.85 | 78.18 | 94.03 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet101_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet101_batch256_imagenet_20200708-753f3608.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet101_batch256_imagenet_20200708-753f3608.log.json) | +| ResNet-152 | 60.19 | 11.58 | 78.63 | 94.16 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet152_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet152_batch256_imagenet_20200708-ec25b1f9.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet152_batch256_imagenet_20200708-ec25b1f9.log.json) | | Res2Net-50-14w-8s\* | 25.06 | 4.22 | 78.14 | 93.85 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/res2net/res2net50-w14-s8_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/res2net/res2net50-w14-s8_3rdparty_8xb32_in1k_20210927-bc967bf1.pth) | [log]()| | Res2Net-50-26w-8s\* | 48.40 | 8.39 | 79.20 | 94.36 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/res2net/res2net50-w26-s8_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/res2net/res2net50-w26-s8_3rdparty_8xb32_in1k_20210927-f547a94b.pth) | [log]()| | Res2Net-101-26w-4s\* | 45.21 | 8.12 | 79.19 | 94.44 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/res2net/res2net101-w26-s4_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/res2net/res2net101-w26-s4_3rdparty_8xb32_in1k_20210927-870b6c36.pth) | [log]()| @@ -39,25 +39,25 @@ The ResNet family models below are trained by standard data augmentations, i.e., | ResNeSt-101\* | 48.28 | 10.27 | 82.32 | 96.24 | | [model](https://download.openmmlab.com/mmclassification/v0/resnest/resnest101_imagenet_converted-032caa52.pth) | [log]() | | ResNeSt-200\* | 70.2 | 17.53 | 82.41 | 96.22 | | [model](https://download.openmmlab.com/mmclassification/v0/resnest/resnest200_imagenet_converted-581a60f2.pth) | [log]() | | ResNeSt-269\* | 110.93 | 22.58 | 82.70 | 96.28 | | [model](https://download.openmmlab.com/mmclassification/v0/resnest/resnest269_imagenet_converted-59930960.pth) | [log]() | -| ResNetV1D-50 | 25.58 | 4.36 | 77.54 | 93.57 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnetv1d50_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d50_b32x8_imagenet_20210531-db14775a.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d50_b32x8_imagenet_20210531-db14775a.log.json) | -| ResNetV1D-101 | 44.57 | 8.09 | 78.93 | 94.48 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnetv1d101_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d101_b32x8_imagenet_20210531-6e13bcd3.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d101_b32x8_imagenet_20210531-6e13bcd3.log.json) | -| ResNetV1D-152 | 60.21 | 11.82 | 79.41 | 94.7 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnetv1d152_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d152_b32x8_imagenet_20210531-278cf22a.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d152_b32x8_imagenet_20210531-278cf22a.log.json) | -| ResNeXt-32x4d-50 | 25.03 | 4.27 | 77.90 | 93.66 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnext/resnext50_32x4d_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnext/resnext50_32x4d_b32x8_imagenet_20210429-56066e27.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnext/resnext50_32x4d_b32x8_imagenet_20210429-56066e27.log.json) | -| ResNeXt-32x4d-101 | 44.18 | 8.03 | 78.71 | 94.12 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnext/resnext101_32x4d_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnext/resnext101_32x4d_b32x8_imagenet_20210506-e0fa3dd5.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnext/resnext101_32x4d_b32x8_imagenet_20210506-e0fa3dd5.log.json) | -| ResNeXt-32x8d-101 | 88.79 | 16.5 | 79.23 | 94.58 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnext/resnext101_32x8d_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnext/resnext101_32x8d_b32x8_imagenet_20210506-23a247d5.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnext/resnext101_32x8d_b32x8_imagenet_20210506-23a247d5.log.json) | -| ResNeXt-32x4d-152 | 59.95 | 11.8 | 78.93 | 94.41 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnext/resnext152_32x4d_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnext/resnext152_32x4d_b32x8_imagenet_20210524-927787be.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnext/resnext152_32x4d_b32x8_imagenet_20210524-927787be.log.json) | -| SE-ResNet-50 | 28.09 | 4.13 | 77.74 | 93.84 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/seresnet/seresnet50_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet50_batch256_imagenet_20200804-ae206104.pth) | [log](https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet50_batch256_imagenet_20200708-657b3c36.log.json) | -| SE-ResNet-101 | 49.33 | 7.86 | 78.26 | 94.07 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/seresnet/seresnet101_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet101_batch256_imagenet_20200804-ba5b51d4.pth) | [log](https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet101_batch256_imagenet_20200708-038a4d04.log.json) | -| ShuffleNetV1 1.0x (group=3) | 1.87 | 0.146 | 68.13 | 87.81 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/shufflenet_v1/shufflenet_v1_1x_b64x16_linearlr_bn_nowd_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/shufflenet_v1/shufflenet_v1_batch1024_imagenet_20200804-5d6cec73.pth) | [log](https://download.openmmlab.com/mmclassification/v0/shufflenet_v1/shufflenet_v1_batch1024_imagenet_20200804-5d6cec73.log.json) | -| ShuffleNetV2 1.0x | 2.28 | 0.149 | 69.55 | 88.92 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/shufflenet_v2/shufflenet_v2_1x_b64x16_linearlr_bn_nowd_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/shufflenet_v2/shufflenet_v2_batch1024_imagenet_20200812-5bf4721e.pth) | [log](https://download.openmmlab.com/mmclassification/v0/shufflenet_v2/shufflenet_v2_batch1024_imagenet_20200804-8860eec9.log.json) | -| MobileNet V2 | 3.5 | 0.319 | 71.86 | 90.42 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/mobilenet_v2/mobilenet_v2_batch256_imagenet_20200708-3b2dc3af.pth) | [log](https://download.openmmlab.com/mmclassification/v0/mobilenet_v2/mobilenet_v2_batch256_imagenet_20200708-3b2dc3af.log.json) | +| ResNetV1D-50 | 25.58 | 4.36 | 77.54 | 93.57 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnetv1d50_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d50_b32x8_imagenet_20210531-db14775a.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d50_b32x8_imagenet_20210531-db14775a.log.json) | +| ResNetV1D-101 | 44.57 | 8.09 | 78.93 | 94.48 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnetv1d101_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d101_b32x8_imagenet_20210531-6e13bcd3.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d101_b32x8_imagenet_20210531-6e13bcd3.log.json) | +| ResNetV1D-152 | 60.21 | 11.82 | 79.41 | 94.7 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnetv1d152_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d152_b32x8_imagenet_20210531-278cf22a.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnetv1d152_b32x8_imagenet_20210531-278cf22a.log.json) | +| ResNeXt-32x4d-50 | 25.03 | 4.27 | 77.90 | 93.66 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnext/resnext50-32x4d_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnext/resnext50_32x4d_b32x8_imagenet_20210429-56066e27.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnext/resnext50_32x4d_b32x8_imagenet_20210429-56066e27.log.json) | +| ResNeXt-32x4d-101 | 44.18 | 8.03 | 78.71 | 94.12 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnext/resnext101-32x4d_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnext/resnext101_32x4d_b32x8_imagenet_20210506-e0fa3dd5.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnext/resnext101_32x4d_b32x8_imagenet_20210506-e0fa3dd5.log.json) | +| ResNeXt-32x8d-101 | 88.79 | 16.5 | 79.23 | 94.58 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnext/resnext101-32x8d_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnext/resnext101_32x8d_b32x8_imagenet_20210506-23a247d5.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnext/resnext101_32x8d_b32x8_imagenet_20210506-23a247d5.log.json) | +| ResNeXt-32x4d-152 | 59.95 | 11.8 | 78.93 | 94.41 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnext/resnext152-32x4d_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnext/resnext152_32x4d_b32x8_imagenet_20210524-927787be.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnext/resnext152_32x4d_b32x8_imagenet_20210524-927787be.log.json) | +| SE-ResNet-50 | 28.09 | 4.13 | 77.74 | 93.84 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/seresnet/seresnet50_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet50_batch256_imagenet_20200804-ae206104.pth) | [log](https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet50_batch256_imagenet_20200708-657b3c36.log.json) | +| SE-ResNet-101 | 49.33 | 7.86 | 78.26 | 94.07 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/seresnet/seresnet101_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet101_batch256_imagenet_20200804-ba5b51d4.pth) | [log](https://download.openmmlab.com/mmclassification/v0/se-resnet/se-resnet101_batch256_imagenet_20200708-038a4d04.log.json) | +| ShuffleNetV1 1.0x (group=3) | 1.87 | 0.146 | 68.13 | 87.81 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/shufflenet_v1/shufflenet-v1-1x_16xb64_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/shufflenet_v1/shufflenet_v1_batch1024_imagenet_20200804-5d6cec73.pth) | [log](https://download.openmmlab.com/mmclassification/v0/shufflenet_v1/shufflenet_v1_batch1024_imagenet_20200804-5d6cec73.log.json) | +| ShuffleNetV2 1.0x | 2.28 | 0.149 | 69.55 | 88.92 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/shufflenet_v2/shufflenet-v2-1x_16xb64_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/shufflenet_v2/shufflenet_v2_batch1024_imagenet_20200812-5bf4721e.pth) | [log](https://download.openmmlab.com/mmclassification/v0/shufflenet_v2/shufflenet_v2_batch1024_imagenet_20200804-8860eec9.log.json) | +| MobileNet V2 | 3.5 | 0.319 | 71.86 | 90.42 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/mobilenet_v2/mobilenet_v2_batch256_imagenet_20200708-3b2dc3af.pth) | [log](https://download.openmmlab.com/mmclassification/v0/mobilenet_v2/mobilenet_v2_batch256_imagenet_20200708-3b2dc3af.log.json) | | ViT-B/16\* | 86.86 | 33.03 | 85.43 | 97.77 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vision_transformer/vit-base-p16_ft-evalonly_in-1k-384.py) | [model](https://download.openmmlab.com/mmclassification/v0/vit/finetune/vit-base-p16_in21k-pre-3rdparty_in1k-384_20210819-65c4bf44.pth) | [log]() | | ViT-B/32\* | 88.3 | 8.56 | 84.01 | 97.08 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vision_transformer/vit-base-p32_ft-evalonly_in-1k-384.py) | [model](https://download.openmmlab.com/mmclassification/v0/vit/finetune/vit-base-p32_in21k-pre-3rdparty_in1k-384_20210819-a56f8886.pth) | [log]() | | ViT-L/16\* | 304.72 | 116.68 | 85.63 | 97.63 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/vision_transformer/vit-large-p16_ft-evalonly_in-1k-384.py) | [model](https://download.openmmlab.com/mmclassification/v0/vit/finetune/vit-large-p16_in21k-pre-3rdparty_in1k-384_20210819-0bb8550c.pth) | [log]() | -| Swin-Transformer tiny | 28.29 | 4.36 | 81.18 | 95.61 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/swin_transformer/swin_tiny_224_b16x64_300e_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_tiny_224_b16x64_300e_imagenet_20210616_090925-66df6be6.pth) | [log](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_tiny_224_b16x64_300e_imagenet_20210616_090925.log.json)| -| Swin-Transformer small| 49.61 | 8.52 | 83.02 | 96.29 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/swin_transformer/swin_small_224_b16x64_300e_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_small_224_b16x64_300e_imagenet_20210615_110219-7f9d988b.pth) | [log](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_small_224_b16x64_300e_imagenet_20210615_110219.log.json)| +| Swin-Transformer tiny | 28.29 | 4.36 | 81.18 | 95.61 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/swin_transformer/swin-tiny_16xb64_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_tiny_224_b16x64_300e_imagenet_20210616_090925-66df6be6.pth) | [log](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_tiny_224_b16x64_300e_imagenet_20210616_090925.log.json)| +| Swin-Transformer small| 49.61 | 8.52 | 83.02 | 96.29 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/swin_transformer/swin-small_16xb64_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_small_224_b16x64_300e_imagenet_20210615_110219-7f9d988b.pth) | [log](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_small_224_b16x64_300e_imagenet_20210615_110219.log.json)| | Swin-Transformer base | 87.77 | 15.14 | 83.36 | 96.44 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/swin_transformer/swin_base_224_b16x64_300e_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_base_224_b16x64_300e_imagenet_20210616_190742-93230b0d.pth) | [log](https://download.openmmlab.com/mmclassification/v0/swin-transformer/swin_base_224_b16x64_300e_imagenet_20210616_190742.log.json)| -| Transformer in Transformer small\* | 23.76 | 3.36 | 81.52 | 95.73 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/tnt/tnt_s_patch16_224_evalonly_imagenet.py) | [model](https://download.openmmlab.com/mmclassification/v0/tnt/tnt-small-p16_3rdparty_in1k_20210903-c56ee7df.pth) | [log]()| +| Transformer in Transformer small\* | 23.76 | 3.36 | 81.52 | 95.73 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/tnt/tnt-s-p16_16xb64_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/tnt/tnt-small-p16_3rdparty_in1k_20210903-c56ee7df.pth) | [log]()| | T2T-ViT_t-14\* | 21.47 | 4.34 | 81.69 | 95.85 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/t2t_vit/t2t-vit-t-14_8xb64_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/t2t-vit/t2t-vit-t-14_3rdparty_8xb64_in1k_20210928-420df0f6.pth) | [log]()| | T2T-ViT_t-19\* | 39.08 | 7.80 | 82.43 | 96.08 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/t2t_vit/t2t-vit-t-19_8xb64_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/t2t-vit/t2t-vit-t-19_3rdparty_8xb64_in1k_20210928-e479c2a6.pth) | [log]()| | T2T-ViT_t-24\* | 64.00 | 12.69 | 82.55 | 96.06 | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/t2t_vit/t2t-vit-t-24_8xb64_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/t2t-vit/t2t-vit-t-24_3rdparty_8xb64_in1k_20210928-b5bf2526.pth) | [log]()| @@ -68,8 +68,8 @@ Models with * are converted from other repos, others are trained by ourselves. | Model | Params(M) | Flops(G) | Top-1 (%) | Config | Download | |:---------------------:|:---------:|:--------:|:---------:|:--------:|:--------:| -| ResNet-18-b16x8 | 11.17 | 0.56 | 94.82 | | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet18_b16x8_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_b16x8_cifar10_20210528-bd6371c8.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_b16x8_cifar10_20210528-bd6371c8.log.json) | -| ResNet-34-b16x8 | 21.28 | 1.16 | 95.34 | | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet34_b16x8_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_b16x8_cifar10_20210528-a8aa36a6.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_b16x8_cifar10_20210528-a8aa36a6.log.json) | -| ResNet-50-b16x8 | 23.52 | 1.31 | 95.55 | | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet50_b16x8_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_b16x8_cifar10_20210528-f54bfad9.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_b16x8_cifar10_20210528-f54bfad9.log.json) | -| ResNet-101-b16x8 | 42.51 | 2.52 | 95.58 | | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet101_b16x8_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet101_b16x8_cifar10_20210528-2d29e936.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet101_b16x8_cifar10_20210528-2d29e936.log.json) | -| ResNet-152-b16x8 | 58.16 | 3.74 | 95.76 | | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet152_b16x8_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet152_b16x8_cifar10_20210528-3e8e9178.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet152_b16x8_cifar10_20210528-3e8e9178.log.json) | +| ResNet-18-b16x8 | 11.17 | 0.56 | 94.82 | | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet18_8xb16_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_b16x8_cifar10_20210528-bd6371c8.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_b16x8_cifar10_20210528-bd6371c8.log.json) | +| ResNet-34-b16x8 | 21.28 | 1.16 | 95.34 | | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet34_8xb16_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_b16x8_cifar10_20210528-a8aa36a6.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet34_b16x8_cifar10_20210528-a8aa36a6.log.json) | +| ResNet-50-b16x8 | 23.52 | 1.31 | 95.55 | | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet50_8xb16_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_b16x8_cifar10_20210528-f54bfad9.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_b16x8_cifar10_20210528-f54bfad9.log.json) | +| ResNet-101-b16x8 | 42.51 | 2.52 | 95.58 | | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet101_8xb16_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet101_b16x8_cifar10_20210528-2d29e936.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet101_b16x8_cifar10_20210528-2d29e936.log.json) | +| ResNet-152-b16x8 | 58.16 | 3.74 | 95.76 | | [config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet152_8xb16_cifar10.py) | [model](https://download.openmmlab.com/mmclassification/v0/resnet/resnet152_b16x8_cifar10_20210528-3e8e9178.pth) | [log](https://download.openmmlab.com/mmclassification/v0/resnet/resnet152_b16x8_cifar10_20210528-3e8e9178.log.json) | diff --git a/docs/tools/model_serving.md b/docs/tools/model_serving.md index 67efe67ec42..d633a0f32d4 100644 --- a/docs/tools/model_serving.md +++ b/docs/tools/model_serving.md @@ -18,7 +18,7 @@ Example: ```shell python tools/deployment/mmcls2torchserve.py \ - configs/resnet/resnet18_b32x8_imagenet.py \ + configs/resnet/resnet18_8xb32_in1k.py \ checkpoints/resnet18_8xb32_in1k_20210831-fbbb1da6.pth \ --output-folder ./checkpoints \ --model-name resnet18_in1k @@ -81,7 +81,7 @@ Example: ```shell python tools/deployment/test_torchserver.py \ demo/demo.JPEG \ - configs/resnet/resnet18_b32x8_imagenet.py \ + configs/resnet/resnet18_8xb32_in1k.py \ checkpoints/resnet18_8xb32_in1k_20210831-fbbb1da6.pth \ resnet18_in1k ``` diff --git a/docs/tools/onnx2tensorrt.md b/docs/tools/onnx2tensorrt.md index 7869dcf24c5..44aeeb6641d 100644 --- a/docs/tools/onnx2tensorrt.md +++ b/docs/tools/onnx2tensorrt.md @@ -61,11 +61,11 @@ The table below lists the models that are guaranteed to be convertible to Tensor | Model | Config | Status | | :----------: | :--------------------------------------------------------------------------: | :----: | -| MobileNetV2 | `configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py` | Y | -| ResNet | `configs/resnet/resnet18_b16x8_cifar10.py` | Y | -| ResNeXt | `configs/resnext/resnext50_32x4d_b32x8_imagenet.py` | Y | -| ShuffleNetV1 | `configs/shufflenet_v1/shufflenet_v1_1x_b64x16_linearlr_bn_nowd_imagenet.py` | Y | -| ShuffleNetV2 | `configs/shufflenet_v2/shufflenet_v2_1x_b64x16_linearlr_bn_nowd_imagenet.py` | Y | +| MobileNetV2 | `configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py` | Y | +| ResNet | `configs/resnet/resnet18_8xb16_cifar10.py` | Y | +| ResNeXt | `configs/resnext/resnext50-32x4d_8xb32_in1k.py` | Y | +| ShuffleNetV1 | `configs/shufflenet_v1/shufflenet-v1-1x_16xb64_in1k.py` | Y | +| ShuffleNetV2 | `configs/shufflenet_v2/shufflenet-v2-1x_16xb64_in1k.py` | Y | Notes: diff --git a/docs/tools/pytorch2onnx.md b/docs/tools/pytorch2onnx.md index b64aadf41d6..5b6b80c3f4d 100644 --- a/docs/tools/pytorch2onnx.md +++ b/docs/tools/pytorch2onnx.md @@ -60,9 +60,9 @@ Example: ```bash python tools/deployment/pytorch2onnx.py \ - configs/resnet/resnet18_b16x8_cifar10.py \ - --checkpoint checkpoints/resnet/resnet18_b16x8_cifar10.pth \ - --output-file checkpoints/resnet/resnet18_b16x8_cifar10.onnx \ + configs/resnet/resnet18_8xb16_cifar10.py \ + --checkpoint checkpoints/resnet/resnet18_8xb16_cifar10.pth \ + --output-file checkpoints/resnet/resnet18_8xb16_cifar10.onnx \ --dynamic-export \ --show \ --simplify \ @@ -124,7 +124,7 @@ This part selects ImageNet for onnxruntime verification. ImageNet has multiple v ResNet - resnet50_b32x8_imagenet.py + resnet50_8xb32_in1k.py Top 1 / 5 76.55 / 93.15 76.49 / 93.22 @@ -133,7 +133,7 @@ This part selects ImageNet for onnxruntime verification. ImageNet has multiple v ResNeXt - resnext50_32x4d_b32x8_imagenet.py + resnext50-32x4d_8xb32_in1k.py Top 1 / 5 77.90 / 93.66 77.90 / 93.66 @@ -142,7 +142,7 @@ This part selects ImageNet for onnxruntime verification. ImageNet has multiple v SE-ResNet - seresnet50_b32x8_imagenet.py + seresnet50_8xb32_in1k.py Top 1 / 5 77.74 / 93.84 77.74 / 93.84 @@ -151,7 +151,7 @@ This part selects ImageNet for onnxruntime verification. ImageNet has multiple v ShuffleNetV1 - shufflenet_v1_1x_b64x16_linearlr_bn_nowd_imagenet.py + shufflenet-v1-1x_16xb64_in1k.py Top 1 / 5 68.13 / 87.81 68.13 / 87.81 @@ -160,7 +160,7 @@ This part selects ImageNet for onnxruntime verification. ImageNet has multiple v ShuffleNetV2 - shufflenet_v2_1x_b64x16_linearlr_bn_nowd_imagenet.py + shufflenet-v2-1x_16xb64_in1k.py Top 1 / 5 69.55 / 88.92 69.55 / 88.92 @@ -169,7 +169,7 @@ This part selects ImageNet for onnxruntime verification. ImageNet has multiple v MobileNetV2 - mobilenet_v2_b32x8_imagenet.py + mobilenet-v2_8xb32_in1k.py Top 1 / 5 71.86 / 90.42 71.86 / 90.42 @@ -182,14 +182,14 @@ This part selects ImageNet for onnxruntime verification. ImageNet has multiple v The table below lists the models that are guaranteed to be exportable to ONNX and runnable in ONNX Runtime. -| Model | Config | Batch Inference | Dynamic Shape | Note | -| :----------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------: | :-----------: | ---- | -| MobileNetV2 | [mobilenet_v2_b32x8_imagenet.py](https://github.com/open-mmlab/mmclassification/tree/master/configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py) | Y | Y | | -| ResNet | [resnet18_b16x8_cifar10.py](https://github.com/open-mmlab/mmclassification/tree/master/configs/resnet/resnet18_b16x8_cifar10.py) | Y | Y | | -| ResNeXt | [resnext50_32x4d_b32x8_imagenet.py](https://github.com/open-mmlab/mmclassification/tree/master/configs/resnext/resnext50_32x4d_b32x8_imagenet.py) | Y | Y | | -| SE-ResNet | [seresnet50_b32x8_imagenet.py](https://github.com/open-mmlab/mmclassification/tree/master/configs/seresnet/seresnet50_b32x8_imagenet.py) | Y | Y | | -| ShuffleNetV1 | [shufflenet_v1_1x_b64x16_linearlr_bn_nowd_imagenet.py](https://github.com/open-mmlab/mmclassification/tree/master/configs/shufflenet_v1/shufflenet_v1_1x_b64x16_linearlr_bn_nowd_imagenet.py) | Y | Y | | -| ShuffleNetV2 | [shufflenet_v2_1x_b64x16_linearlr_bn_nowd_imagenet.py](https://github.com/open-mmlab/mmclassification/tree/master/configs/shufflenet_v2/shufflenet_v2_1x_b64x16_linearlr_bn_nowd_imagenet.py) | Y | Y | | +| Model | Config | Batch Inference | Dynamic Shape | Note | +| :----------: | :----------------------------------------------------------: | :-------------: | :-----------: | ---- | +| MobileNetV2 | [mobilenet-v2_8xb32_in1k.py](https://github.com/open-mmlab/mmclassification/tree/master/configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py) | Y | Y | | +| ResNet | [resnet18_8xb16_cifar10.py](https://github.com/open-mmlab/mmclassification/tree/master/configs/resnet/resnet18_8xb16_cifar10.py) | Y | Y | | +| ResNeXt | [resnext50-32x4d_8xb32_in1k.py](https://github.com/open-mmlab/mmclassification/tree/master/configs/resnext/resnext50-32x4d_8xb32_in1k.py) | Y | Y | | +| SE-ResNet | [seresnet50_8xb32_in1k.py](https://github.com/open-mmlab/mmclassification/tree/master/configs/seresnet/seresnet50_8xb32_in1k.py) | Y | Y | | +| ShuffleNetV1 | [shufflenet-v1-1x_16xb64_in1k.py](https://github.com/open-mmlab/mmclassification/tree/master/configs/shufflenet_v1/shufflenet-v1-1x_16xb64_in1k.py) | Y | Y | | +| ShuffleNetV2 | [shufflenet-v2-1x_16xb64_in1k.py](https://github.com/open-mmlab/mmclassification/tree/master/configs/shufflenet_v2/shufflenet-v2-1x_16xb64_in1k.py) | Y | Y | | Notes: diff --git a/docs/tools/pytorch2torchscript.md b/docs/tools/pytorch2torchscript.md index cbe8da9c467..8b01cd02dda 100644 --- a/docs/tools/pytorch2torchscript.md +++ b/docs/tools/pytorch2torchscript.md @@ -36,9 +36,9 @@ Example: ```bash python tools/deployment/pytorch2onnx.py \ - configs/resnet/resnet18_b16x8_cifar10.py \ - --checkpoint checkpoints/resnet/resnet18_b16x8_cifar10.pth \ - --output-file checkpoints/resnet/resnet18_b16x8_cifar10.pt \ + configs/resnet/resnet18_8xb16_cifar10.py \ + --checkpoint checkpoints/resnet/resnet18_8xb16_cifar10.pth \ + --output-file checkpoints/resnet/resnet18_8xb16_cifar10.pt \ --verify \ ``` diff --git a/docs/tools/visualization.md b/docs/tools/visualization.md index 270c4f82f0b..2c88acf7c2c 100644 --- a/docs/tools/visualization.md +++ b/docs/tools/visualization.md @@ -53,7 +53,7 @@ python tools/visualizations/vis_pipeline.py \ 1. Visualize all the transformed pictures of the `ImageNet` training set and display them in pop-up windows: ```shell -python ./tools/visualizations/vis_pipeline.py ./configs/resnet/resnet50_b32x8_imagenet.py --show --mode pipeline +python ./tools/visualizations/vis_pipeline.py ./configs/resnet/resnet50_8xb32_in1k.py --show --mode pipeline ```
@@ -69,7 +69,7 @@ python ./tools/visualizations/vis_pipeline.py configs/swin_transformer/swin_base 3. Visualize 100 original pictures in the `CIFAR100` validation set, then display and save them in the `./tmp` folder: ```shell -python ./tools/visualizations/vis_pipeline.py configs/resnet/resnet50_b16x8_cifar100.py --phase val --output-dir tmp --mode original --number 100 --show --adaptive --bgr2rgb +python ./tools/visualizations/vis_pipeline.py configs/resnet/resnet50_8xb16_cifar100.py --phase val --output-dir tmp --mode original --number 100 --show --adaptive --bgr2rgb ```
diff --git a/docs/tutorials/MMClassification_python.ipynb b/docs/tutorials/MMClassification_python.ipynb index 8b3034dd596..d0acfa58237 100755 --- a/docs/tutorials/MMClassification_python.ipynb +++ b/docs/tutorials/MMClassification_python.ipynb @@ -803,10 +803,10 @@ }, "source": [ "# Confirm the config file exists\n", - "!ls configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py\n", + "!ls configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py\n", "\n", "# Specify the path of the config file and checkpoint file.\n", - "config_file = 'configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py'\n", + "config_file = 'configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py'\n", "checkpoint_file = 'https://download.openmmlab.com/mmclassification/v0/mobilenet_v2/mobilenet_v2_batch256_imagenet_20200708-3b2dc3af.pth'" ], "execution_count": null, @@ -815,7 +815,7 @@ "output_type": "stream", "name": "stdout", "text": [ - "configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py\n" + "configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py\n" ] } ] @@ -1114,7 +1114,7 @@ "source": [ "# Load the base config file\n", "from mmcv import Config\n", - "cfg = Config.fromfile('configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py')\n", + "cfg = Config.fromfile('configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py')\n", "\n", "# Modify the number of classes in the head.\n", "cfg.model.head.num_classes = 2\n", diff --git a/docs/tutorials/config.md b/docs/tutorials/config.md index 4d7c4490636..4424e5e5e60 100644 --- a/docs/tutorials/config.md +++ b/docs/tutorials/config.md @@ -77,7 +77,7 @@ repvgg-D2se_deploy_4xb64-autoaug-lbs-mixup-coslr-200e_in1k.py + `lbs`: Use label smoothing loss. + `mixup`: Use `mixup` training augment method. + `coslr`: Use cosine learning rate scheduler. - + `200e`: Train the model for 200 epoches. + + `200e`: Train the model for 200 epochs. - `in1k`: Dataset information. The config is for `ImageNet1k` dataset and the input size is `224x224`. ```{note} @@ -103,7 +103,7 @@ There are four kinds of basic component file in the `configs/_base_` folders, na You can easily build your own training config file by inherit some base config files. And the configs that are composed by components from `_base_` are called _primitive_. -For easy understanding, we use [ResNet50 primitive config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet50_b32x8_imagenet.py) as a example and comment the meaning of each line. For more detaile, please refer to the API documentation. +For easy understanding, we use [ResNet50 primitive config](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet50_8xb32_in1k.py) as a example and comment the meaning of each line. For more detaile, please refer to the API documentation. ```python _base_ = [ @@ -260,10 +260,10 @@ For easy understanding, we recommend contributors to inherit from existing metho For all configs under the same folder, it is recommended to have only **one** _primitive_ config. All other configs should inherit from the _primitive_ config. In this way, the maximum of inheritance level is 3. -For example, if some modifications are made on the basis of ResNet, the user can first inherit the basic ResNet structure, dataset and other training setting by specifying `_base_ ='../../configs/resnet/resnet50_b32x8_imagenet.py'` Information, and then modify the necessary parameters in the configuration file to complete the inheritance. If you want to change the number of training rounds from 100 to 300 epoches based on the basic resnet50, modify the number of learning rate decay rounds, and modify the data set path at the same time, you can create a new configuration file `configs/resnet/resnet50_8xb32-300e_in1k.py`, file write the following in: +For example, if your config file is based on ResNet with some other modification, you can first inherit the basic ResNet structure, dataset and other training setting by specifying `_base_ ='./resnet50_8xb32_in1k.py'` (The path relative to your config file), and then modify the necessary parameters in the config file. A more specific example, now we want to use almost all configs in `configs/resnet/resnet50_8xb32_in1k.py`, but change the number of training epochs from 100 to 300, modify when to decay the learning rate, and modify the dataset path, you can create a new config file `configs/resnet/resnet50_8xb32-300e_in1k.py` with content as below: ```python -_base_ = '../../configs/resnet/resnet50_b32x8_imagenet.py' +_base_ = './resnet50_8xb32_in1k.py' runner = dict(max_epochs=300) lr_config = dict(step=[150, 200, 250]) @@ -313,7 +313,7 @@ Sometimes, you need to set `_delete_=True` to ignore some domain content in the The following is an example. If you wangt to use cosine schedule in the above ResNet50 case, just using inheritance and directly modify it will report `get unexcepected keyword'step'` error, because the `'step'` field of the basic config in `lr_config` domain information is reserved, and you need to add `_delete_ =True` to ignore the content of `lr_config` related fields in the basic configuration file: ```python -_base_ = '../../configs/resnet/resnet50_b32x8_imagenet.py' +_base_ = '../../configs/resnet/resnet50_8xb32_in1k.py' lr_config = dict( _delete_=True, diff --git a/docs_zh-CN/getting_started.md b/docs_zh-CN/getting_started.md index e0184daeca3..15188696f77 100644 --- a/docs_zh-CN/getting_started.md +++ b/docs_zh-CN/getting_started.md @@ -51,7 +51,7 @@ MMClassification 提供了一些脚本用于进行单张图像的推理、数据 python demo/image_demo.py ${IMAGE_FILE} ${CONFIG_FILE} ${CHECKPOINT_FILE} # Example -python demo/image_demo.py demo/demo.JPEG configs/resnet/resnet50_b32x8_imagenet.py \ +python demo/image_demo.py demo/demo.JPEG configs/resnet/resnet50_8xb32_in1k.py \ https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_8xb32_in1k_20210831-ea4938fc.pth ``` @@ -86,7 +86,7 @@ python tools/test.py ${CONFIG_FILE} ${CHECKPOINT_FILE} [--metrics ${METRICS}] [- 在 ImageNet 验证集上,使用 ResNet-50 进行推理并获得预测标签及其对应的预测得分。 ```shell -python tools/test.py configs/resnet/resnet50_b16x8_cifar10.py \ +python tools/test.py configs/resnet/resnet50_8xb16_cifar10.py \ https://download.openmmlab.com/mmclassification/v0/resnet/resnet50_b16x8_cifar10_20210528-f54bfad9.pth \ --out result.pkl ``` diff --git a/docs_zh-CN/tools/model_serving.md b/docs_zh-CN/tools/model_serving.md index de760f670f7..4eed488cde0 100644 --- a/docs_zh-CN/tools/model_serving.md +++ b/docs_zh-CN/tools/model_serving.md @@ -18,7 +18,7 @@ ${MODEL_STORE} 需要是一个文件夹的绝对路径。 ```shell python tools/deployment/mmcls2torchserve.py \ - configs/resnet/resnet18_b32x8_imagenet.py \ + configs/resnet/resnet18_8xb32_in1k.py \ checkpoints/resnet18_8xb32_in1k_20210831-fbbb1da6.pth \ --output-folder ./checkpoints \ --model-name resnet18_in1k @@ -81,7 +81,7 @@ python tools/deployment/test_torchserver.py ${IMAGE_FILE} ${CONFIG_FILE} ${CHECK ```shell python tools/deployment/test_torchserver.py \ demo/demo.JPEG \ - configs/resnet/resnet18_b32x8_imagenet.py \ + configs/resnet/resnet18_8xb32_in1k.py \ checkpoints/resnet18_8xb32_in1k_20210831-fbbb1da6.pth \ resnet18_in1k ``` diff --git a/docs_zh-CN/tools/onnx2tensorrt.md b/docs_zh-CN/tools/onnx2tensorrt.md index a92f74274b4..ad0fd90f97d 100644 --- a/docs_zh-CN/tools/onnx2tensorrt.md +++ b/docs_zh-CN/tools/onnx2tensorrt.md @@ -57,11 +57,11 @@ python tools/deployment/onnx2tensorrt.py \ | 模型 | 配置文件 | 状态 | | :----------: | :--------------------------------------------------------------------------: | :----: | -| MobileNetV2 | `configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py` | Y | -| ResNet | `configs/resnet/resnet18_b16x8_cifar10.py` | Y | -| ResNeXt | `configs/resnext/resnext50_32x4d_b32x8_imagenet.py` | Y | -| ShuffleNetV1 | `configs/shufflenet_v1/shufflenet_v1_1x_b64x16_linearlr_bn_nowd_imagenet.py` | Y | -| ShuffleNetV2 | `configs/shufflenet_v2/shufflenet_v2_1x_b64x16_linearlr_bn_nowd_imagenet.py` | Y | +| MobileNetV2 | `configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py` | Y | +| ResNet | `configs/resnet/resnet18_8xb16_cifar10.py` | Y | +| ResNeXt | `configs/resnext/resnext50-32x4d_8xb32_in1k.py` | Y | +| ShuffleNetV1 | `configs/shufflenet_v1/shufflenet-v1-1x_16xb64_in1k.py` | Y | +| ShuffleNetV2 | `configs/shufflenet_v2/shufflenet-v2-1x_16xb64_in1k.py` | Y | 注: diff --git a/docs_zh-CN/tools/pytorch2onnx.md b/docs_zh-CN/tools/pytorch2onnx.md index 5cc95a74c2e..abe8ff730a1 100644 --- a/docs_zh-CN/tools/pytorch2onnx.md +++ b/docs_zh-CN/tools/pytorch2onnx.md @@ -54,7 +54,7 @@ python tools/deployment/pytorch2onnx.py \ ```bash python tools/deployment/pytorch2onnx.py \ - configs/resnet/resnet18_b16x8_cifar10.py \ + configs/resnet/resnet18_8xb16_cifar10.py \ --checkpoint checkpoints/resnet/resnet18_b16x8_cifar10.pth \ --output-file checkpoints/resnet/resnet18_b16x8_cifar10.onnx \ --dynamic-shape \ @@ -69,12 +69,12 @@ python tools/deployment/pytorch2onnx.py \ | 模型 | 配置文件 | 批推理 | 动态输入尺寸 | 备注 | | :----------: | :--------------------------------------------------------------------------: | :-------------: | :-----------: | ---- | -| MobileNetV2 | `configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py` | Y | Y | | -| ResNet | `configs/resnet/resnet18_b16x8_cifar10.py` | Y | Y | | -| ResNeXt | `configs/resnext/resnext50_32x4d_b32x8_imagenet.py` | Y | Y | | -| SE-ResNet | `configs/seresnet/seresnet50_b32x8_imagenet.py` | Y | Y | | -| ShuffleNetV1 | `configs/shufflenet_v1/shufflenet_v1_1x_b64x16_linearlr_bn_nowd_imagenet.py` | Y | Y | | -| ShuffleNetV2 | `configs/shufflenet_v2/shufflenet_v2_1x_b64x16_linearlr_bn_nowd_imagenet.py` | Y | Y | | +| MobileNetV2 | `configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py` | Y | Y | | +| ResNet | `configs/resnet/resnet18_8xb16_cifar10.py` | Y | Y | | +| ResNeXt | `configs/resnext/resnext50-32x4d_8xb32_in1k.py` | Y | Y | | +| SE-ResNet | `configs/seresnet/seresnet50_8xb32_in1k.py` | Y | Y | | +| ShuffleNetV1 | `configs/shufflenet_v1/shufflenet-v1-1x_16xb64_in1k.py` | Y | Y | | +| ShuffleNetV2 | `configs/shufflenet_v2/shufflenet-v2-1x_16xb64_in1k.py` | Y | Y | | 注: diff --git a/docs_zh-CN/tools/pytorch2torchscript.md b/docs_zh-CN/tools/pytorch2torchscript.md index 8ce68e04f35..9a48a1b6079 100644 --- a/docs_zh-CN/tools/pytorch2torchscript.md +++ b/docs_zh-CN/tools/pytorch2torchscript.md @@ -35,7 +35,7 @@ python tools/deployment/pytorch2torchscript.py \ ```bash python tools/deployment/pytorch2onnx.py \ - configs/resnet/resnet18_b16x8_cifar10.py \ + configs/resnet/resnet18_8xb16_cifar10.py \ --checkpoint checkpoints/resnet/resnet18_b16x8_cifar10.pth \ --output-file checkpoints/resnet/resnet18_b16x8_cifar10.pt \ --verify \ diff --git a/docs_zh-CN/tools/visualization.md b/docs_zh-CN/tools/visualization.md index 24d3248cbd1..dc5d6f56d5e 100644 --- a/docs_zh-CN/tools/visualization.md +++ b/docs_zh-CN/tools/visualization.md @@ -54,7 +54,7 @@ python tools/visualizations/vis_pipeline.py \ 1. 可视化 `ImageNet` 训练集的所有经过预处理的图片,并以弹窗形式显示: ```shell -python ./tools/visualizations/vis_pipeline.py ./configs/resnet/resnet50_b32x8_imagenet.py --show --mode pipeline +python ./tools/visualizations/vis_pipeline.py ./configs/resnet/resnet50_8xb32_in1k.py --show --mode pipeline ```
@@ -70,7 +70,7 @@ python ./tools/visualizations/vis_pipeline.py configs/swin_transformer/swin_base 3. 可视化 `CIFAR100` 验证集中的100张原始图片,显示并保存在 `./tmp` 文件夹下: ```shell -python ./tools/visualizations/vis_pipeline.py configs/resnet/resnet50_b16x8_cifar100.py --phase val --output-dir tmp --mode original --number 100 --show --adaptive --bgr2rgb +python ./tools/visualizations/vis_pipeline.py configs/resnet/resnet50_8xb16_cifar100.py --phase val --output-dir tmp --mode original --number 100 --show --adaptive --bgr2rgb ```
diff --git a/docs_zh-CN/tutorials/MMClassification_python_cn.ipynb b/docs_zh-CN/tutorials/MMClassification_python_cn.ipynb index 743f1532fec..adbbeeb3f5c 100755 --- a/docs_zh-CN/tutorials/MMClassification_python_cn.ipynb +++ b/docs_zh-CN/tutorials/MMClassification_python_cn.ipynb @@ -806,11 +806,11 @@ }, "source": [ "# 检查确保配置文件存在\n", - "!ls configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py\n", + "!ls configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py\n", "\n", "# 指明配置文件和权重参数文件的路径\n", "# 其中,权重参数文件的路径可以是一个 url,会在加载权重时自动下载。\n", - "config_file = 'configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py'\n", + "config_file = 'configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py'\n", "checkpoint_file = 'https://download.openmmlab.com/mmclassification/v0/mobilenet_v2/mobilenet_v2_batch256_imagenet_20200708-3b2dc3af.pth'" ], "execution_count": 21, @@ -819,7 +819,7 @@ "output_type": "stream", "name": "stdout", "text": [ - "configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py\n" + "configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py\n" ] } ] @@ -1116,7 +1116,7 @@ "source": [ "# 载入已经存在的配置文件\n", "from mmcv import Config\n", - "cfg = Config.fromfile('configs/mobilenet_v2/mobilenet_v2_b32x8_imagenet.py')\n", + "cfg = Config.fromfile('configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py')\n", "\n", "# 修改模型分类头中的类别数目\n", "cfg.model.head.num_classes = 2\n", diff --git a/docs_zh-CN/tutorials/config.md b/docs_zh-CN/tutorials/config.md index 9804c191bd8..48bffb0d7a2 100644 --- a/docs_zh-CN/tutorials/config.md +++ b/docs_zh-CN/tutorials/config.md @@ -105,7 +105,7 @@ repvgg-D2se_deploy_4xb64-autoaug-lbs-mixup-coslr-200e_in1k.py 你可以通过继承一些基本配置文件轻松构建自己的训练配置文件。由来自`_base_` 的组件组成的配置称为 _primitive_。 -为了帮助用户对 MMClassification 检测系统中的完整配置和模块有一个基本的了解,我们使用 [ResNet50 原始配置文件](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet50_b32x8_imagenet.py) 作为案例进行说明并注释每一行含义。更详细的用法和各个模块对应的替代方案,请参考 API 文档。 +为了帮助用户对 MMClassification 检测系统中的完整配置和模块有一个基本的了解,我们使用 [ResNet50 原始配置文件](https://github.com/open-mmlab/mmclassification/blob/master/configs/resnet/resnet50_8xb32_in1k.py) 作为案例进行说明并注释每一行含义。更详细的用法和各个模块对应的替代方案,请参考 API 文档。 ```python _base_ = [ @@ -262,10 +262,10 @@ work_dir = 'work_dir' # 用于保存当前实验的模型检查点和 对于在同一算法文件夹下的所有配置文件,MMClassification 推荐只存在 **一个** 对应的 _原始配置_ 文件。 所有其他的配置文件都应该继承 _原始配置_ 文件,这样就能保证配置文件的最大继承深度为 3。 -例如,如果在 ResNet 的基础上做了一些修改,用户首先可以通过指定 `_base_ = '../../configs/resnet/resnet50_b32x8_imagenet.py'` 来继承基础的 ResNet 结构、数据集以及其他训练配置信息,然后修改配置文件中的必要参数以完成继承。如想在基础 resnet50 的基础上将训练轮数由 100 改为 300 和修改学习率衰减轮数,同时修改数据集路径,可以建立新的配置文件 `configs/resnet/resnet50_8xb32-300e_in1k.py`, 文件中写入以下内容: +例如,如果在 ResNet 的基础上做了一些修改,用户首先可以通过指定 `_base_ = './resnet50_8xb32_in1k.py'`(相对于你的配置文件的路径),来继承基础的 ResNet 结构、数据集以及其他训练配置信息,然后修改配置文件中的必要参数以完成继承。如想在基础 resnet50 的基础上将训练轮数由 100 改为 300 和修改学习率衰减轮数,同时修改数据集路径,可以建立新的配置文件 `configs/resnet/resnet50_8xb32-300e_in1k.py`, 文件中写入以下内容: ```python -_base_ = '../../configs/resnet/resnet50_b32x8_imagenet.py' +_base_ = './resnet50_8xb32_in1k.py' runner = dict(max_epochs=300) lr_config = dict(step=[150, 200, 250]) @@ -317,7 +317,7 @@ data = dict( 以下是一个简单应用案例。 如果在上述 ResNet50 案例中 使用 cosine schedule ,使用继承并直接修改会报 `get unexcepected keyword 'step'` 错, 因为基础配置文件 lr_config 域信息的 `'step'` 字段被保留下来了,需要加入 `_delete_=True` 去忽略基础配置文件里的 `lr_config` 相关域内容: ```python -_base_ = '../../configs/resnet/resnet50_b32x8_imagenet.py' +_base_ = '../../configs/resnet/resnet50_8xb32_in1k.py' lr_config = dict( _delete_=True, diff --git a/model-index.yml b/model-index.yml index f48e0937a4e..07f457ae68b 100644 --- a/model-index.yml +++ b/model-index.yml @@ -1,5 +1,4 @@ Import: - - configs/fp16/metafile.yml - configs/mobilenet_v2/metafile.yml - configs/resnet/metafile.yml - configs/res2net/metafile.yml