├── assets ├── erf.png ├── ms2d.jpg └── mamba_image.png ├── analyze ├── mmpretrain_configs │ ├── readme.md │ └── configs │ │ ├── tinyvit │ │ ├── tinyvit-11m-distill_8xb256_in1k.py │ │ ├── tinyvit-21m-distill_8xb256_in1k.py │ │ ├── tinyvit-5m-distill_8xb256_in1k.py │ │ ├── tinyvit-11m_8xb256_in1k.py │ │ ├── tinyvit-21m_8xb256_in1k.py │ │ └── tinyvit-5m_8xb256_in1k.py │ │ ├── repvgg │ │ ├── repvgg-A0_deploy_in1k.py │ │ ├── repvgg-A1_8xb32_in1k.py │ │ ├── repvgg-B3g4_8xb32_in1k.py │ │ ├── repvgg-A2_8xb32_in1k.py │ │ ├── repvgg-B0_8xb32_in1k.py │ │ ├── repvgg-B1_8xb32_in1k.py │ │ ├── repvgg-B2_8xb32_in1k.py │ │ ├── repvgg-B1g2_8xb32_in1k.py │ │ ├── repvgg-B1g4_8xb32_in1k.py │ │ └── repvgg-B2g4_8xb32_in1k.py │ │ ├── repmlp │ │ ├── repmlp-base_delopy_8xb64_in1k.py │ │ └── repmlp-base_deploy_8xb64_in1k-256px.py │ │ ├── mobileone │ │ └── deploy │ │ │ ├── mobileone-s0_deploy_8xb32_in1k.py │ │ │ ├── mobileone-s1_deploy_8xb32_in1k.py │ │ │ ├── mobileone-s2_deploy_8xb32_in1k.py │ │ │ ├── mobileone-s3_deploy_8xb32_in1k.py │ │ │ └── mobileone-s4_deploy_8xb32_in1k.py │ │ ├── riformer │ │ └── deploy │ │ │ ├── riformer-m36-deploy_8xb128_in1k.py │ │ │ ├── riformer-m48-deploy_8xb64_in1k.py │ │ │ ├── riformer-s12-deploy_8xb128_in1k.py │ │ │ ├── riformer-s24-deploy_8xb128_in1k.py │ │ │ ├── riformer-s36-deploy_8xb128_in1k.py │ │ │ ├── riformer-m36-deploy_8xb64_in1k-384px.py │ │ │ ├── riformer-m48-deploy_8xb64_in1k-384px.py │ │ │ ├── riformer-s12-deploy_8xb128_in1k-384px.py │ │ │ ├── riformer-s24-deploy_8xb128_in1k-384px.py │ │ │ └── riformer-s36-deploy_8xb64_in1k-384px.py │ │ ├── levit │ │ ├── deploy │ │ │ ├── levit-128_8xb256_in1k.py │ │ │ ├── levit-128s_8xb256_in1k.py │ │ │ ├── levit-192_8xb256_in1k.py │ │ │ ├── levit-256_8xb256_in1k.py │ │ │ └── levit-384_8xb256_in1k.py │ │ ├── levit-256_8xb256_in1k.py │ │ ├── levit-128_8xb256_in1k.py │ │ ├── levit-192_8xb256_in1k.py │ │ ├── levit-128s_8xb256_in1k.py │ │ └── levit-384_8xb256_in1k.py │ │ ├── replknet │ │ ├── deploy │ │ │ ├── replknet-31B-deploy_32xb64_in1k.py │ │ │ ├── replknet-31B-deploy_32xb64_in1k-384px.py │ │ │ ├── replknet-31L-deploy_32xb64_in1k-384px.py │ │ │ └── replknet-XL-deploy_32xb64_in1k-320px.py │ │ ├── replknet-31B_32xb64_in1k.py │ │ ├── replknet-XL_32xb64_in1k-320px.py │ │ ├── replknet-31B_32xb64_in1k-384px.py │ │ └── replknet-31L_32xb64_in1k-384px.py │ │ ├── efficientnet_v2 │ │ ├── efficientnetv2-l_8xb32_in21k.py │ │ ├── efficientnetv2-m_8xb32_in21k.py │ │ └── efficientnetv2-xl_8xb32_in21k.py │ │ ├── resnet │ │ ├── resnet50_8xb32-fp16_in1k.py │ │ ├── resnet50_8xb32-fp16-dynamic_in1k.py │ │ ├── resnet101_8xb32_in1k.py │ │ ├── resnet152_8xb32_in1k.py │ │ ├── resnet18_8xb32_in1k.py │ │ ├── resnet34_8xb32_in1k.py │ │ ├── resnet50_8xb32_in1k.py │ │ ├── resnet18_8xb16_cifar10.py │ │ ├── resnet34_8xb16_cifar10.py │ │ ├── resnet50_32xb64-warmup_in1k.py │ │ ├── resnet50_8xb16_cifar10.py │ │ ├── resnet101_8xb16_cifar10.py │ │ ├── resnet152_8xb16_cifar10.py │ │ ├── resnet50_8xb32-coslr_in1k.py │ │ ├── resnet50_8xb32-cutmix_in1k.py │ │ ├── resnet50_8xb32-mixup_in1k.py │ │ ├── resnet50_32xb64-warmup-coslr_in1k.py │ │ ├── resnet50_8xb16-mixup_cifar10.py │ │ ├── resnet50_8xb32-lbs_in1k.py │ │ ├── resnetv1c50_8xb32_in1k.py │ │ ├── resnetv1d101_8xb32_in1k.py │ │ ├── resnetv1d152_8xb32_in1k.py │ │ ├── resnetv1d50_8xb32_in1k.py │ │ ├── resnetv1c101_8xb32_in1k.py │ │ ├── resnetv1c152_8xb32_in1k.py │ │ ├── resnet50_8xb128_coslr-90e_in21k.py │ │ ├── resnet50_32xb64-warmup-lbs_in1k.py │ │ ├── resnet50_8xb32-coslr-preciseBN_in1k.py │ │ └── resnet50_8xb16_cifar100.py │ │ ├── efficientformer │ │ ├── efficientformer-l3_8xb128_in1k.py │ │ ├── efficientformer-l7_8xb128_in1k.py │ │ └── efficientformer-l1_8xb128_in1k.py │ │ ├── twins │ │ ├── twins-svt-small_8xb128_in1k.py │ │ ├── twins-pcpvt-small_8xb128_in1k.py │ │ ├── twins-pcpvt-large_16xb64_in1k.py │ │ └── twins-svt-large_16xb64_in1k.py │ │ ├── simmim │ │ └── simmim_swin-base-w6_16xb128-amp-coslr-100e_in1k-192px.py │ │ ├── regnet │ │ ├── regnetx-1.6gf_8xb128_in1k.py │ │ ├── regnetx-800mf_8xb128_in1k.py │ │ ├── regnetx-12gf_8xb64_in1k.py │ │ ├── regnetx-3.2gf_8xb64_in1k.py │ │ └── regnetx-4.0gf_8xb64_in1k.py │ │ ├── vgg │ │ ├── vgg11bn_8xb32_in1k.py │ │ ├── vgg13bn_8xb32_in1k.py │ │ ├── vgg16bn_8xb32_in1k.py │ │ ├── vgg19bn_8xb32_in1k.py │ │ ├── vgg11_8xb32_in1k.py │ │ ├── vgg13_8xb32_in1k.py │ │ ├── vgg16_8xb32_in1k.py │ │ └── vgg19_8xb32_in1k.py │ │ ├── seresnet │ │ ├── seresnet101_8xb32_in1k.py │ │ ├── seresnet50_8xb32_in1k.py │ │ ├── seresnext50-32x4d_8xb32_in1k.py │ │ └── seresnext101-32x4d_8xb32_in1k.py │ │ ├── vig │ │ ├── vig-base_8xb128_in1k.py │ │ ├── vig-tiny_8xb128_in1k.py │ │ ├── vig-small_8xb128_in1k.py │ │ ├── pvig-small_8xb128_in1k.py │ │ ├── pvig-tiny_8xb128_in1k.py │ │ └── pvig-medium_8xb128_in1k.py │ │ ├── wrn │ │ ├── wide-resnet50_8xb32_in1k.py │ │ ├── wide-resnet50_timm_8xb32_in1k.py │ │ └── wide-resnet101_8xb32_in1k.py │ │ ├── resnext │ │ ├── resnext50-32x4d_8xb32_in1k.py │ │ ├── resnext101-32x4d_8xb32_in1k.py │ │ ├── resnext101-32x8d_8xb32_in1k.py │ │ └── resnext152-32x4d_8xb32_in1k.py │ │ ├── res2net │ │ ├── res2net101-w26-s4_8xb32_in1k.py │ │ ├── res2net50-w14-s8_8xb32_in1k.py │ │ └── res2net50-w26-s8_8xb32_in1k.py │ │ ├── mobilenet_v2 │ │ └── mobilenet-v2_8xb32_in1k.py │ │ ├── revvit │ │ ├── revvit-base_8xb256_in1k.py │ │ └── revvit-small_8xb256_in1k.py │ │ ├── mixmim │ │ └── benchmarks │ │ │ └── mixmim-base_8xb64_in1k.py │ │ ├── shufflenet_v1 │ │ └── shufflenet-v1-1x_16xb64_in1k.py │ │ ├── shufflenet_v2 │ │ └── shufflenet-v2-1x_16xb64_in1k.py │ │ ├── swin_transformer_v2 │ │ ├── swinv2-base-w8_16xb64_in1k-256px.py │ │ ├── swinv2-tiny-w8_16xb64_in1k-256px.py │ │ ├── swinv2-small-w8_16xb64_in1k-256px.py │ │ ├── swinv2-base-w16_16xb64_in1k-256px.py │ │ ├── swinv2-small-w16_16xb64_in1k-256px.py │ │ ├── swinv2-tiny-w16_16xb64_in1k-256px.py │ │ ├── swinv2-large-w16_in21k-pre_16xb64_in1k-256px.py │ │ ├── swinv2-base-w16_in21k-pre_16xb64_in1k-256px.py │ │ ├── swinv2-base-w24_in21k-pre_16xb64_in1k-384px.py │ │ └── swinv2-large-w24_in21k-pre_16xb64_in1k-384px.py │ │ ├── conformer │ │ ├── conformer-base-p16_8xb128_in1k.py │ │ ├── conformer-small-p16_8xb128_in1k.py │ │ ├── conformer-small-p32_8xb128_in1k.py │ │ └── conformer-tiny-p16_8xb128_in1k.py │ │ ├── eva │ │ ├── eva-g-p14_8xb16_in1k-336px.py │ │ ├── eva-g-p14_8xb16_in1k-560px.py │ │ ├── eva-l-p14_8xb16_in1k-196px.py │ │ └── eva-l-p14_8xb16_in1k-336px.py │ │ ├── mlp_mixer │ │ ├── mlp-mixer-base-p16_64xb64_in1k.py │ │ └── mlp-mixer-large-p16_64xb64_in1k.py │ │ ├── _base_ │ │ ├── models │ │ │ ├── vgg11.py │ │ │ ├── vgg13.py │ │ │ ├── vgg16.py │ │ │ ├── vgg19.py │ │ │ ├── inception_v3.py │ │ │ ├── vgg11bn.py │ │ │ ├── vgg13bn.py │ │ │ ├── vgg16bn.py │ │ │ ├── vgg19bn.py │ │ │ ├── densenet │ │ │ │ ├── densenet121.py │ │ │ │ ├── densenet161.py │ │ │ │ ├── densenet169.py │ │ │ │ └── densenet201.py │ │ │ ├── convmixer │ │ │ │ ├── convmixer-1024-20.py │ │ │ │ ├── convmixer-1536-20.py │ │ │ │ └── convmixer-768-32.py │ │ │ ├── efficientnet_b0.py │ │ │ ├── efficientnet_b1.py │ │ │ ├── efficientnet_b2.py │ │ │ ├── efficientnet_b3.py │ │ │ ├── efficientnet_b4.py │ │ │ ├── efficientnet_b5.py │ │ │ ├── efficientnet_b6.py │ │ │ ├── efficientnet_b7.py │ │ │ ├── efficientnet_b8.py │ │ │ ├── efficientnet_l2.py │ │ │ ├── shufflenet_v1_1x.py │ │ │ ├── mobilevit │ │ │ │ ├── mobilevit_s.py │ │ │ │ ├── mobilevit_xs.py │ │ │ │ └── mobilevit_xxs.py │ │ │ ├── mobilenet_v2_1x.py │ │ │ ├── regnet │ │ │ │ ├── regnetx_1.6gf.py │ │ │ │ ├── regnetx_12gf.py │ │ │ │ ├── regnetx_3.2gf.py │ │ │ │ ├── regnetx_4.0gf.py │ │ │ │ ├── regnetx_400mf.py │ │ │ │ ├── regnetx_6.4gf.py │ │ │ │ ├── regnetx_8.0gf.py │ │ │ │ └── regnetx_800mf.py │ │ │ ├── shufflenet_v2_1x.py │ │ │ ├── efficientnet_v2 │ │ │ │ ├── efficientnetv2_b0.py │ │ │ │ ├── efficientnetv2_b1.py │ │ │ │ ├── efficientnetv2_b2.py │ │ │ │ ├── efficientnetv2_b3.py │ │ │ │ ├── efficientnetv2_l.py │ │ │ │ ├── efficientnetv2_m.py │ │ │ │ ├── efficientnetv2_s.py │ │ │ │ └── efficientnetv2_xl.py │ │ │ ├── replknet-XL_in1k.py │ │ │ ├── repvgg-A0_in1k.py │ │ │ ├── replknet-31L_in1k.py │ │ │ ├── swin_transformer │ │ │ │ ├── large_224.py │ │ │ │ ├── base_384.py │ │ │ │ └── large_384.py │ │ │ ├── efficientnet_em.py │ │ │ ├── efficientnet_es.py │ │ │ ├── resnet18_cifar.py │ │ │ ├── resnet34_cifar.py │ │ │ ├── resnet101_cifar.py │ │ │ ├── resnet152_cifar.py │ │ │ ├── resnet50_cifar.py │ │ │ ├── hrnet │ │ │ │ ├── hrnet-w18.py │ │ │ │ ├── hrnet-w30.py │ │ │ │ ├── hrnet-w32.py │ │ │ │ ├── hrnet-w40.py │ │ │ │ ├── hrnet-w44.py │ │ │ │ ├── hrnet-w48.py │ │ │ │ └── hrnet-w64.py │ │ │ ├── mobilenet_v3 │ │ │ │ └── mobilenet_v3_small_cifar.py │ │ │ ├── resnet101.py │ │ │ ├── resnet152.py │ │ │ ├── resnet18.py │ │ │ ├── resnet34.py │ │ │ ├── resnet50.py │ │ │ ├── resnet34_gem.py │ │ │ ├── resnetv1c50.py │ │ │ ├── resnetv1d101.py │ │ │ ├── resnetv1d152.py │ │ │ ├── resnetv1d50.py │ │ │ ├── seresnet101.py │ │ │ ├── seresnet50.py │ │ │ ├── van │ │ │ │ ├── van_base.py │ │ │ │ └── van_large.py │ │ │ ├── res2net101-w26-s4.py │ │ │ ├── res2net50-w14-s8.py │ │ │ ├── res2net50-w26-s4.py │ │ │ ├── res2net50-w26-s6.py │ │ │ ├── res2net50-w26-s8.py │ │ │ ├── res2net50-w48-s2.py │ │ │ ├── swin_transformer_v2 │ │ │ │ ├── large_256.py │ │ │ │ └── large_384.py │ │ │ ├── mobileone │ │ │ │ ├── mobileone_s0.py │ │ │ │ ├── mobileone_s1.py │ │ │ │ ├── mobileone_s2.py │ │ │ │ ├── mobileone_s3.py │ │ │ │ └── mobileone_s4.py │ │ │ ├── repmlp-base_224.py │ │ │ ├── resnet50_label_smooth.py │ │ │ ├── resnet50_mixup.py │ │ │ ├── resnext101_32x4d.py │ │ │ ├── resnext101_32x8d.py │ │ │ ├── resnext152_32x4d.py │ │ │ ├── resnext50_32x4d.py │ │ │ ├── davit │ │ │ │ ├── davit-tiny.py │ │ │ │ ├── davit-base.py │ │ │ │ └── davit-small.py │ │ │ ├── resnet50_cifar_mixup.py │ │ │ ├── seresnext101_32x4d.py │ │ │ ├── seresnext50_32x4d.py │ │ │ ├── wide-resnet50.py │ │ │ └── convnext_v2 │ │ │ │ ├── atto.py │ │ │ │ ├── nano.py │ │ │ │ ├── pico.py │ │ │ │ └── femto.py │ │ └── schedules │ │ │ ├── imagenet_sgd_coslr_200e.py │ │ │ ├── imagenet_lars_coslr_90e.py │ │ │ ├── imagenet_sgd_coslr_100e.py │ │ │ ├── imagenet_sgd_steplr_100e.py │ │ │ ├── cifar10_bs128.py │ │ │ ├── imagenet_bs256_epochstep.py │ │ │ ├── imagenet_bs256.py │ │ │ ├── imagenet_bs256_140e.py │ │ │ └── imagenet_bs256_coslr.py │ │ ├── davit │ │ ├── davit-base_4xb256_in1k.py │ │ ├── davit-tiny_4xb256_in1k.py │ │ └── davit-small_4xb256_in1k.py │ │ ├── hivit │ │ ├── hivit-base-p16_16xb64_in1k.py │ │ ├── hivit-small-p16_16xb64_in1k.py │ │ └── hivit-tiny-p16_16xb64_in1k.py │ │ ├── swin_transformer │ │ ├── swin-base_16xb64_in1k.py │ │ ├── swin-large_16xb64_in1k.py │ │ ├── swin-small_16xb64_in1k.py │ │ ├── swin-tiny_16xb64_in1k.py │ │ ├── swin-base_16xb64_in1k-384px.py │ │ └── swin-large_16xb64_in1k-384px.py │ │ ├── hrnet │ │ ├── hrnet-w18_4xb32_in1k.py │ │ ├── hrnet-w30_4xb32_in1k.py │ │ ├── hrnet-w32_4xb32_in1k.py │ │ ├── hrnet-w40_4xb32_in1k.py │ │ ├── hrnet-w44_4xb32_in1k.py │ │ ├── hrnet-w48_4xb32_in1k.py │ │ └── hrnet-w64_4xb32_in1k.py │ │ ├── hornet │ │ ├── hornet-base_8xb64_in1k.py │ │ ├── hornet-small_8xb64_in1k.py │ │ ├── hornet-base-gf_8xb64_in1k.py │ │ ├── hornet-tiny_8xb128_in1k.py │ │ ├── hornet-small-gf_8xb64_in1k.py │ │ └── hornet-tiny-gf_8xb128_in1k.py │ │ ├── mae │ │ └── benchmarks │ │ │ ├── vit-huge-p14_8xb128-fsdp-coslr-50e_in1k.py │ │ │ └── vit-large-p16_8xb128-fsdp-coslr-50e_in1k.py │ │ ├── mobilenet_v3 │ │ └── mobilenet-v3-small_8xb16_cifar10.py │ │ ├── vision_transformer │ │ ├── vit-base-p16_64xb64_in1k.py │ │ ├── vit-base-p32_64xb64_in1k.py │ │ ├── vit-large-p16_64xb64_in1k.py │ │ └── vit-large-p32_64xb64_in1k.py │ │ ├── glip │ │ ├── glip-t_headless.py │ │ └── glip-l_headless.py │ │ ├── edgenext │ │ ├── edgenext-base_8xb256-usi_in1k.py │ │ └── edgenext-small_8xb256-usi_in1k.py │ │ ├── dinov2 │ │ ├── vit-base-p14_dinov2-pre_headless.py │ │ ├── vit-large-p14_dinov2-pre_headless.py │ │ └── vit-small-p14_dinov2-pre_headless.py │ │ ├── barlowtwins │ │ └── benchmarks │ │ │ └── resnet50_8xb32-linear-coslr-100e_in1k.py │ │ ├── eva02 │ │ ├── eva02-small-p14_headless.py │ │ └── eva02-tiny-p14_headless.py │ │ └── densenet │ │ ├── densenet121_4xb256_in1k.py │ │ ├── densenet161_4xb256_in1k.py │ │ ├── densenet169_4xb256_in1k.py │ │ └── densenet201_4xb256_in1k.py └── get_ckpt.py ├── detection ├── configs │ ├── mask_rcnn │ │ ├── mask-rcnn_r50_fpn_ms-poly-3x_coco.py │ │ ├── mask-rcnn_r50_fpn_amp-1x_coco.py │ │ ├── mask-rcnn_r50_fpn_1x_coco.py │ │ ├── mask-rcnn_r50_fpn_2x_coco.py │ │ ├── mask-rcnn_r50-caffe-c4_1x_coco.py │ │ ├── mask-rcnn_r101_fpn_1x_coco.py │ │ ├── mask-rcnn_r101_fpn_2x_coco.py │ │ ├── mask-rcnn_r101-caffe_fpn_1x_coco.py │ │ ├── mask-rcnn_r101_fpn_8xb8-amp-lsj-200e_coco.py │ │ ├── mask-rcnn_r18_fpn_8xb8-amp-lsj-200e_coco.py │ │ ├── mask-rcnn_r101_fpn_ms-poly-3x_coco.py │ │ ├── mask-rcnn_r50-caffe_fpn_ms-poly-2x_coco.py │ │ ├── mask-rcnn_r50-caffe_fpn_ms-poly-3x_coco.py │ │ ├── mask-rcnn_r50-caffe_fpn_1x_coco.py │ │ ├── mask-rcnn_x101-32x4d_fpn_1x_coco.py │ │ ├── mask-rcnn_x101-32x4d_fpn_2x_coco.py │ │ ├── mask-rcnn_x101-64x4d_fpn_1x_coco.py │ │ ├── mask-rcnn_x101-64x4d_fpn_2x_coco.py │ │ ├── mask-rcnn_x101-32x4d_fpn_ms-poly-3x_coco.py │ │ └── mask-rcnn_x101-64x4d_fpn_ms-poly_3x_coco.py │ └── swin │ │ ├── mask-rcnn_swin-t-p4-w7_fpn_amp-ms-crop-3x_coco.py │ │ └── mask-rcnn_swin-s-p4-w7_fpn_amp-ms-crop-3x_coco.py ├── readme.md ├── tools │ ├── analysis_tools │ │ └── mot │ │ │ └── dist_mot_search.sh │ ├── dataset_converters │ │ └── scripts │ │ │ ├── preprocess_voc2012.sh │ │ │ └── preprocess_voc2007.sh │ ├── dist_train.sh │ ├── dist_test_tracking.sh │ └── dist_test.sh └── testmmcv.py ├── .idea ├── vcs.xml ├── .gitignore ├── inspectionProfiles │ └── profiles_settings.xml ├── modules.xml ├── sshConfigs.xml └── misc.xml ├── segmentation ├── configs │ ├── upernet │ │ ├── upernet_r101_4xb4-80k_ade20k-512x512.py │ │ ├── upernet_r101_4xb4-160k_ade20k-512x512.py │ │ ├── upernet_r101_4xb4-20k_voc12aug-512x512.py │ │ ├── upernet_r101_4xb4-40k_voc12aug-512x512.py │ │ ├── upernet_r101_4xb2-40k_cityscapes-512x1024.py │ │ ├── upernet_r101_4xb2-40k_cityscapes-769x769.py │ │ ├── upernet_r101_4xb2-80k_cityscapes-512x1024.py │ │ ├── upernet_r101_4xb2-80k_cityscapes-769x769.py │ │ ├── upernet_r18_4xb2-40k_cityscapes-512x1024.py │ │ ├── upernet_r18_4xb2-80k_cityscapes-512x1024.py │ │ ├── upernet_r50_4xb2-40k_cityscapes-512x1024.py │ │ ├── upernet_r50_4xb2-80k_cityscapes-512x1024.py │ │ ├── upernet_r50_4xb4-160k_ade20k-512x512.py │ │ ├── upernet_r50_4xb4-80k_ade20k-512x512.py │ │ ├── upernet_r18_4xb4-160k_ade20k-512x512.py │ │ ├── upernet_r18_4xb4-80k_ade20k-512x512.py │ │ ├── upernet_r50_4xb4-20k_voc12aug-512x512.py │ │ ├── upernet_r50_4xb4-40k_voc12aug-512x512.py │ │ ├── upernet_r18_4xb4-20k_voc12aug-512x512.py │ │ ├── upernet_r18_4xb4-40k_voc12aug-512x512.py │ │ ├── upernet_r50_4xb2-40k_cityscapes-769x769.py │ │ └── upernet_r50_4xb2-80k_cityscapes-769x769.py │ ├── vit │ │ ├── vit_deit-b16_mln_upernet_8xb2-160k_ade20k-512x512.py │ │ ├── vit_deit-b16_upernet_8xb2-160k_ade20k-512x512.py │ │ ├── vit_deit-b16_upernet_8xb2-80k_ade20k-512x512.py │ │ ├── vit_deit-b16-ln_mln_upernet_8xb2-160k_ade20k-512x512.py │ │ ├── vit_deit-s16_upernet_8xb2-160k_ade20k-512x512.py │ │ ├── vit_deit-s16_upernet_8xb2-80k_ade20k-512x512.py │ │ ├── vit_deit-s16_mln_upernet_8xb2-160k_ade20k-512x512.py │ │ └── vit_deit-s16-ln_mln_upernet_8xb2-160k_ade20k-512x512.py │ ├── swin │ │ ├── swin-base-patch4-window7-in22k-pre_upernet_8xb2-160k_ade20k-512x512.py │ │ ├── swin-base-patch4-window12-in22k-384x384-pre_upernet_8xb2-160k_ade20k-512x512.py │ │ ├── swin-large-patch4-window12-in22k-384x384-pre_upernet_8xb2-160k_ade20k-512x512.py │ │ └── swin-small-patch4-window7-in1k-pre_upernet_8xb2-160k_ade20k-512x512.py │ └── _base_ │ │ └── default_runtime.py ├── readme.md └── tools │ ├── dist_train.sh │ └── dist_test.sh ├── requirements.txt ├── classification ├── readme.md ├── configs │ ├── vssm │ │ ├── vssm_tiny_224.yaml │ │ ├── vssm_small_224.yaml │ │ └── vssm_base_224.yaml │ └── ms_vssm │ │ ├── vssm_micro_224_ms.yaml │ │ ├── vssm_nano_224_ms.yaml │ │ └── vssm_tiny_224_ms.yaml └── data │ └── __init__.py └── kernels └── selective_scan └── csrc └── selective_scan ├── cusnrow ├── selective_scan_core_bwd3.cu ├── selective_scan_core_bwd4.cu ├── selective_scan_core_bwd.cu ├── selective_scan_core_bwd2.cu ├── selective_scan_core_fwd.cu ├── selective_scan_core_fwd2.cu ├── selective_scan_core_fwd3.cu └── selective_scan_core_fwd4.cu ├── cus ├── selective_scan_core_bwd.cu └── selective_scan_core_fwd.cu └── cusndstate └── selective_scan_core_bwd.cu /assets/erf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/YuHengsss/MSVMamba/HEAD/assets/erf.png -------------------------------------------------------------------------------- /assets/ms2d.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/YuHengsss/MSVMamba/HEAD/assets/ms2d.jpg -------------------------------------------------------------------------------- /assets/mamba_image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/YuHengsss/MSVMamba/HEAD/assets/mamba_image.png -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/readme.md: -------------------------------------------------------------------------------- 1 | ## origins 2 | copied from https://github.com/open-mmlab/mmpretrain: `version 1.1.1` 3 | 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/tinyvit/tinyvit-11m-distill_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | './tinyvit-11m_8xb256_in1k.py', 3 | ] 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/tinyvit/tinyvit-21m-distill_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | './tinyvit-21m_8xb256_in1k.py', 3 | ] 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/tinyvit/tinyvit-5m-distill_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | './tinyvit-5m_8xb256_in1k.py', 3 | ] 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/repvgg/repvgg-A0_deploy_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/repvgg/repvgg-A1_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='A1')) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/repvgg/repvgg-B3g4_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-B3_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B3g4')) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/repmlp/repmlp-base_delopy_8xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./repmlp-base_8xb64_in1k.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/mobileone/deploy/mobileone-s0_deploy_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../mobileone-s0_8xb32_in1k.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/mobileone/deploy/mobileone-s1_deploy_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../mobileone-s1_8xb32_in1k.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/mobileone/deploy/mobileone-s2_deploy_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../mobileone-s2_8xb32_in1k.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/mobileone/deploy/mobileone-s3_deploy_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../mobileone-s3_8xb32_in1k.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/mobileone/deploy/mobileone-s4_deploy_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../mobileone-s4_8xb32_in1k.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/repmlp/repmlp-base_deploy_8xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./repmlp-base_8xb64_in1k-256px.py'] 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/repvgg/repvgg-A2_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='A2'), head=dict(in_channels=1408)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/repvgg/repvgg-B0_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B0'), head=dict(in_channels=1280)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/repvgg/repvgg-B1_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B1'), head=dict(in_channels=2048)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/repvgg/repvgg-B2_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B2'), head=dict(in_channels=2560)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/riformer/deploy/riformer-m36-deploy_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../riformer-m36_8xb128_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/riformer/deploy/riformer-m48-deploy_8xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../riformer-m48_8xb64_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/riformer/deploy/riformer-s12-deploy_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../riformer-s12_8xb128_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/riformer/deploy/riformer-s24-deploy_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../riformer-s24_8xb128_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/riformer/deploy/riformer-s36-deploy_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../riformer-s36_8xb128_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_r50_fpn_ms-poly-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../common/ms-poly_3x_coco-instance.py', 3 | '../_base_/models/mask-rcnn_r50_fpn.py' 4 | ] 5 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/repvgg/repvgg-B1g2_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B1g2'), head=dict(in_channels=2048)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/repvgg/repvgg-B1g4_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-A0_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B1g4'), head=dict(in_channels=2048)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/repvgg/repvgg-B2g4_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './repvgg-B3_8xb32_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='B2g4'), head=dict(in_channels=2560)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/levit/deploy/levit-128_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../levit-128_8xb256_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True), head=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/levit/deploy/levit-128s_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../levit-128s_8xb256_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True), head=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/levit/deploy/levit-192_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../levit-192_8xb256_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True), head=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/levit/deploy/levit-256_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../levit-256_8xb256_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True), head=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/levit/deploy/levit-384_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../levit-384_8xb256_in1k.py' 2 | 3 | model = dict(backbone=dict(deploy=True), head=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/riformer/deploy/riformer-m36-deploy_8xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = '../riformer-m36_8xb64_in1k-384px.py' 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/riformer/deploy/riformer-m48-deploy_8xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = '../riformer-m48_8xb64_in1k-384px.py' 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/riformer/deploy/riformer-s12-deploy_8xb128_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = '../riformer-s12_8xb128_in1k-384px.py' 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/riformer/deploy/riformer-s24-deploy_8xb128_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = '../riformer-s24_8xb128_in1k-384px.py' 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/riformer/deploy/riformer-s36-deploy_8xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = '../riformer-s36_8xb64_in1k-384px.py' 2 | 3 | model = dict(backbone=dict(deploy=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/replknet/deploy/replknet-31B-deploy_32xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../replknet-31B_32xb64_in1k.py' 2 | 3 | model = dict(backbone=dict(small_kernel_merged=True)) 4 | -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/efficientnet_v2/efficientnetv2-l_8xb32_in21k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./efficientnetv2-s_8xb32_in21k.py'] 2 | 3 | # model setting 4 | model = dict(backbone=dict(arch='l'), ) 5 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/efficientnet_v2/efficientnetv2-m_8xb32_in21k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./efficientnetv2-s_8xb32_in21k.py'] 2 | 3 | # model setting 4 | model = dict(backbone=dict(arch='m'), ) 5 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/efficientnet_v2/efficientnetv2-xl_8xb32_in21k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./efficientnetv2-s_8xb32_in21k.py'] 2 | 3 | # model setting 4 | model = dict(backbone=dict(arch='xl'), ) 5 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/replknet/deploy/replknet-31B-deploy_32xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = '../replknet-31B_32xb64_in1k-384px.py' 2 | 3 | model = dict(backbone=dict(small_kernel_merged=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/replknet/deploy/replknet-31L-deploy_32xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = '../replknet-31L_32xb64_in1k-384px.py' 2 | 3 | model = dict(backbone=dict(small_kernel_merged=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/replknet/deploy/replknet-XL-deploy_32xb64_in1k-320px.py: -------------------------------------------------------------------------------- 1 | _base_ = '../replknet-XL_32xb64_in1k-320px.py' 2 | 3 | model = dict(backbone=dict(small_kernel_merged=True)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet50_8xb32-fp16_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./resnet50_8xb32_in1k.py'] 2 | 3 | # schedule settings 4 | optim_wrapper = dict(type='AmpOptimWrapper', loss_scale=512.) 5 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r101_4xb4-80k_ade20k-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = './upernet_r50_4xb4-80k_ade20k-512x512.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/efficientformer/efficientformer-l3_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './efficientformer-l1_8xb128_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='l3'), head=dict(in_channels=512)) 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/efficientformer/efficientformer-l7_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './efficientformer-l1_8xb128_in1k.py' 2 | 3 | model = dict(backbone=dict(arch='l7'), head=dict(in_channels=768)) 4 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r101_4xb4-160k_ade20k-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = './upernet_r50_4xb4-160k_ade20k-512x512.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r101_4xb4-20k_voc12aug-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = './upernet_r50_4xb4-20k_voc12aug-512x512.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r101_4xb4-40k_voc12aug-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = './upernet_r50_4xb4-40k_voc12aug-512x512.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/twins/twins-svt-small_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['twins-svt-base_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict(backbone=dict(arch='small'), head=dict(in_channels=512)) 5 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r101_4xb2-40k_cityscapes-512x1024.py: -------------------------------------------------------------------------------- 1 | _base_ = './upernet_r50_4xb2-40k_cityscapes-512x1024.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r101_4xb2-40k_cityscapes-769x769.py: -------------------------------------------------------------------------------- 1 | _base_ = './upernet_r50_4xb2-40k_cityscapes-769x769.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r101_4xb2-80k_cityscapes-512x1024.py: -------------------------------------------------------------------------------- 1 | _base_ = './upernet_r50_4xb2-80k_cityscapes-512x1024.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r101_4xb2-80k_cityscapes-769x769.py: -------------------------------------------------------------------------------- 1 | _base_ = './upernet_r50_4xb2-80k_cityscapes-769x769.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet50_8xb32-fp16-dynamic_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./resnet50_8xb32_in1k.py'] 2 | 3 | # schedule settings 4 | optim_wrapper = dict(type='AmpOptimWrapper', loss_scale='dynamic') 5 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/twins/twins-pcpvt-small_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['twins-pcpvt-base_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict(backbone=dict(arch='small'), head=dict(in_channels=512)) 5 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | torch 2 | torchvision 3 | torchaudio 4 | packaging 5 | timm==0.4.12 6 | pytest 7 | chardet 8 | yacs 9 | termcolor 10 | submitit 11 | tensorboardX 12 | fvcore 13 | seaborn 14 | tensorboard 15 | -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | # Editor-based HTTP Client requests 5 | /httpRequests/ 6 | # Datasource local storage ignored files 7 | /dataSources/ 8 | /dataSources.local.xml 9 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_r50_fpn_amp-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_1x_coco.py' 2 | 3 | # Enable automatic-mixed-precision training with AmpOptimWrapper. 4 | optim_wrapper = dict(type='AmpOptimWrapper') 5 | -------------------------------------------------------------------------------- /.idea/inspectionProfiles/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet101_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet101.py', '../_base_/datasets/imagenet_bs32.py', 3 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet152_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet152.py', '../_base_/datasets/imagenet_bs32.py', 3 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet18_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet18.py', '../_base_/datasets/imagenet_bs32.py', 3 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet34_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet34.py', '../_base_/datasets/imagenet_bs32.py', 3 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet50_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs32.py', 3 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/simmim/simmim_swin-base-w6_16xb128-amp-coslr-100e_in1k-192px.py: -------------------------------------------------------------------------------- 1 | _base_ = 'simmim_swin-base-w6_8xb256-amp-coslr-100e_in1k-192px.py' 2 | 3 | # dataset 16 GPUs x 128 4 | train_dataloader = dict(batch_size=128) 5 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet18_8xb16_cifar10.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet18_cifar.py', '../_base_/datasets/cifar10_bs16.py', 3 | '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet34_8xb16_cifar10.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet34_cifar.py', '../_base_/datasets/cifar10_bs16.py', 3 | '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet50_32xb64-warmup_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs64.py', 3 | '../_base_/schedules/imagenet_bs2048.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet50_8xb16_cifar10.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50_cifar.py', '../_base_/datasets/cifar10_bs16.py', 3 | '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' 4 | ] 5 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_r50_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mask-rcnn_r50_fpn.py', 3 | '../_base_/datasets/coco_instance.py', 4 | '../_base_/schedules/schedule_1x.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_r50_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mask-rcnn_r50_fpn.py', 3 | '../_base_/datasets/coco_instance.py', 4 | '../_base_/schedules/schedule_2x.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /detection/configs/swin/mask-rcnn_swin-t-p4-w7_fpn_amp-ms-crop-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_swin-t-p4-w7_fpn_ms-crop-3x_coco.py' 2 | # Enable automatic-mixed-precision training with AmpOptimWrapper. 3 | optim_wrapper = dict(type='AmpOptimWrapper') 4 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/regnet/regnetx-1.6gf_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./regnetx-400mf_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(type='RegNet', arch='regnetx_1.6gf'), 6 | head=dict(in_channels=912, )) 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/regnet/regnetx-800mf_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./regnetx-400mf_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(type='RegNet', arch='regnetx_800mf'), 6 | head=dict(in_channels=672, )) 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet101_8xb16_cifar10.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet101_cifar.py', 3 | '../_base_/datasets/cifar10_bs16.py', 4 | '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet152_8xb16_cifar10.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet152_cifar.py', 3 | '../_base_/datasets/cifar10_bs16.py', 4 | '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_r50-caffe-c4_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mask-rcnn_r50-caffe-c4.py', 3 | '../_base_/datasets/coco_instance.py', 4 | '../_base_/schedules/schedule_1x.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet50_8xb32-coslr_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs32.py', 3 | '../_base_/schedules/imagenet_bs256_coslr.py', 4 | '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet50_8xb32-cutmix_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50_cutmix.py', 3 | '../_base_/datasets/imagenet_bs32.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet50_8xb32-mixup_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50_mixup.py', 3 | '../_base_/datasets/imagenet_bs32.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/vgg/vgg11bn_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg11bn.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/vgg/vgg13bn_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg13bn.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/vgg/vgg16bn_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg16bn.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/vgg/vgg19bn_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg19bn.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet50_32xb64-warmup-coslr_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50.py', '../_base_/datasets/imagenet_bs64.py', 3 | '../_base_/schedules/imagenet_bs2048_coslr.py', 4 | '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet50_8xb16-mixup_cifar10.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50_cifar_mixup.py', 3 | '../_base_/datasets/cifar10_bs16.py', 4 | '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet50_8xb32-lbs_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50_label_smooth.py', 3 | '../_base_/datasets/imagenet_bs32.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnetv1c50_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnetv1c50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnetv1d101_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnetv1d101.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnetv1d152_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnetv1d152.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnetv1d50_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnetv1d50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/seresnet/seresnet101_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/seresnet101.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/vig/vig-base_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vig/vig_base.py', 3 | '../_base_/datasets/imagenet_bs128_vig_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/vig/vig-tiny_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vig/vig_tiny.py', 3 | '../_base_/datasets/imagenet_bs128_vig_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/wrn/wide-resnet50_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/wide-resnet50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnext/resnext50-32x4d_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnext50_32x4d.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/vig/vig-small_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vig/vig_small.py', 3 | '../_base_/datasets/imagenet_bs128_vig_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/wrn/wide-resnet50_timm_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/wide-resnet50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_bicubic.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_r101_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_r101_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/res2net/res2net101-w26-s4_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/res2net101-w26-s4.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/res2net/res2net50-w14-s8_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/res2net50-w14-s8.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/res2net/res2net50-w26-s8_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/res2net50-w26-s8.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnext/resnext101-32x4d_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnext101_32x4d.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnext/resnext101-32x8d_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnext101_32x8d.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnext/resnext152-32x4d_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnext152_32x4d.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/seresnet/seresnet50_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/seresnet50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_140e.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/seresnet/seresnext50-32x4d_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/seresnext50_32x4d.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/vig/pvig-small_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vig/pyramid_vig_small.py', 3 | '../_base_/datasets/imagenet_bs128_vig_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/vig/pvig-tiny_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vig/pyramid_vig_tiny.py', 3 | '../_base_/datasets/imagenet_bs128_vig_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /detection/readme.md: -------------------------------------------------------------------------------- 1 | ## origins 2 | `configs/` and `tools/` are copied from https://github.com/open-mmlab/mmdetection: `version 3.3.0` 3 | 4 | 5 | ## modifications 6 | `tools/train.py#12` is added with `import model` 7 | `tools/test.py#17` is added with `import model` 8 | 9 | -------------------------------------------------------------------------------- /segmentation/readme.md: -------------------------------------------------------------------------------- 1 | ## origins 2 | `configs/` and `tools/` are copied from https://github.com/open-mmlab/mmsegmentation: `version 1.2.2` 3 | 4 | ## modifications 5 | `tools/train.py#13` is added with `import model` 6 | `tools/test.py#8` is added with `import model` 7 | 8 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/seresnet/seresnext101-32x4d_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/seresnext101_32x4d.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/vig/pvig-medium_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vig/pyramid_vig_medium.py', 3 | '../_base_/datasets/imagenet_bs128_vig_224.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /segmentation/configs/vit/vit_deit-b16_mln_upernet_8xb2-160k_ade20k-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = './vit_vit-b16_mln_upernet_8xb2-160k_ade20k-512x512.py' 2 | 3 | model = dict( 4 | pretrained='pretrain/deit_base_patch16_224-b5f2ef4d.pth', 5 | backbone=dict(drop_path_rate=0.1), 6 | ) 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/twins/twins-pcpvt-large_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['twins-pcpvt-base_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict(backbone=dict(arch='large'), head=dict(in_channels=512)) 5 | 6 | # dataset settings 7 | train_dataloader = dict(batch_size=64) 8 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/twins/twins-svt-large_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['twins-svt-base_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict(backbone=dict(arch='large'), head=dict(in_channels=1024)) 5 | 6 | # dataset settings 7 | train_dataloader = dict(batch_size=64) 8 | -------------------------------------------------------------------------------- /segmentation/configs/vit/vit_deit-b16_upernet_8xb2-160k_ade20k-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = './vit_vit-b16_mln_upernet_8xb2-160k_ade20k-512x512.py' 2 | 3 | model = dict( 4 | pretrained='pretrain/deit_base_patch16_224-b5f2ef4d.pth', 5 | backbone=dict(drop_path_rate=0.1), 6 | neck=None) 7 | -------------------------------------------------------------------------------- /segmentation/configs/vit/vit_deit-b16_upernet_8xb2-80k_ade20k-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = './vit_vit-b16_mln_upernet_8xb2-80k_ade20k-512x512.py' 2 | 3 | model = dict( 4 | pretrained='pretrain/deit_base_patch16_224-b5f2ef4d.pth', 5 | backbone=dict(drop_path_rate=0.1), 6 | neck=None) 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mobilenet_v2_1x.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_epochstep.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /classification/readme.md: -------------------------------------------------------------------------------- 1 | ## origins 2 | 3 | based on https://github.com/microsoft/Swin-Transformer#20240103 4 | 5 | `main.py` and `utils/utils_ema.py` is modified from https://github.com/microsoft/Swin-Transformer#20240103, based on https://github.com/facebookresearch/ConvNeXt#20240103 6 | 7 | -------------------------------------------------------------------------------- /segmentation/configs/vit/vit_deit-b16-ln_mln_upernet_8xb2-160k_ade20k-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = './vit_vit-b16_mln_upernet_8xb2-160k_ade20k-512x512.py' 2 | 3 | model = dict( 4 | pretrained='pretrain/deit_base_patch16_224-b5f2ef4d.pth', 5 | backbone=dict(drop_path_rate=0.1, final_norm=True)) 6 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/revvit/revvit-base_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/revvit/revvit-base.py', 3 | '../_base_/datasets/imagenet_bs128_revvit_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_revvit.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/revvit/revvit-small_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/revvit/revvit-small.py', 3 | '../_base_/datasets/imagenet_bs128_revvit_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_revvit.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/tinyvit/tinyvit-11m_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/datasets/imagenet_bs32_pil_bicubic.py', 3 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 4 | '../_base_/default_runtime.py', 5 | '../_base_/models/tinyvit/tinyvit-11m.py', 6 | ] 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/tinyvit/tinyvit-21m_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/datasets/imagenet_bs32_pil_bicubic.py', 3 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 4 | '../_base_/default_runtime.py', 5 | '../_base_/models/tinyvit/tinyvit-21m.py', 6 | ] 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/tinyvit/tinyvit-5m_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/datasets/imagenet_bs32_pil_bicubic.py', 3 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 4 | '../_base_/default_runtime.py', 5 | '../_base_/models/tinyvit/tinyvit-5m.py', 6 | ] 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/mixmim/benchmarks/mixmim-base_8xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../../_base_/models/mixmim/mixmim_base.py', 3 | '../../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../../_base_/schedules/imagenet_bs256.py', 5 | '../../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/shufflenet_v1/shufflenet-v1-1x_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/shufflenet_v1_1x.py', 3 | '../_base_/datasets/imagenet_bs64_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs1024_linearlr_bn_nowd.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/shufflenet_v2/shufflenet-v2-1x_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/shufflenet_v2_1x.py', 3 | '../_base_/datasets/imagenet_bs64_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs1024_linearlr_bn_nowd.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_r101-caffe_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50-caffe_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict( 6 | type='Pretrained', 7 | checkpoint='open-mmlab://detectron2/resnet101_caffe'))) 8 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_r101_fpn_8xb8-amp-lsj-200e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_8xb8-amp-lsj-200e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnetv1c101_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnetv1c50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | 7 | model = dict(backbone=dict(depth=101)) 8 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnetv1c152_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnetv1c50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | 7 | model = dict(backbone=dict(depth=152)) 8 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/wrn/wide-resnet101_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/wide-resnet50.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', '../_base_/default_runtime.py' 5 | ] 6 | 7 | model = dict(backbone=dict(depth=101)) 8 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/efficientformer/efficientformer-l1_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/efficientformer-l1.py', 3 | '../_base_/datasets/imagenet_bs128_poolformer_small_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/swin_transformer_v2/swinv2-base-w8_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/base_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/swin_transformer_v2/swinv2-tiny-w8_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/tiny_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/swin_transformer_v2/swinv2-small-w8_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/small_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_r18_fpn_8xb8-amp-lsj-200e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_8xb8-amp-lsj-200e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=18, 6 | init_cfg=dict(type='Pretrained', checkpoint='torchvision://resnet18')), 7 | neck=dict(in_channels=[64, 128, 256, 512])) 8 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r18_4xb2-40k_cityscapes-512x1024.py: -------------------------------------------------------------------------------- 1 | _base_ = './upernet_r50_4xb2-40k_cityscapes-512x1024.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnet18_v1c', 4 | backbone=dict(depth=18), 5 | decode_head=dict(in_channels=[64, 128, 256, 512]), 6 | auxiliary_head=dict(in_channels=256)) 7 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r18_4xb2-80k_cityscapes-512x1024.py: -------------------------------------------------------------------------------- 1 | _base_ = './upernet_r50_4xb2-80k_cityscapes-512x1024.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnet18_v1c', 4 | backbone=dict(depth=18), 5 | decode_head=dict(in_channels=[64, 128, 256, 512]), 6 | auxiliary_head=dict(in_channels=256)) 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/vgg/vgg11_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg11.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(optimizer=dict(lr=0.01)) 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/vgg/vgg13_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg13.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(optimizer=dict(lr=0.01)) 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/vgg/vgg16_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg16.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(optimizer=dict(lr=0.01)) 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/vgg/vgg19_8xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vgg19.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(optimizer=dict(lr=0.01)) 10 | -------------------------------------------------------------------------------- /detection/tools/analysis_tools/mot/dist_mot_search.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | CONFIG=$1 4 | GPUS=$2 5 | PORT=${PORT:-29500} 6 | 7 | PYTHONPATH="$(dirname $0)/..":$PYTHONPATH \ 8 | python -m torch.distributed.launch --nproc_per_node=$GPUS --master_port=$PORT \ 9 | $(dirname "$0")/mot_param_search.py $CONFIG --launcher pytorch ${@:3} 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/conformer/conformer-base-p16_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/conformer/base-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_conformer.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | train_dataloader = dict(batch_size=128) 9 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/conformer/conformer-small-p16_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/conformer/small-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_conformer.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | train_dataloader = dict(batch_size=128) 9 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/conformer/conformer-small-p32_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/conformer/small-p32.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_conformer.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | train_dataloader = dict(batch_size=128) 9 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/conformer/conformer-tiny-p16_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/conformer/tiny-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_conformer.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | train_dataloader = dict(batch_size=128) 9 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/eva/eva-g-p14_8xb16_in1k-336px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/eva/eva-g.py', 3 | '../_base_/datasets/imagenet_bs16_eva_336.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(img_size=336)) 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/eva/eva-g-p14_8xb16_in1k-560px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/eva/eva-g.py', 3 | '../_base_/datasets/imagenet_bs16_eva_560.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(img_size=560)) 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/eva/eva-l-p14_8xb16_in1k-196px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/eva/eva-l.py', 3 | '../_base_/datasets/imagenet_bs16_eva_196.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(img_size=196)) 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/eva/eva-l-p14_8xb16_in1k-336px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/eva/eva-l.py', 3 | '../_base_/datasets/imagenet_bs16_eva_336.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(img_size=336)) 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/mlp_mixer/mlp-mixer-base-p16_64xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mlp_mixer_base_patch16.py', 3 | '../_base_/datasets/imagenet_bs64_mixer_224.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 9 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/mlp_mixer/mlp-mixer-large-p16_64xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mlp_mixer_large_patch16.py', 3 | '../_base_/datasets/imagenet_bs64_mixer_224.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 9 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/vgg11.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='VGG', depth=11, num_classes=1000), 5 | neck=None, 6 | head=dict( 7 | type='ClsHead', 8 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 9 | topk=(1, 5), 10 | )) 11 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/vgg13.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='VGG', depth=13, num_classes=1000), 5 | neck=None, 6 | head=dict( 7 | type='ClsHead', 8 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 9 | topk=(1, 5), 10 | )) 11 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/vgg16.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='VGG', depth=16, num_classes=1000), 5 | neck=None, 6 | head=dict( 7 | type='ClsHead', 8 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 9 | topk=(1, 5), 10 | )) 11 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/vgg19.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='VGG', depth=19, num_classes=1000), 5 | neck=None, 6 | head=dict( 7 | type='ClsHead', 8 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 9 | topk=(1, 5), 10 | )) 11 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/davit/davit-base_4xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/davit/davit-base.py', 3 | '../_base_/datasets/imagenet_bs256_davit_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # data settings 9 | train_dataloader = dict(batch_size=256) 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/davit/davit-tiny_4xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/davit/davit-tiny.py', 3 | '../_base_/datasets/imagenet_bs256_davit_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # data settings 9 | train_dataloader = dict(batch_size=256) 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/levit/levit-256_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/levit-256-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs2048_adamw_levit.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # dataset settings 9 | train_dataloader = dict(batch_size=256) 10 | -------------------------------------------------------------------------------- /.idea/sshConfigs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/davit/davit-small_4xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/davit/davit-small.py', 3 | '../_base_/datasets/imagenet_bs256_davit_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # data settings 9 | train_dataloader = dict(batch_size=256) 10 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_r101_fpn_ms-poly-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../common/ms-poly_3x_coco-instance.py', 3 | '../_base_/models/mask-rcnn_r50_fpn.py' 4 | ] 5 | 6 | model = dict( 7 | backbone=dict( 8 | depth=101, 9 | init_cfg=dict(type='Pretrained', 10 | checkpoint='torchvision://resnet101'))) 11 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r50_4xb2-40k_cityscapes-512x1024.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | crop_size = (512, 1024) 6 | data_preprocessor = dict(size=crop_size) 7 | model = dict(data_preprocessor=data_preprocessor) 8 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r50_4xb2-80k_cityscapes-512x1024.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | crop_size = (512, 1024) 6 | data_preprocessor = dict(size=crop_size) 7 | model = dict(data_preprocessor=data_preprocessor) 8 | -------------------------------------------------------------------------------- /detection/tools/dataset_converters/scripts/preprocess_voc2012.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | DOWNLOAD_DIR=$1 4 | DATA_ROOT=$2 5 | 6 | tar -xvf $DOWNLOAD_DIR/OpenDataLab___PASCAL_VOC2012/raw/VOCtrainval_11-May-2012.tar -C $DATA_ROOT 7 | tar -xvf $DOWNLOAD_DIR/OpenDataLab___PASCAL_VOC2012/raw/VOC2012test.tar -C $DATA_ROOT 8 | rm -rf $DOWNLOAD_DIR/OpenDataLab___PASCAL_VOC2012 9 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/inception_v3.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='InceptionV3', num_classes=1000, aux_logits=False), 5 | neck=None, 6 | head=dict( 7 | type='ClsHead', 8 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 9 | topk=(1, 5)), 10 | ) 11 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/hivit/hivit-base-p16_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hivit/base_224.py', 3 | '../_base_/datasets/imagenet_bs64_hivit_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_hivit.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/hivit/hivit-small-p16_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hivit/small_224.py', 3 | '../_base_/datasets/imagenet_bs64_hivit_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_hivit.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/hivit/hivit-tiny-p16_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hivit/tiny_224.py', 3 | '../_base_/datasets/imagenet_bs64_hivit_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_hivit.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/swin_transformer_v2/swinv2-base-w16_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/base_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | model = dict(backbone=dict(window_size=[16, 16, 16, 8])) 9 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/swin_transformer_v2/swinv2-small-w16_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/small_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | model = dict(backbone=dict(window_size=[16, 16, 16, 8])) 9 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/swin_transformer_v2/swinv2-tiny-w16_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/tiny_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | model = dict(backbone=dict(window_size=[16, 16, 16, 8])) 9 | -------------------------------------------------------------------------------- /detection/tools/dataset_converters/scripts/preprocess_voc2007.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | DOWNLOAD_DIR=$1 4 | DATA_ROOT=$2 5 | 6 | tar -xvf $DOWNLOAD_DIR/OpenDataLab___PASCAL_VOC2007/raw/VOCtrainval_06-Nov-2007.tar -C $DATA_ROOT 7 | tar -xvf $DOWNLOAD_DIR/OpenDataLab___PASCAL_VOC2007/raw/VOCtestnoimgs_06-Nov-2007.tar -C $DATA_ROOT 8 | rm -rf $DOWNLOAD_DIR/OpenDataLab___PASCAL_VOC2007 9 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/swin_transformer/swin-base_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer/base_224.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/swin_transformer/swin-large_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer/large_224.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/swin_transformer/swin-small_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer/small_224.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/swin_transformer/swin-tiny_16xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer/tiny_224.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/vgg11bn.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='VGG', depth=11, norm_cfg=dict(type='BN'), num_classes=1000), 6 | neck=None, 7 | head=dict( 8 | type='ClsHead', 9 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 10 | topk=(1, 5), 11 | )) 12 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/vgg13bn.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='VGG', depth=13, norm_cfg=dict(type='BN'), num_classes=1000), 6 | neck=None, 7 | head=dict( 8 | type='ClsHead', 9 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 10 | topk=(1, 5), 11 | )) 12 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/vgg16bn.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='VGG', depth=16, norm_cfg=dict(type='BN'), num_classes=1000), 6 | neck=None, 7 | head=dict( 8 | type='ClsHead', 9 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 10 | topk=(1, 5), 11 | )) 12 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/vgg19bn.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='VGG', depth=19, norm_cfg=dict(type='BN'), num_classes=1000), 6 | neck=None, 7 | head=dict( 8 | type='ClsHead', 9 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 10 | topk=(1, 5), 11 | )) 12 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/swin_transformer/swin-base_16xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer/base_384.py', 3 | '../_base_/datasets/imagenet_bs64_swin_384.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/swin_transformer/swin-large_16xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer/large_384.py', 3 | '../_base_/datasets/imagenet_bs64_swin_384.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | optim_wrapper = dict(clip_grad=dict(max_norm=5.0)) 10 | -------------------------------------------------------------------------------- /detection/configs/swin/mask-rcnn_swin-s-p4-w7_fpn_amp-ms-crop-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_swin-t-p4-w7_fpn_amp-ms-crop-3x_coco.py' 2 | pretrained = 'https://github.com/SwinTransformer/storage/releases/download/v1.0.0/swin_small_patch4_window7_224.pth' # noqa 3 | model = dict( 4 | backbone=dict( 5 | depths=[2, 2, 18, 2], 6 | init_cfg=dict(type='Pretrained', checkpoint=pretrained))) 7 | -------------------------------------------------------------------------------- /classification/configs/vssm/vssm_tiny_224.yaml: -------------------------------------------------------------------------------- 1 | MODEL: 2 | TYPE: vssm 3 | NAME: vssm_tiny 4 | DROP_PATH_RATE: 0.2 5 | VSSM: 6 | EMBED_DIM: 96 7 | DEPTHS: [ 2, 2, 9, 2 ] 8 | SSM_D_STATE: 16 9 | SSM_DT_RANK: "auto" 10 | SSM_RATIO: 2.0 11 | MLP_RATIO: 0.0 12 | DOWNSAMPLE: "v1" 13 | PATCHEMBED: "v1" 14 | RECURRENT: False 15 | # SSM_FORWARDTYPE: "v0" # if you want exactly the same -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet50_8xb128_coslr-90e_in21k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50.py', '../_base_/datasets/imagenet21k_bs128.py', 3 | '../_base_/schedules/imagenet_bs1024_coslr.py', 4 | '../_base_/default_runtime.py' 5 | ] 6 | 7 | # model settings 8 | model = dict(head=dict(num_classes=21843)) 9 | 10 | # runtime settings 11 | train_cfg = dict(by_epoch=True, max_epochs=90) 12 | -------------------------------------------------------------------------------- /classification/configs/vssm/vssm_small_224.yaml: -------------------------------------------------------------------------------- 1 | MODEL: 2 | TYPE: vssm 3 | NAME: vssm_small 4 | DROP_PATH_RATE: 0.3 5 | VSSM: 6 | EMBED_DIM: 96 7 | DEPTHS: [ 2, 2, 27, 2 ] 8 | SSM_D_STATE: 16 9 | SSM_DT_RANK: "auto" 10 | SSM_RATIO: 2.0 11 | MLP_RATIO: 0.0 12 | DOWNSAMPLE: "v1" 13 | PATCHEMBED: "v1" 14 | RECURRENT: False 15 | # SSM_FORWARDTYPE: "v0" # if you want exactly the same 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/densenet/densenet121.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='DenseNet', arch='121'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1024, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/densenet/densenet161.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='DenseNet', arch='161'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=2208, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/densenet/densenet169.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='DenseNet', arch='169'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1664, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/densenet/densenet201.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='DenseNet', arch='201'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1920, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet50_32xb64-warmup-lbs_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./resnet50_32xb64-warmup_in1k.py'] 2 | model = dict( 3 | head=dict( 4 | type='LinearClsHead', 5 | num_classes=1000, 6 | in_channels=2048, 7 | loss=dict( 8 | type='LabelSmoothLoss', 9 | loss_weight=1.0, 10 | label_smooth_val=0.1, 11 | num_classes=1000), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/convmixer/convmixer-1024-20.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='ConvMixer', arch='1024/20'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1024, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/convmixer/convmixer-1536-20.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='ConvMixer', arch='1536/20'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1536, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /segmentation/configs/vit/vit_deit-s16_upernet_8xb2-160k_ade20k-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = './vit_vit-b16_mln_upernet_8xb2-80k_ade20k-512x512.py' 2 | 3 | model = dict( 4 | pretrained='pretrain/deit_small_patch16_224-cd65a155.pth', 5 | backbone=dict(num_heads=6, embed_dims=384, drop_path_rate=0.1), 6 | decode_head=dict(num_classes=150, in_channels=[384, 384, 384, 384]), 7 | neck=None, 8 | auxiliary_head=dict(num_classes=150, in_channels=384)) 9 | -------------------------------------------------------------------------------- /segmentation/configs/vit/vit_deit-s16_upernet_8xb2-80k_ade20k-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = './vit_vit-b16_mln_upernet_8xb2-80k_ade20k-512x512.py' 2 | 3 | model = dict( 4 | pretrained='pretrain/deit_small_patch16_224-cd65a155.pth', 5 | backbone=dict(num_heads=6, embed_dims=384, drop_path_rate=0.1), 6 | decode_head=dict(num_classes=150, in_channels=[384, 384, 384, 384]), 7 | neck=None, 8 | auxiliary_head=dict(num_classes=150, in_channels=384)) 9 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_b0.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b0'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_b1.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b1'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_b2.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b2'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1408, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_b3.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b3'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1536, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_b4.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b4'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1792, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_b5.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b5'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=2048, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_b6.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b6'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=2304, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_b7.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b7'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=2560, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_b8.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='b8'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=2816, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_l2.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNet', arch='l2'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=5504, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/shufflenet_v1_1x.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='ShuffleNetV1', groups=3), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=960, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /segmentation/configs/swin/swin-base-patch4-window7-in22k-pre_upernet_8xb2-160k_ade20k-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | './swin-base-patch4-window7-in1k-pre_upernet_8xb2-160k_ade20k-512x512.py' 3 | ] 4 | checkpoint_file = 'https://download.openmmlab.com/mmsegmentation/v0.5/pretrain/swin/swin_base_patch4_window7_224_22k_20220317-4f79f7c0.pth' # noqa 5 | model = dict( 6 | backbone=dict( 7 | init_cfg=dict(type='Pretrained', checkpoint=checkpoint_file))) 8 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/mobilevit/mobilevit_s.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='MobileViT', arch='small'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=640, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/levit/levit-128_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/levit-256-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs2048_adamw_levit.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(arch='128'), head=dict(in_channels=384)) 10 | 11 | # dataset settings 12 | train_dataloader = dict(batch_size=256) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/levit/levit-192_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/levit-256-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs2048_adamw_levit.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(arch='192'), head=dict(in_channels=384)) 10 | 11 | # dataset settings 12 | train_dataloader = dict(batch_size=256) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/mobilenet_v2_1x.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='MobileNetV2', widen_factor=1.0), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/mobilevit/mobilevit_xs.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='MobileViT', arch='x_small'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=384, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/mobilevit/mobilevit_xxs.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='MobileViT', arch='xx_small'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=320, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/regnet/regnetx_1.6gf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_1.6gf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=912, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/regnet/regnetx_12gf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_12gf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=2240, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/regnet/regnetx_3.2gf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_3.2gf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1008, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/regnet/regnetx_4.0gf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_4.0gf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1360, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/regnet/regnetx_400mf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_400mf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=384, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/regnet/regnetx_6.4gf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_6.4gf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1624, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/regnet/regnetx_8.0gf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_8.0gf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1920, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/regnet/regnetx_800mf.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='RegNet', arch='regnetx_800mf'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=672, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/shufflenet_v2_1x.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='ShuffleNetV2', widen_factor=1.0), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1024, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/levit/levit-128s_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/levit-256-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs2048_adamw_levit.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # model settings 9 | model = dict(backbone=dict(arch='128s'), head=dict(in_channels=384)) 10 | 11 | # dataset settings 12 | train_dataloader = dict(batch_size=256) 13 | -------------------------------------------------------------------------------- /classification/configs/vssm/vssm_base_224.yaml: -------------------------------------------------------------------------------- 1 | MODEL: 2 | TYPE: vssm 3 | NAME: vssm_base 4 | DROP_PATH_RATE: 0.5 5 | # DROP_PATH_RATE: 0.6 6 | VSSM: 7 | EMBED_DIM: 128 8 | DEPTHS: [ 2, 2, 27, 2 ] 9 | SSM_D_STATE: 16 10 | SSM_DT_RANK: "auto" 11 | SSM_RATIO: 2.0 12 | MLP_RATIO: 0.0 13 | DOWNSAMPLE: "v1" 14 | PATCHEMBED: "v1" 15 | RECURRENT: False 16 | # SSM_FORWARDTYPE: "v0" # if you want exactly the same 17 | 18 | -------------------------------------------------------------------------------- /classification/data/__init__.py: -------------------------------------------------------------------------------- 1 | from .build import build_loader as _build_loader 2 | from .data_simmim_pt import build_loader_simmim 3 | from .data_simmim_ft import build_loader_finetune 4 | 5 | 6 | def build_loader(config, simmim=False, is_pretrain=False): 7 | if not simmim: 8 | return _build_loader(config) 9 | if is_pretrain: 10 | return build_loader_simmim(config) 11 | else: 12 | return build_loader_finetune(config) 13 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r50_4xb4-160k_ade20k-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | crop_size = (512, 512) 6 | data_preprocessor = dict(size=crop_size) 7 | model = dict( 8 | data_preprocessor=data_preprocessor, 9 | decode_head=dict(num_classes=150), 10 | auxiliary_head=dict(num_classes=150)) 11 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r50_4xb4-80k_ade20k-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | crop_size = (512, 512) 6 | data_preprocessor = dict(size=crop_size) 7 | model = dict( 8 | data_preprocessor=data_preprocessor, 9 | decode_head=dict(num_classes=150), 10 | auxiliary_head=dict(num_classes=150)) 11 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/convmixer/convmixer-768-32.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='ConvMixer', arch='768/32', act_cfg=dict(type='ReLU')), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=768, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | )) 12 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_v2/efficientnetv2_b0.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='b0'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_v2/efficientnetv2_b1.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='b1'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_v2/efficientnetv2_b2.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='b2'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1408, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_v2/efficientnetv2_b3.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='b3'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1536, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_v2/efficientnetv2_l.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='l'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_v2/efficientnetv2_m.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='m'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_v2/efficientnetv2_s.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='s'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_v2/efficientnetv2_xl.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='EfficientNetV2', arch='xl'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1280, 10 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 11 | topk=(1, 5), 12 | )) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/schedules/imagenet_sgd_coslr_200e.py: -------------------------------------------------------------------------------- 1 | # optimizer wrapper 2 | optim_wrapper = dict( 3 | type='OptimWrapper', 4 | optimizer=dict(type='SGD', lr=0.03, weight_decay=1e-4, momentum=0.9)) 5 | 6 | # learning rate scheduler 7 | param_scheduler = [ 8 | dict(type='CosineAnnealingLR', T_max=200, by_epoch=True, begin=0, end=200) 9 | ] 10 | 11 | # runtime settings 12 | train_cfg = dict(type='EpochBasedTrainLoop', max_epochs=200) 13 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r18_4xb4-160k_ade20k-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | model = dict( 6 | pretrained='open-mmlab://resnet18_v1c', 7 | backbone=dict(depth=18), 8 | decode_head=dict(in_channels=[64, 128, 256, 512], num_classes=150), 9 | auxiliary_head=dict(in_channels=256, num_classes=150)) 10 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r18_4xb4-80k_ade20k-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | pretrained='open-mmlab://resnet18_v1c', 7 | backbone=dict(depth=18), 8 | decode_head=dict(in_channels=[64, 128, 256, 512], num_classes=150), 9 | auxiliary_head=dict(in_channels=256, num_classes=150)) 10 | -------------------------------------------------------------------------------- /segmentation/configs/swin/swin-base-patch4-window12-in22k-384x384-pre_upernet_8xb2-160k_ade20k-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | './swin-base-patch4-window12-in1k-384x384-pre_upernet_8xb2-160k_ade20k-512x512.py' # noqa 3 | ] 4 | checkpoint_file = 'https://download.openmmlab.com/mmsegmentation/v0.5/pretrain/swin/swin_base_patch4_window12_384_22k_20220317-e5c09f74.pth' # noqa 5 | model = dict( 6 | backbone=dict( 7 | init_cfg=dict(type='Pretrained', checkpoint=checkpoint_file))) 8 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r50_4xb4-20k_voc12aug-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_20k.py' 5 | ] 6 | crop_size = (512, 512) 7 | data_preprocessor = dict(size=crop_size) 8 | model = dict( 9 | data_preprocessor=data_preprocessor, 10 | decode_head=dict(num_classes=21), 11 | auxiliary_head=dict(num_classes=21)) 12 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r50_4xb4-40k_voc12aug-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | crop_size = (512, 512) 7 | data_preprocessor = dict(size=crop_size) 8 | model = dict( 9 | data_preprocessor=data_preprocessor, 10 | decode_head=dict(num_classes=21), 11 | auxiliary_head=dict(num_classes=21)) 12 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/replknet/replknet-31B_32xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/replknet-31B_in1k.py', 3 | '../_base_/datasets/imagenet_bs32_pil_bicubic.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | param_scheduler = dict( 10 | type='CosineAnnealingLR', T_max=300, by_epoch=True, begin=0, end=300) 11 | 12 | train_cfg = dict(by_epoch=True, max_epochs=300) 13 | -------------------------------------------------------------------------------- /analyze/get_ckpt.py: -------------------------------------------------------------------------------- 1 | import torch 2 | import os 3 | 4 | 5 | def modema(ckpt=None): 6 | opath = os.path.join(os.path.dirname(ckpt), f"new_{os.path.basename(ckpt)}") 7 | _ckpt = torch.load(open(ckpt, "rb"), map_location=torch.device("cpu")) 8 | _ckpt["model"] = _ckpt["model_ema"] 9 | torch.save(_ckpt, open(opath, "wb")) 10 | 11 | if __name__ == "__main__": 12 | modema("./vmamba_small_e238_ema.pth") 13 | 14 | # Readme: How to use ema ckpts: 15 | # python get_ckpt.py 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/replknet/replknet-XL_32xb64_in1k-320px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/replknet-XL_in1k.py', 3 | '../_base_/datasets/imagenet_bs8_pil_bicubic_320.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | param_scheduler = dict( 10 | type='CosineAnnealingLR', T_max=300, by_epoch=True, begin=0, end=300) 11 | 12 | train_cfg = dict(by_epoch=True, max_epochs=300) 13 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_r50-caffe_fpn_ms-poly-2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50-caffe_fpn_ms-poly-1x_coco.py' 2 | 3 | train_cfg = dict(max_epochs=24) 4 | # learning rate 5 | param_scheduler = [ 6 | dict( 7 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 8 | dict( 9 | type='MultiStepLR', 10 | begin=0, 11 | end=24, 12 | by_epoch=True, 13 | milestones=[16, 22], 14 | gamma=0.1) 15 | ] 16 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_r50-caffe_fpn_ms-poly-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50-caffe_fpn_ms-poly-1x_coco.py' 2 | 3 | train_cfg = dict(max_epochs=36) 4 | # learning rate 5 | param_scheduler = [ 6 | dict( 7 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 8 | dict( 9 | type='MultiStepLR', 10 | begin=0, 11 | end=24, 12 | by_epoch=True, 13 | milestones=[28, 34], 14 | gamma=0.1) 15 | ] 16 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r18_4xb4-20k_voc12aug-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_20k.py' 5 | ] 6 | model = dict( 7 | pretrained='open-mmlab://resnet18_v1c', 8 | backbone=dict(depth=18), 9 | decode_head=dict(in_channels=[64, 128, 256, 512], num_classes=21), 10 | auxiliary_head=dict(in_channels=256, num_classes=21)) 11 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r18_4xb4-40k_voc12aug-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | pretrained='open-mmlab://resnet18_v1c', 8 | backbone=dict(depth=18), 9 | decode_head=dict(in_channels=[64, 128, 256, 512], num_classes=21), 10 | auxiliary_head=dict(in_channels=256, num_classes=21)) 11 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/replknet-XL_in1k.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='RepLKNet', 5 | arch='XL', 6 | out_indices=(3, ), 7 | ), 8 | neck=dict(type='GlobalAveragePooling'), 9 | head=dict( 10 | type='LinearClsHead', 11 | num_classes=1000, 12 | in_channels=2048, 13 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 14 | topk=(1, 5), 15 | )) 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/repvgg-A0_in1k.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='RepVGG', 5 | arch='A0', 6 | out_indices=(3, ), 7 | ), 8 | neck=dict(type='GlobalAveragePooling'), 9 | head=dict( 10 | type='LinearClsHead', 11 | num_classes=1000, 12 | in_channels=1280, 13 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 14 | topk=(1, 5), 15 | )) 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/hrnet/hrnet-w18_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w18.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/hrnet/hrnet-w30_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w30.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/hrnet/hrnet-w32_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w32.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/hrnet/hrnet-w40_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w40.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/hrnet/hrnet-w44_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w44.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/hrnet/hrnet-w48_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w48.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/hrnet/hrnet-w64_4xb32_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hrnet/hrnet-w64.py', 3 | '../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # NOTE: `auto_scale_lr` is for automatically scaling LR 9 | # based on the actual training batch size. 10 | # base_batch_size = (4 GPUs) x (32 samples per GPU) 11 | auto_scale_lr = dict(base_batch_size=128) 12 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/replknet/replknet-31B_32xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/replknet-31B_in1k.py', 3 | '../_base_/datasets/imagenet_bs16_pil_bicubic_384.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | param_scheduler = dict( 10 | type='CosineAnnealingLR', T_max=300, by_epoch=True, begin=0, end=300) 11 | 12 | train_cfg = dict(by_epoch=True, max_epochs=300) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/replknet/replknet-31L_32xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/replknet-31L_in1k.py', 3 | '../_base_/datasets/imagenet_bs16_pil_bicubic_384.py', 4 | '../_base_/schedules/imagenet_bs256_coslr.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # schedule settings 9 | param_scheduler = dict( 10 | type='CosineAnnealingLR', T_max=300, by_epoch=True, begin=0, end=300) 11 | 12 | train_cfg = dict(by_epoch=True, max_epochs=300) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/replknet-31L_in1k.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='RepLKNet', 5 | arch='31L', 6 | out_indices=(3, ), 7 | ), 8 | neck=dict(type='GlobalAveragePooling'), 9 | head=dict( 10 | type='LinearClsHead', 11 | num_classes=1000, 12 | in_channels=1536, 13 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 14 | topk=(1, 5), 15 | )) 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/swin_transformer/large_224.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | # Only for evaluation 3 | model = dict( 4 | type='ImageClassifier', 5 | backbone=dict(type='SwinTransformer', arch='large', img_size=224), 6 | neck=dict(type='GlobalAveragePooling'), 7 | head=dict( 8 | type='LinearClsHead', 9 | num_classes=1000, 10 | in_channels=1536, 11 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 12 | topk=(1, 5))) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/levit/levit-384_8xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/levit-256-p16.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs2048_adamw_levit.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # model settings 9 | model = dict( 10 | backbone=dict(arch='384', drop_path_rate=0.1), 11 | head=dict(in_channels=768), 12 | ) 13 | 14 | # dataset settings 15 | train_dataloader = dict(batch_size=256) 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/hornet/hornet-base_8xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hornet/hornet-base.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | data = dict(samples_per_gpu=64) 9 | 10 | optim_wrapper = dict(optimizer=dict(lr=4e-3), clip_grad=dict(max_norm=5.0)) 11 | 12 | custom_hooks = [dict(type='EMAHook', momentum=4e-5, priority='ABOVE_NORMAL')] 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/hornet/hornet-small_8xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hornet/hornet-small.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | data = dict(samples_per_gpu=64) 9 | 10 | optim_wrapper = dict(optimizer=dict(lr=4e-3), clip_grad=dict(max_norm=5.0)) 11 | 12 | custom_hooks = [dict(type='EMAHook', momentum=4e-5, priority='ABOVE_NORMAL')] 13 | -------------------------------------------------------------------------------- /segmentation/configs/vit/vit_deit-s16_mln_upernet_8xb2-160k_ade20k-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = './vit_vit-b16_mln_upernet_8xb2-160k_ade20k-512x512.py' 2 | 3 | model = dict( 4 | pretrained='pretrain/deit_small_patch16_224-cd65a155.pth', 5 | backbone=dict(num_heads=6, embed_dims=384, drop_path_rate=0.1), 6 | decode_head=dict(num_classes=150, in_channels=[384, 384, 384, 384]), 7 | neck=dict(in_channels=[384, 384, 384, 384], out_channels=384), 8 | auxiliary_head=dict(num_classes=150, in_channels=384)) 9 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/hornet/hornet-base-gf_8xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hornet/hornet-base-gf.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | data = dict(samples_per_gpu=64) 9 | 10 | optim_wrapper = dict(optimizer=dict(lr=4e-3), clip_grad=dict(max_norm=1.0)) 11 | 12 | custom_hooks = [dict(type='EMAHook', momentum=4e-5, priority='ABOVE_NORMAL')] 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/hornet/hornet-tiny_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hornet/hornet-tiny.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | data = dict(samples_per_gpu=128) 9 | 10 | optim_wrapper = dict(optimizer=dict(lr=4e-3), clip_grad=dict(max_norm=100.0)) 11 | 12 | custom_hooks = [dict(type='EMAHook', momentum=4e-5, priority='ABOVE_NORMAL')] 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/schedules/imagenet_lars_coslr_90e.py: -------------------------------------------------------------------------------- 1 | # optimizer wrapper 2 | optim_wrapper = dict( 3 | type='OptimWrapper', 4 | optimizer=dict(type='LARS', lr=1.6, momentum=0.9, weight_decay=0.)) 5 | 6 | # learning rate scheduler 7 | param_scheduler = [ 8 | dict(type='CosineAnnealingLR', T_max=90, by_epoch=True, begin=0, end=90) 9 | ] 10 | 11 | # runtime settings 12 | train_cfg = dict(type='EpochBasedTrainLoop', max_epochs=90) 13 | val_cfg = dict() 14 | test_cfg = dict() 15 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/schedules/imagenet_sgd_coslr_100e.py: -------------------------------------------------------------------------------- 1 | # optimizer wrapper 2 | optim_wrapper = dict( 3 | type='OptimWrapper', 4 | optimizer=dict(type='SGD', lr=0.3, momentum=0.9, weight_decay=1e-6)) 5 | 6 | # learning rate scheduler 7 | param_scheduler = [ 8 | dict(type='CosineAnnealingLR', T_max=100, by_epoch=True, begin=0, end=100) 9 | ] 10 | 11 | # runtime settings 12 | train_cfg = dict(type='EpochBasedTrainLoop', max_epochs=100) 13 | val_cfg = dict() 14 | test_cfg = dict() 15 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/schedules/imagenet_sgd_steplr_100e.py: -------------------------------------------------------------------------------- 1 | # optimizer wrapper 2 | optim_wrapper = dict( 3 | type='OptimWrapper', 4 | optimizer=dict(type='SGD', lr=0.1, momentum=0.9, weight_decay=1e-4)) 5 | 6 | # learning rate scheduler 7 | param_scheduler = [ 8 | dict(type='MultiStepLR', by_epoch=True, milestones=[60, 80], gamma=0.1) 9 | ] 10 | 11 | # runtime settings 12 | train_cfg = dict(type='EpochBasedTrainLoop', max_epochs=100) 13 | val_cfg = dict() 14 | test_cfg = dict() 15 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/hornet/hornet-small-gf_8xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hornet/hornet-small-gf.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | data = dict(samples_per_gpu=64) 9 | 10 | optim_wrapper = dict(optimizer=dict(lr=4e-3), clip_grad=dict(max_norm=1.0)) 11 | 12 | custom_hooks = [dict(type='EMAHook', momentum=4e-5, priority='ABOVE_NORMAL')] 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/hornet/hornet-tiny-gf_8xb128_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/hornet/hornet-tiny-gf.py', 3 | '../_base_/datasets/imagenet_bs64_swin_224.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | data = dict(samples_per_gpu=128) 9 | 10 | optim_wrapper = dict(optimizer=dict(lr=4e-3), clip_grad=dict(max_norm=1.0)) 11 | 12 | custom_hooks = [dict(type='EMAHook', momentum=4e-5, priority='ABOVE_NORMAL')] 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/mae/benchmarks/vit-huge-p14_8xb128-fsdp-coslr-50e_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./vit-huge-p14_8xb128-coslr-50e_in1k.py'] 2 | 3 | strategy = dict( 4 | type='FSDPStrategy', 5 | model_wrapper=dict( 6 | auto_wrap_policy=dict( 7 | type='torch.distributed.fsdp.wrap.size_based_auto_wrap_policy', 8 | min_num_params=1e7))) 9 | 10 | optim_wrapper = dict(type='AmpOptimWrapper') 11 | 12 | # runner which supports strategies 13 | runner_type = 'FlexibleRunner' 14 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/mae/benchmarks/vit-large-p16_8xb128-fsdp-coslr-50e_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./vit-large-p16_8xb128-coslr-50e_in1k.py'] 2 | 3 | strategy = dict( 4 | type='FSDPStrategy', 5 | model_wrapper=dict( 6 | auto_wrap_policy=dict( 7 | type='torch.distributed.fsdp.wrap.size_based_auto_wrap_policy', 8 | min_num_params=1e7))) 9 | 10 | optim_wrapper = dict(type='AmpOptimWrapper') 11 | 12 | # runner which supports strategies 13 | runner_type = 'FlexibleRunner' 14 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/mobilenet_v3/mobilenet-v3-small_8xb16_cifar10.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mobilenet_v3/mobilenet_v3_small_cifar.py', 3 | '../_base_/datasets/cifar10_bs16.py', 4 | '../_base_/schedules/cifar10_bs128.py', '../_base_/default_runtime.py' 5 | ] 6 | 7 | # schedule settings 8 | param_scheduler = dict( 9 | type='MultiStepLR', 10 | by_epoch=True, 11 | milestones=[120, 170], 12 | gamma=0.1, 13 | ) 14 | 15 | train_cfg = dict(by_epoch=True, max_epochs=200) 16 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_r50-caffe_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | # use caffe img_norm 4 | data_preprocessor=dict( 5 | mean=[103.530, 116.280, 123.675], 6 | std=[1.0, 1.0, 1.0], 7 | bgr_to_rgb=False), 8 | backbone=dict( 9 | norm_cfg=dict(requires_grad=False), 10 | style='caffe', 11 | init_cfg=dict( 12 | type='Pretrained', 13 | checkpoint='open-mmlab://detectron2/resnet50_caffe'))) 14 | -------------------------------------------------------------------------------- /segmentation/tools/dist_train.sh: -------------------------------------------------------------------------------- 1 | CONFIG=$1 2 | GPUS=$2 3 | NNODES=${NNODES:-1} 4 | NODE_RANK=${NODE_RANK:-0} 5 | PORT=${PORT:-29500} 6 | MASTER_ADDR=${MASTER_ADDR:-"127.0.0.1"} 7 | 8 | PYTHONPATH="$(dirname $0)/..":$PYTHONPATH \ 9 | python -m torch.distributed.launch \ 10 | --nnodes=$NNODES \ 11 | --node_rank=$NODE_RANK \ 12 | --master_addr=$MASTER_ADDR \ 13 | --nproc_per_node=$GPUS \ 14 | --master_port=$PORT \ 15 | $(dirname "$0")/train.py \ 16 | $CONFIG \ 17 | --launcher pytorch ${@:3} 18 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_em.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | # `em` means EfficientNet-EdgeTPU-M arch 5 | backbone=dict(type='EfficientNet', arch='em', act_cfg=dict(type='ReLU')), 6 | neck=dict(type='GlobalAveragePooling'), 7 | head=dict( 8 | type='LinearClsHead', 9 | num_classes=1000, 10 | in_channels=1280, 11 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 12 | topk=(1, 5), 13 | )) 14 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/efficientnet_es.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | # `es` means EfficientNet-EdgeTPU-S arch 5 | backbone=dict(type='EfficientNet', arch='es', act_cfg=dict(type='ReLU')), 6 | neck=dict(type='GlobalAveragePooling'), 7 | head=dict( 8 | type='LinearClsHead', 9 | num_classes=1000, 10 | in_channels=1280, 11 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 12 | topk=(1, 5), 13 | )) 14 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet50_8xb32-coslr-preciseBN_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = 'resnet50_8xb32-coslr_in1k.py' 2 | 3 | # Precise BN hook will update the bn stats, so this hook should be executed 4 | # before CheckpointHook(priority of 'VERY_LOW') and 5 | # EMAHook(priority of 'NORMAL') So set the priority of PreciseBNHook to 6 | # 'ABOVENORMAL' here. 7 | custom_hooks = [ 8 | dict( 9 | type='PreciseBNHook', 10 | num_samples=8192, 11 | interval=1, 12 | priority='ABOVE_NORMAL') 13 | ] 14 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/swin_transformer_v2/swinv2-large-w16_in21k-pre_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | # Only for evaluation 2 | _base_ = [ 3 | '../_base_/models/swin_transformer_v2/large_256.py', 4 | '../_base_/datasets/imagenet_bs64_swin_256.py', 5 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 6 | '../_base_/default_runtime.py' 7 | ] 8 | 9 | model = dict( 10 | type='ImageClassifier', 11 | backbone=dict( 12 | window_size=[16, 16, 16, 8], pretrained_window_sizes=[12, 12, 12, 6]), 13 | ) 14 | -------------------------------------------------------------------------------- /classification/configs/ms_vssm/vssm_micro_224_ms.yaml: -------------------------------------------------------------------------------- 1 | MODEL: 2 | TYPE: vssm 3 | NAME: vssm_micro_ms_e300 4 | DROP_PATH_RATE: 0.2 5 | VSSM: 6 | EMBED_DIM: 64 7 | DEPTHS: [ 1, 2, 5, 2] 8 | SSM_D_STATE: 1 9 | SSM_DT_RANK: "auto" 10 | SSM_RATIO: 2.0 11 | MLP_RATIO: 0.0 12 | DOWNSAMPLE: "v1" 13 | PATCHEMBED: "v1" 14 | CONVFFN: True 15 | ADD_SE: True 16 | SSCORE_TYPE: "multiscale_4scan_12" 17 | FFN_DROPOUT: 0.0 18 | 19 | #ms version: 11.88M & 1.532GFLOPs, 300 epochs, b32 0.16iter/s -------------------------------------------------------------------------------- /classification/configs/ms_vssm/vssm_nano_224_ms.yaml: -------------------------------------------------------------------------------- 1 | MODEL: 2 | TYPE: vssm 3 | NAME: vssm_nano_ms_e300 4 | DROP_PATH_RATE: 0.2 5 | VSSM: 6 | EMBED_DIM: 48 7 | DEPTHS: [ 1, 2, 5, 2] 8 | SSM_D_STATE: 1 9 | SSM_DT_RANK: "auto" 10 | SSM_RATIO: 2.0 11 | MLP_RATIO: 0.0 12 | DOWNSAMPLE: "v1" 13 | PATCHEMBED: "v1" 14 | CONVFFN: True 15 | ADD_SE: True 16 | SSCORE_TYPE: "multiscale_4scan_12" 17 | FFN_DROPOUT: 0.0 18 | 19 | 20 | #ms version: 6.86M & 0.88GFLOPs, 300 epochs, b32 0.14iter/s -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnet18_cifar.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNet_CIFAR', 6 | depth=18, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=10, 14 | in_channels=512, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | )) 17 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnet34_cifar.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNet_CIFAR', 6 | depth=34, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=10, 14 | in_channels=512, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | )) 17 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnet101_cifar.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNet_CIFAR', 6 | depth=101, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=10, 14 | in_channels=2048, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | )) 17 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnet152_cifar.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNet_CIFAR', 6 | depth=152, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=10, 14 | in_channels=2048, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | )) 17 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnet50_cifar.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNet_CIFAR', 6 | depth=50, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=10, 14 | in_channels=2048, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | )) 17 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/swin_transformer_v2/swinv2-base-w16_in21k-pre_16xb64_in1k-256px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/base_256.py', 3 | '../_base_/datasets/imagenet_bs64_swin_256.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | model = dict( 9 | type='ImageClassifier', 10 | backbone=dict( 11 | window_size=[16, 16, 16, 8], 12 | drop_path_rate=0.2, 13 | pretrained_window_sizes=[12, 12, 12, 6])) 14 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/vision_transformer/vit-base-p16_64xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vit-base-p16.py', 3 | '../_base_/datasets/imagenet_bs64_pil_resize_autoaug.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model setting 9 | model = dict( 10 | head=dict(hidden_dim=3072), 11 | train_cfg=dict(augments=dict(type='Mixup', alpha=0.2)), 12 | ) 13 | 14 | # schedule setting 15 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/vision_transformer/vit-base-p32_64xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vit-base-p32.py', 3 | '../_base_/datasets/imagenet_bs64_pil_resize_autoaug.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model setting 9 | model = dict( 10 | head=dict(hidden_dim=3072), 11 | train_cfg=dict(augments=dict(type='Mixup', alpha=0.2)), 12 | ) 13 | 14 | # schedule setting 15 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/vision_transformer/vit-large-p16_64xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vit-large-p16.py', 3 | '../_base_/datasets/imagenet_bs64_pil_resize_autoaug.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model setting 9 | model = dict( 10 | head=dict(hidden_dim=3072), 11 | train_cfg=dict(augments=dict(type='Mixup', alpha=0.2)), 12 | ) 13 | 14 | # schedule setting 15 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/vision_transformer/vit-large-p32_64xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/vit-large-p32.py', 3 | '../_base_/datasets/imagenet_bs64_pil_resize_autoaug.py', 4 | '../_base_/schedules/imagenet_bs4096_AdamW.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | # model setting 9 | model = dict( 10 | head=dict(hidden_dim=3072), 11 | train_cfg=dict(augments=dict(type='Mixup', alpha=0.2)), 12 | ) 13 | 14 | # schedule setting 15 | optim_wrapper = dict(clip_grad=dict(max_norm=1.0)) 16 | -------------------------------------------------------------------------------- /classification/configs/ms_vssm/vssm_tiny_224_ms.yaml: -------------------------------------------------------------------------------- 1 | MODEL: 2 | TYPE: vssm 3 | NAME: vssm_tiny_ms_e300 4 | DROP_PATH_RATE: 0.2 5 | VSSM: 6 | EMBED_DIM: 96 7 | DEPTHS: [ 1, 2, 9, 2] 8 | SSM_D_STATE: 1 9 | SSM_DT_RANK: "auto" 10 | SSM_RATIO: 2.0 11 | MLP_RATIO: 0.0 12 | DOWNSAMPLE: "v1" 13 | PATCHEMBED: "v1" 14 | CONVFFN: True 15 | ADD_SE: True 16 | SSCORE_TYPE: "multiscale_4scan_12" 17 | FFN_DROPOUT: 0.0 18 | 19 | #ms version: 33.08M & 4.613GFLOPs, 300 epochs, b32 0.25iter/s [1292] 20 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_x101-32x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r101_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_x101-32x4d_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r101_fpn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /segmentation/configs/_base_/default_runtime.py: -------------------------------------------------------------------------------- 1 | default_scope = 'mmseg' 2 | env_cfg = dict( 3 | cudnn_benchmark=True, 4 | mp_cfg=dict(mp_start_method='fork', opencv_num_threads=0), 5 | dist_cfg=dict(backend='nccl'), 6 | ) 7 | vis_backends = [dict(type='LocalVisBackend')] 8 | visualizer = dict( 9 | type='SegLocalVisualizer', vis_backends=vis_backends, name='visualizer') 10 | log_processor = dict(by_epoch=False) 11 | log_level = 'INFO' 12 | load_from = None 13 | resume = False 14 | 15 | tta_model = dict(type='SegTTAModel') 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/hrnet/hrnet-w18.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='HRNet', arch='w18'), 5 | neck=[ 6 | dict(type='HRFuseScales', in_channels=(18, 36, 72, 144)), 7 | dict(type='GlobalAveragePooling'), 8 | ], 9 | head=dict( 10 | type='LinearClsHead', 11 | in_channels=2048, 12 | num_classes=1000, 13 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 14 | topk=(1, 5), 15 | )) 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/hrnet/hrnet-w30.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='HRNet', arch='w30'), 5 | neck=[ 6 | dict(type='HRFuseScales', in_channels=(30, 60, 120, 240)), 7 | dict(type='GlobalAveragePooling'), 8 | ], 9 | head=dict( 10 | type='LinearClsHead', 11 | in_channels=2048, 12 | num_classes=1000, 13 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 14 | topk=(1, 5), 15 | )) 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/hrnet/hrnet-w32.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='HRNet', arch='w32'), 5 | neck=[ 6 | dict(type='HRFuseScales', in_channels=(32, 64, 128, 256)), 7 | dict(type='GlobalAveragePooling'), 8 | ], 9 | head=dict( 10 | type='LinearClsHead', 11 | in_channels=2048, 12 | num_classes=1000, 13 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 14 | topk=(1, 5), 15 | )) 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/hrnet/hrnet-w40.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='HRNet', arch='w40'), 5 | neck=[ 6 | dict(type='HRFuseScales', in_channels=(40, 80, 160, 320)), 7 | dict(type='GlobalAveragePooling'), 8 | ], 9 | head=dict( 10 | type='LinearClsHead', 11 | in_channels=2048, 12 | num_classes=1000, 13 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 14 | topk=(1, 5), 15 | )) 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/hrnet/hrnet-w44.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='HRNet', arch='w44'), 5 | neck=[ 6 | dict(type='HRFuseScales', in_channels=(44, 88, 176, 352)), 7 | dict(type='GlobalAveragePooling'), 8 | ], 9 | head=dict( 10 | type='LinearClsHead', 11 | in_channels=2048, 12 | num_classes=1000, 13 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 14 | topk=(1, 5), 15 | )) 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/hrnet/hrnet-w48.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='HRNet', arch='w48'), 5 | neck=[ 6 | dict(type='HRFuseScales', in_channels=(48, 96, 192, 384)), 7 | dict(type='GlobalAveragePooling'), 8 | ], 9 | head=dict( 10 | type='LinearClsHead', 11 | in_channels=2048, 12 | num_classes=1000, 13 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 14 | topk=(1, 5), 15 | )) 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/hrnet/hrnet-w64.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='HRNet', arch='w64'), 5 | neck=[ 6 | dict(type='HRFuseScales', in_channels=(64, 128, 256, 512)), 7 | dict(type='GlobalAveragePooling'), 8 | ], 9 | head=dict( 10 | type='LinearClsHead', 11 | in_channels=2048, 12 | num_classes=1000, 13 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 14 | topk=(1, 5), 15 | )) 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/mobilenet_v3/mobilenet_v3_small_cifar.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='MobileNetV3', arch='small'), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='StackedLinearClsHead', 8 | num_classes=10, 9 | in_channels=576, 10 | mid_channels=[1280], 11 | act_cfg=dict(type='HSwish'), 12 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 13 | topk=(1, 5))) 14 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_x101-64x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_x101-32x4d_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_x101-64x4d_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_x101-32x4d_fpn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /segmentation/configs/vit/vit_deit-s16-ln_mln_upernet_8xb2-160k_ade20k-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = './vit_vit-b16_mln_upernet_8xb2-160k_ade20k-512x512.py' 2 | 3 | model = dict( 4 | pretrained='pretrain/deit_small_patch16_224-cd65a155.pth', 5 | backbone=dict( 6 | num_heads=6, embed_dims=384, drop_path_rate=0.1, final_norm=True), 7 | decode_head=dict(num_classes=150, in_channels=[384, 384, 384, 384]), 8 | neck=dict(in_channels=[384, 384, 384, 384], out_channels=384), 9 | auxiliary_head=dict(num_classes=150, in_channels=384)) 10 | -------------------------------------------------------------------------------- /detection/tools/dist_train.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | CONFIG=$1 4 | GPUS=$2 5 | NNODES=${NNODES:-1} 6 | NODE_RANK=${NODE_RANK:-0} 7 | PORT=${PORT:-29500} 8 | MASTER_ADDR=${MASTER_ADDR:-"127.0.0.1"} 9 | 10 | PYTHONPATH="$(dirname $0)/..":$PYTHONPATH \ 11 | python -m torch.distributed.launch \ 12 | --nnodes=$NNODES \ 13 | --node_rank=$NODE_RANK \ 14 | --master_addr=$MASTER_ADDR \ 15 | --nproc_per_node=$GPUS \ 16 | --master_port=$PORT \ 17 | $(dirname "$0")/train.py \ 18 | $CONFIG \ 19 | --launcher pytorch ${@:3} 20 | -------------------------------------------------------------------------------- /segmentation/configs/swin/swin-large-patch4-window12-in22k-384x384-pre_upernet_8xb2-160k_ade20k-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | 'swin-large-patch4-window7-in22k-pre_upernet_' 3 | '8xb2-160k_ade20k-512x512.py' 4 | ] 5 | checkpoint_file = 'https://download.openmmlab.com/mmsegmentation/v0.5/pretrain/swin/swin_large_patch4_window12_384_22k_20220412-6580f57d.pth' # noqa 6 | model = dict( 7 | backbone=dict( 8 | init_cfg=dict(type='Pretrained', checkpoint=checkpoint_file), 9 | pretrain_img_size=384, 10 | window_size=12)) 11 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnet101.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNet', 6 | depth=101, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=2048, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | topk=(1, 5), 17 | )) 18 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnet152.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNet', 6 | depth=152, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=2048, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | topk=(1, 5), 17 | )) 18 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnet18.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNet', 6 | depth=18, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=512, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | topk=(1, 5), 17 | )) 18 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnet34.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNet', 6 | depth=34, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=512, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | topk=(1, 5), 17 | )) 18 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnet50.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNet', 6 | depth=50, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=2048, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | topk=(1, 5), 17 | )) 18 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnet34_gem.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNet', 6 | depth=34, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GeneralizedMeanPooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=512, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | topk=(1, 5), 17 | )) 18 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnetv1c50.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNetV1c', 6 | depth=50, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=2048, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | topk=(1, 5), 17 | )) 18 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnetv1d101.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNetV1d', 6 | depth=101, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=2048, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | topk=(1, 5), 17 | )) 18 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnetv1d152.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNetV1d', 6 | depth=152, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=2048, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | topk=(1, 5), 17 | )) 18 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnetv1d50.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNetV1d', 6 | depth=50, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=2048, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | topk=(1, 5), 17 | )) 18 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/seresnet101.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='SEResNet', 6 | depth=101, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=2048, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | topk=(1, 5), 17 | )) 18 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/seresnet50.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='SEResNet', 6 | depth=50, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=2048, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | topk=(1, 5), 17 | )) 18 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/glip/glip-t_headless.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='SwinTransformer', 5 | arch='tiny', 6 | img_size=224, 7 | out_indices=(1, 2, 3), # original weight is for detection 8 | ), 9 | neck=None, 10 | head=None) 11 | 12 | data_preprocessor = dict( 13 | # RGB format normalization parameters 14 | mean=[103.53, 116.28, 123.675], 15 | std=[57.375, 57.12, 58.395], 16 | # convert image from BGR to RGB 17 | to_rgb=False, 18 | ) 19 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/van/van_base.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='VAN', arch='base', drop_path_rate=0.1), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=512, 10 | init_cfg=None, # suppress the default init_cfg of LinearClsHead. 11 | loss=dict( 12 | type='LabelSmoothLoss', label_smooth_val=0.1, mode='original'), 13 | cal_acc=False)) 14 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/van/van_large.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict(type='VAN', arch='large', drop_path_rate=0.2), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=512, 10 | init_cfg=None, # suppress the default init_cfg of LinearClsHead. 11 | loss=dict( 12 | type='LabelSmoothLoss', label_smooth_val=0.1, mode='original'), 13 | cal_acc=False)) 14 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/swin_transformer_v2/swinv2-base-w24_in21k-pre_16xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/swin_transformer_v2/base_384.py', 3 | '../_base_/datasets/imagenet_bs64_swin_384.py', 4 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 5 | '../_base_/default_runtime.py' 6 | ] 7 | 8 | model = dict( 9 | type='ImageClassifier', 10 | backbone=dict( 11 | img_size=384, 12 | window_size=[24, 24, 24, 12], 13 | drop_path_rate=0.2, 14 | pretrained_window_sizes=[12, 12, 12, 6])) 15 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/swin_transformer_v2/swinv2-large-w24_in21k-pre_16xb64_in1k-384px.py: -------------------------------------------------------------------------------- 1 | # Only for evaluation 2 | _base_ = [ 3 | '../_base_/models/swin_transformer_v2/large_384.py', 4 | '../_base_/datasets/imagenet_bs64_swin_384.py', 5 | '../_base_/schedules/imagenet_bs1024_adamw_swin.py', 6 | '../_base_/default_runtime.py' 7 | ] 8 | 9 | model = dict( 10 | type='ImageClassifier', 11 | backbone=dict( 12 | img_size=384, 13 | window_size=[24, 24, 24, 12], 14 | pretrained_window_sizes=[12, 12, 12, 6]), 15 | ) 16 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r50_4xb2-40k_cityscapes-769x769.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | crop_size = (769, 769) 7 | data_preprocessor = dict(size=crop_size) 8 | model = dict( 9 | data_preprocessor=data_preprocessor, 10 | decode_head=dict(align_corners=True), 11 | auxiliary_head=dict(align_corners=True), 12 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 13 | -------------------------------------------------------------------------------- /segmentation/configs/upernet/upernet_r50_4xb2-80k_cityscapes-769x769.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | crop_size = (769, 769) 7 | data_preprocessor = dict(size=crop_size) 8 | model = dict( 9 | data_preprocessor=data_preprocessor, 10 | decode_head=dict(align_corners=True), 11 | auxiliary_head=dict(align_corners=True), 12 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 13 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/res2net101-w26-s4.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='Res2Net', 5 | depth=101, 6 | scales=4, 7 | base_width=26, 8 | deep_stem=False, 9 | avg_down=False, 10 | ), 11 | neck=dict(type='GlobalAveragePooling'), 12 | head=dict( 13 | type='LinearClsHead', 14 | num_classes=1000, 15 | in_channels=2048, 16 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 17 | topk=(1, 5), 18 | )) 19 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/res2net50-w14-s8.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='Res2Net', 5 | depth=50, 6 | scales=8, 7 | base_width=14, 8 | deep_stem=False, 9 | avg_down=False, 10 | ), 11 | neck=dict(type='GlobalAveragePooling'), 12 | head=dict( 13 | type='LinearClsHead', 14 | num_classes=1000, 15 | in_channels=2048, 16 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 17 | topk=(1, 5), 18 | )) 19 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/res2net50-w26-s4.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='Res2Net', 5 | depth=50, 6 | scales=4, 7 | base_width=26, 8 | deep_stem=False, 9 | avg_down=False, 10 | ), 11 | neck=dict(type='GlobalAveragePooling'), 12 | head=dict( 13 | type='LinearClsHead', 14 | num_classes=1000, 15 | in_channels=2048, 16 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 17 | topk=(1, 5), 18 | )) 19 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/res2net50-w26-s6.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='Res2Net', 5 | depth=50, 6 | scales=6, 7 | base_width=26, 8 | deep_stem=False, 9 | avg_down=False, 10 | ), 11 | neck=dict(type='GlobalAveragePooling'), 12 | head=dict( 13 | type='LinearClsHead', 14 | num_classes=1000, 15 | in_channels=2048, 16 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 17 | topk=(1, 5), 18 | )) 19 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/res2net50-w26-s8.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='Res2Net', 5 | depth=50, 6 | scales=8, 7 | base_width=26, 8 | deep_stem=False, 9 | avg_down=False, 10 | ), 11 | neck=dict(type='GlobalAveragePooling'), 12 | head=dict( 13 | type='LinearClsHead', 14 | num_classes=1000, 15 | in_channels=2048, 16 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 17 | topk=(1, 5), 18 | )) 19 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/res2net50-w48-s2.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='Res2Net', 5 | depth=50, 6 | scales=2, 7 | base_width=48, 8 | deep_stem=False, 9 | avg_down=False, 10 | ), 11 | neck=dict(type='GlobalAveragePooling'), 12 | head=dict( 13 | type='LinearClsHead', 14 | num_classes=1000, 15 | in_channels=2048, 16 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 17 | topk=(1, 5), 18 | )) 19 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/swin_transformer_v2/large_256.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | # Only for evaluation 3 | model = dict( 4 | type='ImageClassifier', 5 | backbone=dict( 6 | type='SwinTransformerV2', 7 | arch='large', 8 | img_size=256, 9 | drop_path_rate=0.2), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=1536, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | topk=(1, 5))) 17 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/swin_transformer_v2/large_384.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | # Only for evaluation 3 | model = dict( 4 | type='ImageClassifier', 5 | backbone=dict( 6 | type='SwinTransformerV2', 7 | arch='large', 8 | img_size=384, 9 | drop_path_rate=0.2), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=1536, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | topk=(1, 5))) 17 | -------------------------------------------------------------------------------- /segmentation/tools/dist_test.sh: -------------------------------------------------------------------------------- 1 | CONFIG=$1 2 | CHECKPOINT=$2 3 | GPUS=$3 4 | NNODES=${NNODES:-1} 5 | NODE_RANK=${NODE_RANK:-0} 6 | PORT=${PORT:-29500} 7 | MASTER_ADDR=${MASTER_ADDR:-"127.0.0.1"} 8 | 9 | PYTHONPATH="$(dirname $0)/..":$PYTHONPATH \ 10 | python3 -m torch.distributed.launch \ 11 | --nnodes=$NNODES \ 12 | --node_rank=$NODE_RANK \ 13 | --master_addr=$MASTER_ADDR \ 14 | --nproc_per_node=$GPUS \ 15 | --master_port=$PORT \ 16 | $(dirname "$0")/test.py \ 17 | $CONFIG \ 18 | $CHECKPOINT \ 19 | --launcher pytorch \ 20 | ${@:4} 21 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/edgenext/edgenext-base_8xb256-usi_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./edgenext-base_8xb256_in1k.py'] 2 | 3 | # dataset setting 4 | 5 | test_pipeline = [ 6 | dict(type='LoadImageFromFile'), 7 | dict( 8 | type='ResizeEdge', 9 | scale=269, 10 | edge='short', 11 | backend='pillow', 12 | interpolation='bicubic'), 13 | dict(type='CenterCrop', crop_size=256), 14 | dict(type='PackInputs') 15 | ] 16 | 17 | val_dataloader = dict(dataset=dict(pipeline=test_pipeline)) 18 | 19 | test_dataloader = val_dataloader 20 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/resnet/resnet50_8xb16_cifar100.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/resnet50_cifar.py', 3 | '../_base_/datasets/cifar100_bs16.py', 4 | '../_base_/schedules/cifar10_bs128.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # model settings 9 | model = dict(head=dict(num_classes=100)) 10 | 11 | # schedule settings 12 | optim_wrapper = dict(optimizer=dict(weight_decay=0.0005)) 13 | 14 | param_scheduler = dict( 15 | type='MultiStepLR', 16 | by_epoch=True, 17 | milestones=[60, 120, 160], 18 | gamma=0.2, 19 | ) 20 | -------------------------------------------------------------------------------- /detection/tools/dist_test_tracking.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | CONFIG=$1 4 | GPUS=$2 5 | NNODES=${NNODES:-1} 6 | NODE_RANK=${NODE_RANK:-0} 7 | PORT=${PORT:-29500} 8 | MASTER_ADDR=${MASTER_ADDR:-"127.0.0.1"} 9 | 10 | PYTHONPATH="$(dirname $0)/..":$PYTHONPATH \ 11 | python -m torch.distributed.launch \ 12 | --nnodes=$NNODES \ 13 | --node_rank=$NODE_RANK \ 14 | --master_addr=$MASTER_ADDR \ 15 | --nproc_per_node=$GPUS \ 16 | --master_port=$PORT \ 17 | $(dirname "$0")/test_tracking.py \ 18 | $CONFIG \ 19 | --launcher pytorch \ 20 | ${@:3} 21 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/edgenext/edgenext-small_8xb256-usi_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./edgenext-small_8xb256_in1k.py'] 2 | 3 | # dataset setting 4 | 5 | test_pipeline = [ 6 | dict(type='LoadImageFromFile'), 7 | dict( 8 | type='ResizeEdge', 9 | scale=269, 10 | edge='short', 11 | backend='pillow', 12 | interpolation='bicubic'), 13 | dict(type='CenterCrop', crop_size=256), 14 | dict(type='PackInputs') 15 | ] 16 | 17 | val_dataloader = dict(dataset=dict(pipeline=test_pipeline)) 18 | 19 | test_dataloader = val_dataloader 20 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/mobileone/mobileone_s0.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='MobileOne', 5 | arch='s0', 6 | out_indices=(3, ), 7 | ), 8 | neck=dict(type='GlobalAveragePooling'), 9 | head=dict( 10 | type='LinearClsHead', 11 | num_classes=1000, 12 | in_channels=1024, 13 | loss=dict( 14 | type='LabelSmoothLoss', 15 | label_smooth_val=0.1, 16 | mode='original', 17 | ), 18 | topk=(1, 5), 19 | )) 20 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/mobileone/mobileone_s1.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='MobileOne', 5 | arch='s1', 6 | out_indices=(3, ), 7 | ), 8 | neck=dict(type='GlobalAveragePooling'), 9 | head=dict( 10 | type='LinearClsHead', 11 | num_classes=1000, 12 | in_channels=1280, 13 | loss=dict( 14 | type='LabelSmoothLoss', 15 | label_smooth_val=0.1, 16 | mode='original', 17 | ), 18 | topk=(1, 5), 19 | )) 20 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/mobileone/mobileone_s2.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='MobileOne', 5 | arch='s2', 6 | out_indices=(3, ), 7 | ), 8 | neck=dict(type='GlobalAveragePooling'), 9 | head=dict( 10 | type='LinearClsHead', 11 | num_classes=1000, 12 | in_channels=2048, 13 | loss=dict( 14 | type='LabelSmoothLoss', 15 | label_smooth_val=0.1, 16 | mode='original', 17 | ), 18 | topk=(1, 5), 19 | )) 20 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/mobileone/mobileone_s3.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='MobileOne', 5 | arch='s3', 6 | out_indices=(3, ), 7 | ), 8 | neck=dict(type='GlobalAveragePooling'), 9 | head=dict( 10 | type='LinearClsHead', 11 | num_classes=1000, 12 | in_channels=2048, 13 | loss=dict( 14 | type='LabelSmoothLoss', 15 | label_smooth_val=0.1, 16 | mode='original', 17 | ), 18 | topk=(1, 5), 19 | )) 20 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/mobileone/mobileone_s4.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='MobileOne', 5 | arch='s4', 6 | out_indices=(3, ), 7 | ), 8 | neck=dict(type='GlobalAveragePooling'), 9 | head=dict( 10 | type='LinearClsHead', 11 | num_classes=1000, 12 | in_channels=2048, 13 | loss=dict( 14 | type='LabelSmoothLoss', 15 | label_smooth_val=0.1, 16 | mode='original', 17 | ), 18 | topk=(1, 5), 19 | )) 20 | -------------------------------------------------------------------------------- /detection/testmmcv.py: -------------------------------------------------------------------------------- 1 | from mmcv.ops import batched_nms 2 | import torch 3 | 4 | 5 | def check_mmcv(): 6 | 7 | device = torch.device('cuda:0') 8 | 9 | bboxes = torch.randn(2, 4, device=device) 10 | scores = torch.randn(2, device=device) 11 | labels = torch.zeros(2, dtype=torch.long, device=device) 12 | det_bboxes, keep_idxs = batched_nms(bboxes.to(torch.float32), scores.to(torch.float32), labels, { 13 | 'type': 'nms', 14 | 'iou_threshold': 0.6 15 | }) 16 | 17 | print('OK.') 18 | 19 | 20 | if __name__ == '__main__': 21 | check_mmcv() 22 | -------------------------------------------------------------------------------- /detection/tools/dist_test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | CONFIG=$1 4 | CHECKPOINT=$2 5 | GPUS=$3 6 | NNODES=${NNODES:-1} 7 | NODE_RANK=${NODE_RANK:-0} 8 | PORT=${PORT:-29500} 9 | MASTER_ADDR=${MASTER_ADDR:-"127.0.0.1"} 10 | 11 | PYTHONPATH="$(dirname $0)/..":$PYTHONPATH \ 12 | python -m torch.distributed.launch \ 13 | --nnodes=$NNODES \ 14 | --node_rank=$NODE_RANK \ 15 | --master_addr=$MASTER_ADDR \ 16 | --nproc_per_node=$GPUS \ 17 | --master_port=$PORT \ 18 | $(dirname "$0")/test.py \ 19 | $CONFIG \ 20 | $CHECKPOINT \ 21 | --launcher pytorch \ 22 | ${@:4} -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/repmlp-base_224.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='RepMLPNet', 6 | arch='B', 7 | img_size=224, 8 | out_indices=(3, ), 9 | reparam_conv_kernels=(1, 3), 10 | deploy=False), 11 | neck=dict(type='GlobalAveragePooling'), 12 | head=dict( 13 | type='LinearClsHead', 14 | num_classes=1000, 15 | in_channels=768, 16 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 17 | topk=(1, 5), 18 | )) 19 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/swin_transformer/base_384.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | # Only for evaluation 3 | model = dict( 4 | type='ImageClassifier', 5 | backbone=dict( 6 | type='SwinTransformer', 7 | arch='base', 8 | img_size=384, 9 | stage_cfgs=dict(block_cfgs=dict(window_size=12))), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=1024, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | topk=(1, 5))) 17 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/swin_transformer/large_384.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | # Only for evaluation 3 | model = dict( 4 | type='ImageClassifier', 5 | backbone=dict( 6 | type='SwinTransformer', 7 | arch='large', 8 | img_size=384, 9 | stage_cfgs=dict(block_cfgs=dict(window_size=12))), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=1536, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 16 | topk=(1, 5))) 17 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnet50_label_smooth.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNet', 6 | depth=50, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=2048, 15 | loss=dict( 16 | type='LabelSmoothLoss', label_smooth_val=0.1, loss_weight=1.0), 17 | topk=(1, 5), 18 | )) 19 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/dinov2/vit-base-p14_dinov2-pre_headless.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='VisionTransformer', 6 | arch='base', 7 | img_size=518, 8 | patch_size=14, 9 | layer_scale_init_value=1e-5, 10 | ), 11 | neck=None, 12 | head=None) 13 | 14 | data_preprocessor = dict( 15 | # RGB format normalization parameters 16 | mean=[123.675, 116.28, 103.53], 17 | std=[58.395, 57.12, 57.375], 18 | # convert image from BGR to RGB 19 | to_rgb=True, 20 | ) 21 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/dinov2/vit-large-p14_dinov2-pre_headless.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='VisionTransformer', 6 | arch='large', 7 | img_size=518, 8 | patch_size=14, 9 | layer_scale_init_value=1e-5, 10 | ), 11 | neck=None, 12 | head=None) 13 | 14 | data_preprocessor = dict( 15 | # RGB format normalization parameters 16 | mean=[123.675, 116.28, 103.53], 17 | std=[58.395, 57.12, 57.375], 18 | # convert image from BGR to RGB 19 | to_rgb=True, 20 | ) 21 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/barlowtwins/benchmarks/resnet50_8xb32-linear-coslr-100e_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../../_base_/models/resnet50.py', 3 | '../../_base_/datasets/imagenet_bs32_pil_resize.py', 4 | '../../_base_/schedules/imagenet_sgd_coslr_100e.py', 5 | '../../_base_/default_runtime.py', 6 | ] 7 | 8 | model = dict( 9 | backbone=dict( 10 | frozen_stages=4, 11 | init_cfg=dict(type='Pretrained', checkpoint='', prefix='backbone.'))) 12 | 13 | # runtime settings 14 | default_hooks = dict( 15 | checkpoint=dict(type='CheckpointHook', interval=10, max_keep_ckpts=3)) 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/dinov2/vit-small-p14_dinov2-pre_headless.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='VisionTransformer', 6 | arch='dinov2-small', 7 | img_size=518, 8 | patch_size=14, 9 | layer_scale_init_value=1e-5, 10 | ), 11 | neck=None, 12 | head=None) 13 | 14 | data_preprocessor = dict( 15 | # RGB format normalization parameters 16 | mean=[123.675, 116.28, 103.53], 17 | std=[58.395, 57.12, 57.375], 18 | # convert image from BGR to RGB 19 | to_rgb=True, 20 | ) 21 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnet50_mixup.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNet', 6 | depth=50, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='MultiLabelLinearClsHead', 13 | num_classes=1000, 14 | in_channels=2048, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0, use_soft=True)), 16 | train_cfg=dict(augments=dict(type='Mixup', alpha=0.2)), 17 | ) 18 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnext101_32x4d.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNeXt', 6 | depth=101, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | groups=32, 10 | width_per_group=4, 11 | style='pytorch'), 12 | neck=dict(type='GlobalAveragePooling'), 13 | head=dict( 14 | type='LinearClsHead', 15 | num_classes=1000, 16 | in_channels=2048, 17 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 18 | topk=(1, 5), 19 | )) 20 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnext101_32x8d.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNeXt', 6 | depth=101, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | groups=32, 10 | width_per_group=8, 11 | style='pytorch'), 12 | neck=dict(type='GlobalAveragePooling'), 13 | head=dict( 14 | type='LinearClsHead', 15 | num_classes=1000, 16 | in_channels=2048, 17 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 18 | topk=(1, 5), 19 | )) 20 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnext152_32x4d.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNeXt', 6 | depth=152, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | groups=32, 10 | width_per_group=4, 11 | style='pytorch'), 12 | neck=dict(type='GlobalAveragePooling'), 13 | head=dict( 14 | type='LinearClsHead', 15 | num_classes=1000, 16 | in_channels=2048, 17 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 18 | topk=(1, 5), 19 | )) 20 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnext50_32x4d.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNeXt', 6 | depth=50, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | groups=32, 10 | width_per_group=4, 11 | style='pytorch'), 12 | neck=dict(type='GlobalAveragePooling'), 13 | head=dict( 14 | type='LinearClsHead', 15 | num_classes=1000, 16 | in_channels=2048, 17 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 18 | topk=(1, 5), 19 | )) 20 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/schedules/cifar10_bs128.py: -------------------------------------------------------------------------------- 1 | # optimizer 2 | optim_wrapper = dict( 3 | optimizer=dict(type='SGD', lr=0.1, momentum=0.9, weight_decay=0.0001)) 4 | # learning policy 5 | param_scheduler = dict( 6 | type='MultiStepLR', by_epoch=True, milestones=[100, 150], gamma=0.1) 7 | 8 | # train, val, test setting 9 | train_cfg = dict(by_epoch=True, max_epochs=200, val_interval=1) 10 | val_cfg = dict() 11 | test_cfg = dict() 12 | 13 | # NOTE: `auto_scale_lr` is for automatically scaling LR 14 | # based on the actual training batch size. 15 | auto_scale_lr = dict(base_batch_size=128) 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/schedules/imagenet_bs256_epochstep.py: -------------------------------------------------------------------------------- 1 | # optimizer 2 | optim_wrapper = dict( 3 | optimizer=dict(type='SGD', lr=0.045, momentum=0.9, weight_decay=0.00004)) 4 | 5 | # learning policy 6 | param_scheduler = dict(type='StepLR', by_epoch=True, step_size=1, gamma=0.98) 7 | 8 | # train, val, test setting 9 | train_cfg = dict(by_epoch=True, max_epochs=300, val_interval=1) 10 | val_cfg = dict() 11 | test_cfg = dict() 12 | 13 | # NOTE: `auto_scale_lr` is for automatically scaling LR, 14 | # based on the actual training batch size. 15 | auto_scale_lr = dict(base_batch_size=256) 16 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/glip/glip-l_headless.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='SwinTransformer', 5 | arch='large', 6 | img_size=384, 7 | out_indices=(1, 2, 3), # original weight is for detection 8 | stage_cfgs=dict(block_cfgs=dict(window_size=12))), 9 | neck=None, 10 | head=None) 11 | 12 | data_preprocessor = dict( 13 | # RGB format normalization parameters 14 | mean=[103.53, 116.28, 123.675], 15 | std=[57.375, 57.12, 58.395], 16 | # convert image from BGR to RGB 17 | to_rgb=False, 18 | ) 19 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/davit/davit-tiny.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='DaViT', arch='t', out_indices=(3, ), drop_path_rate=0.1), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=768, 10 | loss=dict( 11 | type='LabelSmoothLoss', label_smooth_val=0.1, mode='original'), 12 | ), 13 | train_cfg=dict(augments=[ 14 | dict(type='Mixup', alpha=0.8), 15 | dict(type='CutMix', alpha=1.0) 16 | ])) 17 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_x101-32x4d_fpn_ms-poly-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../common/ms-poly_3x_coco-instance.py', 3 | '../_base_/models/mask-rcnn_r50_fpn.py' 4 | ] 5 | 6 | model = dict( 7 | backbone=dict( 8 | type='ResNeXt', 9 | depth=101, 10 | groups=32, 11 | base_width=4, 12 | num_stages=4, 13 | out_indices=(0, 1, 2, 3), 14 | frozen_stages=1, 15 | norm_cfg=dict(type='BN', requires_grad=True), 16 | style='pytorch', 17 | init_cfg=dict( 18 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 19 | -------------------------------------------------------------------------------- /detection/configs/mask_rcnn/mask-rcnn_x101-64x4d_fpn_ms-poly_3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../common/ms-poly_3x_coco-instance.py', 3 | '../_base_/models/mask-rcnn_r50_fpn.py' 4 | ] 5 | 6 | model = dict( 7 | backbone=dict( 8 | type='ResNeXt', 9 | depth=101, 10 | groups=64, 11 | base_width=4, 12 | num_stages=4, 13 | out_indices=(0, 1, 2, 3), 14 | frozen_stages=1, 15 | norm_cfg=dict(type='BN', requires_grad=True), 16 | style='pytorch', 17 | init_cfg=dict( 18 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 19 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/davit/davit-base.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='DaViT', arch='base', out_indices=(3, ), drop_path_rate=0.4), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=1024, 10 | loss=dict( 11 | type='LabelSmoothLoss', label_smooth_val=0.1, mode='original'), 12 | ), 13 | train_cfg=dict(augments=[ 14 | dict(type='Mixup', alpha=0.8), 15 | dict(type='CutMix', alpha=1.0) 16 | ])) 17 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/davit/davit-small.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='DaViT', arch='small', out_indices=(3, ), drop_path_rate=0.2), 5 | neck=dict(type='GlobalAveragePooling'), 6 | head=dict( 7 | type='LinearClsHead', 8 | num_classes=1000, 9 | in_channels=768, 10 | loss=dict( 11 | type='LabelSmoothLoss', label_smooth_val=0.1, mode='original'), 12 | ), 13 | train_cfg=dict(augments=[ 14 | dict(type='Mixup', alpha=0.8), 15 | dict(type='CutMix', alpha=1.0) 16 | ])) 17 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/resnet50_cifar_mixup.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNet_CIFAR', 6 | depth=50, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | style='pytorch'), 10 | neck=dict(type='GlobalAveragePooling'), 11 | head=dict( 12 | type='MultiLabelLinearClsHead', 13 | num_classes=10, 14 | in_channels=2048, 15 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0, use_soft=True)), 16 | train_cfg=dict(augments=dict(type='Mixup', alpha=1.)), 17 | ) 18 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/schedules/imagenet_bs256.py: -------------------------------------------------------------------------------- 1 | # optimizer 2 | optim_wrapper = dict( 3 | optimizer=dict(type='SGD', lr=0.1, momentum=0.9, weight_decay=0.0001)) 4 | 5 | # learning policy 6 | param_scheduler = dict( 7 | type='MultiStepLR', by_epoch=True, milestones=[30, 60, 90], gamma=0.1) 8 | 9 | # train, val, test setting 10 | train_cfg = dict(by_epoch=True, max_epochs=100, val_interval=1) 11 | val_cfg = dict() 12 | test_cfg = dict() 13 | 14 | # NOTE: `auto_scale_lr` is for automatically scaling LR, 15 | # based on the actual training batch size. 16 | auto_scale_lr = dict(base_batch_size=256) 17 | -------------------------------------------------------------------------------- /segmentation/configs/swin/swin-small-patch4-window7-in1k-pre_upernet_8xb2-160k_ade20k-512x512.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | './swin-tiny-patch4-window7-in1k-pre_upernet_8xb2-160k_ade20k-512x512.py' 3 | ] 4 | checkpoint_file = 'https://download.openmmlab.com/mmsegmentation/v0.5/pretrain/swin/swin_small_patch4_window7_224_20220317-7ba6d6dd.pth' # noqa 5 | model = dict( 6 | backbone=dict( 7 | init_cfg=dict(type='Pretrained', checkpoint=checkpoint_file), 8 | depths=[2, 2, 18, 2]), 9 | decode_head=dict(in_channels=[96, 192, 384, 768], num_classes=150), 10 | auxiliary_head=dict(in_channels=384, num_classes=150)) 11 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/schedules/imagenet_bs256_140e.py: -------------------------------------------------------------------------------- 1 | # optimizer 2 | optim_wrapper = dict( 3 | optimizer=dict(type='SGD', lr=0.1, momentum=0.9, weight_decay=0.0001)) 4 | 5 | # learning policy 6 | param_scheduler = dict( 7 | type='MultiStepLR', by_epoch=True, milestones=[40, 80, 120], gamma=0.1) 8 | 9 | # train, val, test setting 10 | train_cfg = dict(by_epoch=True, max_epochs=140, val_interval=1) 11 | val_cfg = dict() 12 | test_cfg = dict() 13 | 14 | # NOTE: `auto_scale_lr` is for automatically scaling LR, 15 | # based on the actual training batch size. 16 | auto_scale_lr = dict(base_batch_size=256) 17 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/schedules/imagenet_bs256_coslr.py: -------------------------------------------------------------------------------- 1 | # optimizer 2 | optim_wrapper = dict( 3 | optimizer=dict(type='SGD', lr=0.1, momentum=0.9, weight_decay=0.0001)) 4 | 5 | # learning policy 6 | param_scheduler = dict( 7 | type='CosineAnnealingLR', T_max=100, by_epoch=True, begin=0, end=100) 8 | 9 | # train, val, test setting 10 | train_cfg = dict(by_epoch=True, max_epochs=100, val_interval=1) 11 | val_cfg = dict() 12 | test_cfg = dict() 13 | 14 | # NOTE: `auto_scale_lr` is for automatically scaling LR, 15 | # based on the actual training batch size. 16 | auto_scale_lr = dict(base_batch_size=256) 17 | -------------------------------------------------------------------------------- /kernels/selective_scan/csrc/selective_scan/cusnrow/selective_scan_core_bwd3.cu: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * Copyright (c) 2023, Tri Dao. 3 | ******************************************************************************/ 4 | #include "selective_scan_bwd_kernel_nrow.cuh" 5 | 6 | template void selective_scan_bwd_cuda<3, float, float>(SSMParamsBwd ¶ms, cudaStream_t stream); 7 | template void selective_scan_bwd_cuda<3, at::Half, float>(SSMParamsBwd ¶ms, cudaStream_t stream); 8 | template void selective_scan_bwd_cuda<3, at::BFloat16, float>(SSMParamsBwd ¶ms, cudaStream_t stream); 9 | -------------------------------------------------------------------------------- /kernels/selective_scan/csrc/selective_scan/cusnrow/selective_scan_core_bwd4.cu: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * Copyright (c) 2023, Tri Dao. 3 | ******************************************************************************/ 4 | #include "selective_scan_bwd_kernel_nrow.cuh" 5 | 6 | template void selective_scan_bwd_cuda<4, float, float>(SSMParamsBwd ¶ms, cudaStream_t stream); 7 | template void selective_scan_bwd_cuda<4, at::Half, float>(SSMParamsBwd ¶ms, cudaStream_t stream); 8 | template void selective_scan_bwd_cuda<4, at::BFloat16, float>(SSMParamsBwd ¶ms, cudaStream_t stream); 9 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/eva02/eva02-small-p14_headless.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='ViTEVA02', 5 | arch='s', 6 | img_size=224, 7 | patch_size=14, 8 | final_norm=False, 9 | out_type='avg_featmap'), 10 | neck=None, 11 | head=None, 12 | ) 13 | 14 | data_preprocessor = dict( 15 | # RGB format normalization parameters 16 | mean=[0.48145466 * 255, 0.4578275 * 255, 0.40821073 * 255], 17 | std=[0.26862954 * 255, 0.26130258 * 255, 0.27577711 * 255], 18 | # convert image from BGR to RGB 19 | to_rgb=True, 20 | ) 21 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/eva02/eva02-tiny-p14_headless.py: -------------------------------------------------------------------------------- 1 | model = dict( 2 | type='ImageClassifier', 3 | backbone=dict( 4 | type='ViTEVA02', 5 | arch='t', 6 | img_size=224, 7 | patch_size=14, 8 | final_norm=False, 9 | out_type='avg_featmap'), 10 | neck=None, 11 | head=None, 12 | ) 13 | 14 | data_preprocessor = dict( 15 | # RGB format normalization parameters 16 | mean=[0.48145466 * 255, 0.4578275 * 255, 0.40821073 * 255], 17 | std=[0.26862954 * 255, 0.26130258 * 255, 0.27577711 * 255], 18 | # convert image from BGR to RGB 19 | to_rgb=True, 20 | ) 21 | -------------------------------------------------------------------------------- /kernels/selective_scan/csrc/selective_scan/cus/selective_scan_core_bwd.cu: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * Copyright (c) 2023, Tri Dao. 3 | ******************************************************************************/ 4 | #include "selective_scan_bwd_kernel.cuh" 5 | 6 | template void selective_scan_bwd_cuda<1, float, float>(SSMParamsBwd ¶ms, cudaStream_t stream); 7 | template void selective_scan_bwd_cuda<1, at::Half, float>(SSMParamsBwd ¶ms, cudaStream_t stream); 8 | template void selective_scan_bwd_cuda<1, at::BFloat16, float>(SSMParamsBwd ¶ms, cudaStream_t stream); 9 | 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/seresnext101_32x4d.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='SEResNeXt', 6 | depth=101, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | groups=32, 10 | width_per_group=4, 11 | se_ratio=16, 12 | style='pytorch'), 13 | neck=dict(type='GlobalAveragePooling'), 14 | head=dict( 15 | type='LinearClsHead', 16 | num_classes=1000, 17 | in_channels=2048, 18 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 19 | topk=(1, 5), 20 | )) 21 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/seresnext50_32x4d.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='SEResNeXt', 6 | depth=50, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | groups=32, 10 | width_per_group=4, 11 | se_ratio=16, 12 | style='pytorch'), 13 | neck=dict(type='GlobalAveragePooling'), 14 | head=dict( 15 | type='LinearClsHead', 16 | num_classes=1000, 17 | in_channels=2048, 18 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 19 | topk=(1, 5), 20 | )) 21 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/wide-resnet50.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ResNet', 6 | depth=50, 7 | num_stages=4, 8 | out_indices=(3, ), 9 | stem_channels=64, 10 | base_channels=128, 11 | expansion=2, 12 | style='pytorch'), 13 | neck=dict(type='GlobalAveragePooling'), 14 | head=dict( 15 | type='LinearClsHead', 16 | num_classes=1000, 17 | in_channels=2048, 18 | loss=dict(type='CrossEntropyLoss', loss_weight=1.0), 19 | topk=(1, 5), 20 | )) 21 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/densenet/densenet121_4xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/densenet/densenet121.py', 3 | '../_base_/datasets/imagenet_bs64.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # dataset settings 9 | train_dataloader = dict(batch_size=256) 10 | 11 | # schedule settings 12 | train_cfg = dict(by_epoch=True, max_epochs=90) 13 | 14 | # NOTE: `auto_scale_lr` is for automatically scaling LR 15 | # based on the actual training batch size. 16 | # base_batch_size = (4 GPUs) x (256 samples per GPU) 17 | auto_scale_lr = dict(base_batch_size=1024) 18 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/densenet/densenet161_4xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/densenet/densenet161.py', 3 | '../_base_/datasets/imagenet_bs64.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # dataset settings 9 | train_dataloader = dict(batch_size=256) 10 | 11 | # schedule settings 12 | train_cfg = dict(by_epoch=True, max_epochs=90) 13 | 14 | # NOTE: `auto_scale_lr` is for automatically scaling LR 15 | # based on the actual training batch size. 16 | # base_batch_size = (4 GPUs) x (256 samples per GPU) 17 | auto_scale_lr = dict(base_batch_size=1024) 18 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/densenet/densenet169_4xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/densenet/densenet169.py', 3 | '../_base_/datasets/imagenet_bs64.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # dataset settings 9 | train_dataloader = dict(batch_size=256) 10 | 11 | # schedule settings 12 | train_cfg = dict(by_epoch=True, max_epochs=90) 13 | 14 | # NOTE: `auto_scale_lr` is for automatically scaling LR 15 | # based on the actual training batch size. 16 | # base_batch_size = (4 GPUs) x (256 samples per GPU) 17 | auto_scale_lr = dict(base_batch_size=1024) 18 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/densenet/densenet201_4xb256_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/densenet/densenet201.py', 3 | '../_base_/datasets/imagenet_bs64.py', 4 | '../_base_/schedules/imagenet_bs256.py', 5 | '../_base_/default_runtime.py', 6 | ] 7 | 8 | # dataset settings 9 | train_dataloader = dict(batch_size=256) 10 | 11 | # schedule settings 12 | train_cfg = dict(by_epoch=True, max_epochs=90) 13 | 14 | # NOTE: `auto_scale_lr` is for automatically scaling LR 15 | # based on the actual training batch size. 16 | # base_batch_size = (4 GPUs) x (256 samples per GPU) 17 | auto_scale_lr = dict(base_batch_size=1024) 18 | -------------------------------------------------------------------------------- /kernels/selective_scan/csrc/selective_scan/cus/selective_scan_core_fwd.cu: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * Copyright (c) 2023, Tri Dao. 3 | ******************************************************************************/ 4 | #include "selective_scan_fwd_kernel.cuh" 5 | 6 | template void selective_scan_fwd_cuda<1, float, float>(SSMParamsBase ¶ms, cudaStream_t stream); 7 | template void selective_scan_fwd_cuda<1, at::Half, float>(SSMParamsBase ¶ms, cudaStream_t stream); 8 | template void selective_scan_fwd_cuda<1, at::BFloat16, float>(SSMParamsBase ¶ms, cudaStream_t stream); 9 | 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/convnext_v2/atto.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ConvNeXt', 6 | arch='atto', 7 | drop_path_rate=0.1, 8 | layer_scale_init_value=0., 9 | use_grn=True, 10 | ), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=320, 15 | loss=dict(type='LabelSmoothLoss', label_smooth_val=0.2), 16 | init_cfg=None, 17 | ), 18 | init_cfg=dict( 19 | type='TruncNormal', layer=['Conv2d', 'Linear'], std=.02, bias=0.), 20 | ) 21 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/convnext_v2/nano.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ConvNeXt', 6 | arch='nano', 7 | drop_path_rate=0.1, 8 | layer_scale_init_value=0., 9 | use_grn=True, 10 | ), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=640, 15 | loss=dict(type='LabelSmoothLoss', label_smooth_val=0.2), 16 | init_cfg=None, 17 | ), 18 | init_cfg=dict( 19 | type='TruncNormal', layer=['Conv2d', 'Linear'], std=.02, bias=0.), 20 | ) 21 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/convnext_v2/pico.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ConvNeXt', 6 | arch='pico', 7 | drop_path_rate=0.1, 8 | layer_scale_init_value=0., 9 | use_grn=True, 10 | ), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=512, 15 | loss=dict(type='LabelSmoothLoss', label_smooth_val=0.1), 16 | init_cfg=None, 17 | ), 18 | init_cfg=dict( 19 | type='TruncNormal', layer=['Conv2d', 'Linear'], std=.02, bias=0.), 20 | ) 21 | -------------------------------------------------------------------------------- /kernels/selective_scan/csrc/selective_scan/cusnrow/selective_scan_core_bwd.cu: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * Copyright (c) 2023, Tri Dao. 3 | ******************************************************************************/ 4 | #include "selective_scan_bwd_kernel_nrow.cuh" 5 | 6 | template void selective_scan_bwd_cuda<1, float, float>(SSMParamsBwd ¶ms, cudaStream_t stream); 7 | template void selective_scan_bwd_cuda<1, at::Half, float>(SSMParamsBwd ¶ms, cudaStream_t stream); 8 | template void selective_scan_bwd_cuda<1, at::BFloat16, float>(SSMParamsBwd ¶ms, cudaStream_t stream); 9 | 10 | -------------------------------------------------------------------------------- /kernels/selective_scan/csrc/selective_scan/cusnrow/selective_scan_core_bwd2.cu: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * Copyright (c) 2023, Tri Dao. 3 | ******************************************************************************/ 4 | #include "selective_scan_bwd_kernel_nrow.cuh" 5 | 6 | template void selective_scan_bwd_cuda<2, float, float>(SSMParamsBwd ¶ms, cudaStream_t stream); 7 | template void selective_scan_bwd_cuda<2, at::Half, float>(SSMParamsBwd ¶ms, cudaStream_t stream); 8 | template void selective_scan_bwd_cuda<2, at::BFloat16, float>(SSMParamsBwd ¶ms, cudaStream_t stream); 9 | 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/_base_/models/convnext_v2/femto.py: -------------------------------------------------------------------------------- 1 | # Model settings 2 | model = dict( 3 | type='ImageClassifier', 4 | backbone=dict( 5 | type='ConvNeXt', 6 | arch='femto', 7 | drop_path_rate=0.1, 8 | layer_scale_init_value=0., 9 | use_grn=True, 10 | ), 11 | head=dict( 12 | type='LinearClsHead', 13 | num_classes=1000, 14 | in_channels=384, 15 | loss=dict(type='LabelSmoothLoss', label_smooth_val=0.1), 16 | init_cfg=None, 17 | ), 18 | init_cfg=dict( 19 | type='TruncNormal', layer=['Conv2d', 'Linear'], std=.02, bias=0.), 20 | ) 21 | -------------------------------------------------------------------------------- /kernels/selective_scan/csrc/selective_scan/cusndstate/selective_scan_core_bwd.cu: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * Copyright (c) 2023, Tri Dao. 3 | ******************************************************************************/ 4 | #include "selective_scan_bwd_kernel_ndstate.cuh" 5 | 6 | template void selective_scan_bwd_cuda<1, float, float>(SSMParamsBwd ¶ms, cudaStream_t stream); 7 | template void selective_scan_bwd_cuda<1, at::Half, float>(SSMParamsBwd ¶ms, cudaStream_t stream); 8 | template void selective_scan_bwd_cuda<1, at::BFloat16, float>(SSMParamsBwd ¶ms, cudaStream_t stream); 9 | 10 | -------------------------------------------------------------------------------- /kernels/selective_scan/csrc/selective_scan/cusnrow/selective_scan_core_fwd.cu: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * Copyright (c) 2023, Tri Dao. 3 | ******************************************************************************/ 4 | #include "selective_scan_fwd_kernel_nrow.cuh" 5 | 6 | template void selective_scan_fwd_cuda<1, float, float>(SSMParamsBase ¶ms, cudaStream_t stream); 7 | template void selective_scan_fwd_cuda<1, at::Half, float>(SSMParamsBase ¶ms, cudaStream_t stream); 8 | template void selective_scan_fwd_cuda<1, at::BFloat16, float>(SSMParamsBase ¶ms, cudaStream_t stream); 9 | 10 | -------------------------------------------------------------------------------- /kernels/selective_scan/csrc/selective_scan/cusnrow/selective_scan_core_fwd2.cu: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * Copyright (c) 2023, Tri Dao. 3 | ******************************************************************************/ 4 | #include "selective_scan_fwd_kernel_nrow.cuh" 5 | 6 | template void selective_scan_fwd_cuda<2, float, float>(SSMParamsBase ¶ms, cudaStream_t stream); 7 | template void selective_scan_fwd_cuda<2, at::Half, float>(SSMParamsBase ¶ms, cudaStream_t stream); 8 | template void selective_scan_fwd_cuda<2, at::BFloat16, float>(SSMParamsBase ¶ms, cudaStream_t stream); 9 | 10 | -------------------------------------------------------------------------------- /kernels/selective_scan/csrc/selective_scan/cusnrow/selective_scan_core_fwd3.cu: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * Copyright (c) 2023, Tri Dao. 3 | ******************************************************************************/ 4 | #include "selective_scan_fwd_kernel_nrow.cuh" 5 | 6 | template void selective_scan_fwd_cuda<3, float, float>(SSMParamsBase ¶ms, cudaStream_t stream); 7 | template void selective_scan_fwd_cuda<3, at::Half, float>(SSMParamsBase ¶ms, cudaStream_t stream); 8 | template void selective_scan_fwd_cuda<3, at::BFloat16, float>(SSMParamsBase ¶ms, cudaStream_t stream); 9 | 10 | -------------------------------------------------------------------------------- /kernels/selective_scan/csrc/selective_scan/cusnrow/selective_scan_core_fwd4.cu: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * Copyright (c) 2023, Tri Dao. 3 | ******************************************************************************/ 4 | #include "selective_scan_fwd_kernel_nrow.cuh" 5 | 6 | template void selective_scan_fwd_cuda<4, float, float>(SSMParamsBase ¶ms, cudaStream_t stream); 7 | template void selective_scan_fwd_cuda<4, at::Half, float>(SSMParamsBase ¶ms, cudaStream_t stream); 8 | template void selective_scan_fwd_cuda<4, at::BFloat16, float>(SSMParamsBase ¶ms, cudaStream_t stream); 9 | 10 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/regnet/regnetx-12gf_8xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./regnetx-400mf_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(type='RegNet', arch='regnetx_12gf'), 6 | head=dict(in_channels=2240, )) 7 | 8 | # dataset settings 9 | train_dataloader = dict(batch_size=64) 10 | 11 | # schedule settings 12 | # for batch_size 512, use lr = 0.4 13 | optim_wrapper = dict(optimizer=dict(lr=0.4)) 14 | 15 | # NOTE: `auto_scale_lr` is for automatically scaling LR 16 | # based on the actual training batch size. 17 | # base_batch_size = (8 GPUs) x (64 samples per GPU) 18 | auto_scale_lr = dict(base_batch_size=512) 19 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/regnet/regnetx-3.2gf_8xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./regnetx-400mf_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(type='RegNet', arch='regnetx_3.2gf'), 6 | head=dict(in_channels=1008, )) 7 | 8 | # dataset settings 9 | train_dataloader = dict(batch_size=64) 10 | 11 | # schedule settings 12 | # for batch_size 512, use lr = 0.4 13 | optim_wrapper = dict(optimizer=dict(lr=0.4)) 14 | 15 | # NOTE: `auto_scale_lr` is for automatically scaling LR 16 | # based on the actual training batch size. 17 | # base_batch_size = (8 GPUs) x (64 samples per GPU) 18 | auto_scale_lr = dict(base_batch_size=512) 19 | -------------------------------------------------------------------------------- /analyze/mmpretrain_configs/configs/regnet/regnetx-4.0gf_8xb64_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./regnetx-400mf_8xb128_in1k.py'] 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(type='RegNet', arch='regnetx_4.0gf'), 6 | head=dict(in_channels=1360, )) 7 | 8 | # dataset settings 9 | train_dataloader = dict(batch_size=64) 10 | 11 | # schedule settings 12 | # for batch_size 512, use lr = 0.4 13 | optim_wrapper = dict(optimizer=dict(lr=0.4)) 14 | 15 | # NOTE: `auto_scale_lr` is for automatically scaling LR 16 | # based on the actual training batch size. 17 | # base_batch_size = (8 GPUs) x (64 samples per GPU) 18 | auto_scale_lr = dict(base_batch_size=512) 19 | --------------------------------------------------------------------------------