timm documentation

PiT

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

PiT

Category: ViT · Code: timm/models/pit.py · Architectures: 8 · Pretrained weights: 8 (8 with ImageNet-1k results)

Pooling-based Vision Transformers (PiT) reduce the spatial size and increase the channels of the tokens between stages with a depthwise convolution pooling layer, as in CNNs.

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

Model API support

FeaturePoolingVisionTransformer
features_only=True feature maps✓ (strides 7, 14, 28)
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 (PoolingVisionTransformer with pit_ti_224 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
pit_b_22473.7612.422241
pit_b_distilled_22474.7912.502241
pit_s_22423.462.882241
pit_s_distilled_22424.042.902241
pit_ti_2244.850.702241
pit_ti_distilled_2245.100.712241
pit_xs_22410.621.402241
pit_xs_distilled_22411.001.412241

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
pit_b_224.in1k22482.4582241000apache-2.0timm
pit_b_distilled_224.in1k22483.7742241000apache-2.0timm
pit_s_224.in1k22481.1142241000apache-2.0timm
pit_s_distilled_224.in1k22481.8262241000apache-2.0timm
pit_ti_224.in1k22472.9262241000apache-2.0timm
pit_ti_distilled_224.in1k22474.2762241000apache-2.0timm
pit_xs_224.in1k22478.1962241000apache-2.0timm
pit_xs_distilled_224.in1k22479.1722241000apache-2.0timm
Update on GitHub