timm documentation
PiT
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
| Feature | PoolingVisionTransformer |
|---|---|
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
| Architecture | Params (M) | GMACs | Input size | Pretrained weights |
|---|---|---|---|---|
pit_b_224 | 73.76 | 12.42 | 224 | 1 |
pit_b_distilled_224 | 74.79 | 12.50 | 224 | 1 |
pit_s_224 | 23.46 | 2.88 | 224 | 1 |
pit_s_distilled_224 | 24.04 | 2.90 | 224 | 1 |
pit_ti_224 | 4.85 | 0.70 | 224 | 1 |
pit_ti_distilled_224 | 5.10 | 0.71 | 224 | 1 |
pit_xs_224 | 10.62 | 1.40 | 224 | 1 |
pit_xs_distilled_224 | 11.00 | 1.41 | 224 | 1 |
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.
| Weight | Input size | Top-1 (%) | Eval size | Classes | License | Hub |
|---|---|---|---|---|---|---|
pit_b_224.in1k | 224 | 82.458 | 224 | 1000 | apache-2.0 | timm |
pit_b_distilled_224.in1k | 224 | 83.774 | 224 | 1000 | apache-2.0 | timm |
pit_s_224.in1k | 224 | 81.114 | 224 | 1000 | apache-2.0 | timm |
pit_s_distilled_224.in1k | 224 | 81.826 | 224 | 1000 | apache-2.0 | timm |
pit_ti_224.in1k | 224 | 72.926 | 224 | 1000 | apache-2.0 | timm |
pit_ti_distilled_224.in1k | 224 | 74.276 | 224 | 1000 | apache-2.0 | timm |
pit_xs_224.in1k | 224 | 78.196 | 224 | 1000 | apache-2.0 | timm |
pit_xs_distilled_224.in1k | 224 | 79.172 | 224 | 1000 | apache-2.0 | timm |