timm documentation

EdgeNeXt

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v1.0.30).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

EdgeNeXt

Category: Efficient/Mobile · Code: timm/models/edgenext.py · Architectures: 5 · Pretrained weights: 6 (6 with ImageNet-1k results)

EdgeNeXt is a hybrid CNN-Transformer for mobile devices that combines depthwise convolution encoders with split depth-wise transpose attention (SDTA) encoders, which apply attention across channels.

Papers

Usage

See the Quickstart for loading pretrained weights, image preprocessing and fine-tuning, and Feature Extraction for using the models as backbones.

>>> import timm
>>> model = timm.create_model('edgenext_base.in21k_ft_in1k', pretrained=True)
>>> data_config = timm.data.resolve_model_data_config(model)

Model API support

FeatureEdgeNeXt
features_only=True feature maps✓ (strides 4, 8, 16, 32)
forward_intermediates()✓
prune_intermediate_layers()✓
Any input size, no changes needed✓
set_input_size()–
dynamic_img_size=True–
set_grad_checkpointing()✓
Layer-wise LR decay (group_matcher())✓
reset_classifier()✓

✓ supported, ✓ (square) works for square sizes only, ✗ not supported, – not needed (the model already accepts any input size). Checked by running each feature on a randomly initialized model (EdgeNeXt with edgenext_xx_small at 256), other architectures of the same class are expected to behave the same. See the Model API page for details.

Architectures

ArchitectureParams (M)GMACsInput sizePretrained weights
edgenext_base18.513.852562
edgenext_small5.591.262561
edgenext_small_rw7.831.582561
edgenext_x_small2.340.542561
edgenext_xx_small1.330.262561

GMACs and parameter counts are for the default input size and classifier of each architecture, from the benchmark results.

Pretrained weights

Top-1 is ImageNet-1k validation accuracy from results-imagenet.csv at the listed eval size, - if the weight has no ImageNet-1k result (e.g. pretraining or image-text weights). Classes is the size of the pretrained classifier, none for weights without one.

WeightInput sizeTop-1 (%)Eval sizeClassesLicenseHub
edgenext_base.in21k_ft_in1k256 (test 320)84.0763201000mittimm
edgenext_base.usi_in1k256 (test 320)83.9703201000mittimm
edgenext_small.usi_in1k256 (test 320)81.5743201000mittimm
edgenext_small_rw.sw_in1k256 (test 320)80.4523201000mittimm
edgenext_x_small.in1k256 (test 288)75.7062881000mittimm
edgenext_xx_small.in1k256 (test 288)71.8862881000mittimm
Update on GitHub