timm documentation

DenseNet

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

DenseNet

Category: CNN · Code: timm/models/densenet.py · Architectures: 6 · Pretrained weights: 6 (6 with ImageNet-1k results)

Densely connected convolutional networks, where each layer in a dense block takes the concatenated outputs of all preceding layers of the block. Adapted from torchvision, densenetblur uses blur pool anti-aliased downsampling.

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('densenet161.tv_in1k', pretrained=True)
>>> data_config = timm.data.resolve_model_data_config(model)

Model API support

FeatureDenseNet
features_only=True feature maps✓ (strides 2, 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 (DenseNet with densenet121 at 224), 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
densenet1217.982.872242
densenet16128.687.792241
densenet16914.153.402241
densenet20120.014.342241
densenet264d72.7413.572240
densenetblur121d8.003.112241

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.

Weights are grouped by source: the paper or origin given in the pretrained config, else a Hub organization other than timm, else the first part of the pretrained tag (architecture.tag). Sources with a single weight are listed under other.

tv tags

WeightInput sizeTop-1 (%)Eval sizeClassesLicenseHub
densenet121.tv_in1k22474.7502241000apache-2.0timm
densenet161.tv_in1k22477.3842241000apache-2.0timm
densenet169.tv_in1k22475.9222241000apache-2.0timm
densenet201.tv_in1k22477.2842241000apache-2.0timm

ra tags

WeightInput sizeTop-1 (%)Eval sizeClassesLicenseHub
densenet121.ra_in1k224 (test 288)76.4862881000apache-2.0timm
densenetblur121d.ra_in1k224 (test 288)77.3202881000apache-2.0timm
Update on GitHub