Les Transformateurs Visuels (ViTs) sont une architecture de réseau neuronal révolutionnaire qui a bouleversé le domaine de la vision par ordinateur. Contrairement aux modèles de vision par ordinateur traditionnels qui s’appuient sur des convolutions pour extraire des caractéristiques des images, les ViTs utilisent une architecture basée sur l’attention, inspirée des réseaux de neurones à transformateur introduits par Vaswani et al. (2017).
Fonctionnement des ViTs :
1. Tokenisation de l’image :
-
-
- Les images sont d’abord découpées en plusieurs petits morceaux ou “patches”. Chaque patch est traité comme un “mot” dans le contexte du traitement du langage. Cela permet au modèle de traiter l’image de manière séquentielle.
- Plongements linéaires :
- Chaque patch est ensuite aplati et transformé en un vecteur à travers une couche linéaire (embedding layer). Cela convertit les données d’image brutes en une forme que le modèle peut traiter efficacement.
- Ajout de codage positionnel :
- Comme dans les modèles de NLP, un codage positionnel est ajouté aux embeddings pour donner au modèle des informations sur la position relative des patches dans l’image originale. Cela aide le modèle à comprendre comment les patches sont disposés spatialement.
- Couches de transformateurs :
- Les vecteurs de patch, maintenant enrichis d’informations positionnelles, sont passés à travers plusieurs couches de transformateurs. Ces couches utilisent des mécanismes d’auto-attention pour permettre au modèle de pondérer l’importance relative de chaque patch par rapport aux autres lors de la réalisation de tâches spécifiques.
- Classification ou autres tâches :
- En sortie des couches de transformateurs, les données peuvent être utilisées pour diverses tâches, telles que la classification d’images, la détection d’objets, ou même la segmentation d’images. Pour la classification, par exemple, un vecteur final issu des couches de transformateurs est souvent passé à travers une couche dense pour prédire la classe de l’image.
-
Avantages des ViTs :
- Apprentissage de longs-courriers : L’architecture basée sur l’attention permet aux ViTs de capturer des dépendances à longue portée entre les éléments de l’image, ce qui est crucial pour des tâches comme la reconnaissance d’objets et la segmentation sémantique.
- Meilleure généralisation : Les ViTs ont montré une meilleure capacité de généralisation à de nouvelles données par rapport aux modèles basés sur convolutions.
- Flexibilité : L’architecture des ViTs est modulaire et peut être facilement adaptée à un large éventail de tâches de vision par ordinateur.
Applications des ViTs :
- Classification d’images : Identifier la classe d’un objet dans une image.
- Détection d’objets : Localiser et identifier des objets dans une image.
- Segmentation sémantique : Définir les contours de chaque objet dans une image.
- Génération d’images : Générer des images à partir de texte ou d’autres images.
- Traduction d’images : Traduire une image d’un style visuel à un autre.
Les ViTs ont connu un succès fulgurant dans le domaine de la vision par ordinateur et représentent une avancée majeure dans la façon dont les ordinateurs perçoivent et comprennent le monde visuel.
Ressources supplémentaires :
- Un guide sur les Transformateurs Visuels: https://huggingface.co/docs/transformers/en/model_doc/vit
- Vision par ordinateur basée sur des transformateurs : une revue: https://arxiv.org/abs/2402.17863
- Le Transformer original: https://arxiv.org/abs/1706.03762
Related Posts