timm (PyTorch Image Models) is a comprehensive library of pre-trained computer vision models created by Ross Wightman that serves as the "Hugging Face of Computer Vision" — providing 800+ model architectures (Vision Transformers, EfficientNets, ConvNeXt, Swin, DeiT, NFNet, and more) with ImageNet-pretrained weights, a consistent API across all models, and the training recipes needed to reproduce state-of-the-art image classification results, filling the gap left by PyTorch's limited torchvision model zoo.
What Is timm?
- Definition: An open-source Python library (
pip install timm) that provides a unified interface to hundreds of image classification model architectures with pre-trained weights — wheretorchvisionoffers ~20 models, timm offers 800+ with consistentforward_features()andforward_head()methods. - Creator: Ross Wightman (rwightman) — an independent researcher who single-handedly implemented, trained, and benchmarked hundreds of vision architectures, making timm one of the most impactful individual contributions to the ML ecosystem.
- Pretrained Weights: 99% of models come with ImageNet-1k or ImageNet-21k pretrained weights — many models have multiple weight versions (different training recipes, resolutions, or datasets).
- Consistent API: Every model in timm shares the same interface —
model = timm.create_model("vit_base_patch16_224", pretrained=True)works for any of the 800+ architectures, making it trivial to swap models in experiments. - HuggingFace Integration: timm models are available on the Hugging Face Hub —
timm.create_model("hf_hub:timm/vit_base_patch16_224.augreg_in21k")loads models directly from the Hub with version tracking.
Key Model Families in timm
| Family | Architecture | Key Models | ImageNet Top-1 |
|---|---|---|---|
| Vision Transformer | Transformer | ViT-B/16, ViT-L/16, ViT-H/14 | 85-88% |
| EfficientNet | CNN (NAS) | EfficientNet-B0 to B7, V2 | 77-87% |
| ConvNeXt | Modern CNN | ConvNeXt-T/S/B/L/XL | 82-87% |
| Swin Transformer | Shifted window | Swin-T/S/B/L | 81-87% |
| DeiT | Data-efficient ViT | DeiT-S/B, DeiT III | 80-86% |
| ResNet | Classic CNN | ResNet-50/101/152, ResNetV2 | 76-82% |
| NFNet | Normalizer-free | NFNet-F0 to F6 | 83-87% |
| MaxViT | Multi-axis ViT | MaxViT-T/S/B | 83-87% |
Why timm Matters
- Backbone Provider: timm is the standard source of pretrained backbones for detection (MMDetection, Detectron2), segmentation (mmsegmentation), and other downstream tasks — most CV research starts with a timm backbone.
- Training Recipes: timm includes the exact training configurations (augmentation, optimizer, learning rate schedule) used to achieve published accuracy numbers — enabling reproducible research.
- Feature Extraction:
model.forward_features(x)returns intermediate feature maps — essential for using timm models as backbones in detection, segmentation, and other tasks that need multi-scale features. - Rapid Experimentation: Swap
resnet50forconvnext_baseorswin_base_patch4_window7_224with a single string change — timm's consistent API makes architecture search trivial.
timm is the essential computer vision model library that provides the pretrained backbones powering most modern CV research and applications — offering 800+ architectures with consistent APIs and pretrained weights that make it the first dependency added to any PyTorch computer vision project.
Explore 500+ Semiconductor & AI Topics
From EUV lithography to CUDA optimization — search the full knowledge base or chat with our AI assistant.