timm documentation

TinyViT

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

TinyViT

Catégorie : Hybride · Code : timm/models/tiny_vit.py · Architectures : 5 · Poids pré-entraînés : 11 (8 avec des résultats sur ImageNet-1k)

TinyViT est une famille de petits transformeurs hiérarchiques pour la vision (une première étape convolutive, suivie d'une attention sur des fenêtres locales), pré-entraînée par distillation rapide à partir de grands modèles enseignants.

Articles

Utilisation

Consultez le Démarrage rapide pour le chargement des poids pré-entraînés, le prétraitement des images et l’ajustement fin, ainsi que Extraction de caractéristiques pour utiliser les modèles comme squelettes.

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

Prise en charge de l'API des modèles

FonctionnalitéTinyVit
cartes de caractéristiques features_only=True✓ (pas 4, 8, 16, 32)
forward_intermediates()✓
prune_intermediate_layers()✓
Toute taille d'entrée, aucune modification nécessaire✓
set_input_size()–
dynamic_img_size=True–
set_grad_checkpointing()✓
Décroissance du taux d'apprentissage par couche (group_matcher())✓
reset_classifier()✓

✓ pris en charge, ✓ (carré) fonctionne uniquement pour les tailles carrées, ✗ non pris en charge, – non nécessaire (le modèle accepte déjà n'importe quelle taille d'entrée). Vérifié en exécutant chaque fonctionnalité sur un modèle initialisé aléatoirement (TinyVit avec tiny_vit_5m_224 à 224), les autres architectures de la même classe sont censées se comporter de la même manière. Consultez la page API du modèle pour plus de détails.

Architectures

ArchitectureParamètres (M)GMACsTaille d'entréePoids pré-entraînés
tiny_vit_5m_22412.081.272243
tiny_vit_11m_22420.352.032243
tiny_vit_21m_22433.214.272243
tiny_vit_21m_38421.2213.723841
tiny_vit_21m_51221.2626.935121

Les GMACs et le nombre de paramètres correspondent à la taille d’entrée par défaut et au classifieur de chaque architecture, d’après les résultats des benchmarks.

Poids pré-entraînés

Top-1 est la précision de validation sur ImageNet-1k issue de results-imagenet.csv à la taille d'évaluation indiquée, - si le poids n'a pas de résultat ImageNet-1k (par exemple, poids de pré-entraînement ou poids image-texte). Classes est la taille du classifieur pré-entraîné, aucune pour les poids sans classifieur.

PoidsTaille d'entréeTop-1 (%)Taille d'évaluationClassesLicenceHub
tiny_vit_5m_224.dist_in22k224--21841apache-2.0timm
tiny_vit_5m_224.dist_in22k_ft_in1k22480.8742241000apache-2.0timm
tiny_vit_5m_224.in1k22479.1962241000apache-2.0timm
tiny_vit_11m_224.dist_in22k224--21841apache-2.0timm
tiny_vit_11m_224.dist_in22k_ft_in1k22483.2322241000apache-2.0timm
tiny_vit_11m_224.in1k22481.5382241000apache-2.0timm
tiny_vit_21m_224.dist_in22k224--21841apache-2.0timm
tiny_vit_21m_224.dist_in22k_ft_in1k22485.0882241000apache-2.0timm
tiny_vit_21m_224.in1k22483.2682241000apache-2.0timm
tiny_vit_21m_384.dist_in22k_ft_in1k38486.0883841000apache-2.0timm
tiny_vit_21m_512.dist_in22k_ft_in1k51286.4445121000apache-2.0timm
Update on GitHub