Ultralytics YOLO27 : Rejoins la liste d'attente.
Licence YOLO
Retour au glossaire Ultralytics

CLIP (Contrastive Language-Image Pre-training)

CLIP est le modèle d’OpenAI qui projette les images et le texte dans un même espace, ce qui permet de classer les images à l’aide d’étiquettes en texte brut. Découvre son entraînement et le fonctionnement du zero-shot.

CLIP (préentraînement contrastif langage-image) est un modèle d’OpenAI qui apprend à associer les images à leurs descriptions textuelles. Il combine un encodeur d’images et un encodeur de texte, entraînés ensemble pour que l’image et la légende qui la décrit correspondent à des vecteurs proches dans un même espace d’intégration. Entraîné sur 400 millions de paires image-légende recueillies sur Internet, CLIP peut classer des images dans des catégories indiquées uniquement sous forme de texte, sans aucun exemple annoté pour ces catégories : c’est ce qu’on appelle l’apprentissage zéro-shot. Dans l’article de 2021, son meilleur modèle a atteint une précision top-1 zéro-shot de 76,2 % sur ImageNet, égalant le ResNet-50 entièrement supervisé d’origine sans utiliser aucune des 1,28 million d’images annotées qui avaient servi à entraîner ResNet-50.

Comment CLIP est entraîné#

CLIP comporte deux encodeurs. L’encodeur d’images est un ResNet ou un Vision Transformer (ViT), et l’encodeur de texte est un Transformer à 12 couches et 63 millions de paramètres dans sa version de base. Une projection linéaire transforme la sortie de chaque encodeur dans l’espace partagé, où chaque vecteur est normalisé à une longueur unitaire.

L’entraînement repose sur l’apprentissage contrastif appliqué à des lots de 32 768 paires image-légende. Pour un lot de N paires, CLIP calcule la similarité cosinus de chaque image avec chaque légende, ce qui donne une matrice N×N dont la diagonale contient les vraies paires. Une fonction de perte d’entropie croisée avec softmax, appliquée à chaque ligne, demande à chaque image de choisir sa légende parmi N ; une seconde fonction de perte appliquée à chaque colonne demande à chaque légende de choisir son image. Une température apprise met à l’échelle les similarités avant le softmax.

Comme les légendes sont des textes libres, CLIP apprend à partir de tout ce que le Web décrit, notamment des objets, des scènes, des styles artistiques, du texte dans les images et des actions, au lieu d’une liste de classes fixe.

Classification zéro-shot#

Pour classer une image, CLIP transforme chaque étiquette candidate en une courte phrase, comme « une photo d’un chien », transforme l’image en représentation et choisit l’étiquette ayant la plus forte similarité cosinus. La formulation de l’invite compte : l’article indique que le seul modèle « A photo of a {label}. » a amélioré de 1,3 % la précision sur ImageNet, et que la moyenne des représentations textuelles de 80 modèles a apporté 3,5 % de plus. Le pipeline Hugging Face Transformers ci-dessous encadre chaque étiquette avec le modèle « This is a photo of {}. » et exécute le modèle ViT-B/32 d’origine :

from transformers import pipeline

# Load OpenAI's CLIP ViT-B/32 for zero-shot image classification
classifier = pipeline("zero-shot-image-classification", model="openai/clip-vit-base-patch32")

# The classes are free-form text, chosen at inference time
labels = ["a city bus", "a tram", "a delivery truck", "a bicycle"]
predictions = classifier("https://ultralytics.com/images/bus.jpg", candidate_labels=labels)

# Scores are a softmax over the image's similarity to each caption
for prediction in predictions:
    print(f"{prediction['label']}: {prediction['score']:.3f}")

Il affiche a city bus: 0.657, a tram: 0.341, a delivery truck: 0.001 et a bicycle: 0.000. Le tramway, autre grand véhicule de transport de passagers, obtient presque toute la probabilité restante ; pour utiliser un nouvel ensemble d’étiquettes, il suffit de fournir une nouvelle liste de chaînes.

Applications concrètes#

  • Recherche sémantique : les collections d’images sont transformées en représentations une seule fois et stockées dans une base de données vectorielle. Une requête textuelle comme « baskets rouges sur un plancher en bois » est transformée au moment de la recherche et comparée aux images ; celles-ci sont ainsi retrouvées par leur contenu, sans étiquettes manuelles.
  • Génération texte vers image : Stable Diffusion 1.x conditionne son générateur d’images avec les représentations textuelles de CLIP ViT-L/14, et la similarité CLIP sert largement à évaluer la fidélité d’une image générée à son invite.
  • Détection à vocabulaire ouvert : les modèles YOLO-World de Tencent AI Lab, disponibles dans le paquet Ultralytics, encodent les noms de classes transmis à set_classes avec l’encodeur de texte ViT-B/32 de CLIP. Un détecteur entraîné une seule fois peut ainsi repérer des objets à partir de noms comme « sac à dos rouge » ou « chariot élévateur ». OWLv2 de Google s’appuie sur les encodeurs d’image et de texte préentraînés de CLIP. Le classement VLM le compare à d’autres détecteurs à vocabulaire ouvert et à des VLM sur des jeux de données de détection du monde réel.
  • Encodeurs visuels pour les VLM : de nombreux modèles vision-langage partent d’un encodeur d’images CLIP préentraîné. LLaVA, par exemple, transmet les caractéristiques de CLIP ViT-L/14 à un modèle de langage.
  • Filtrage de jeux de données : les grands jeux de données image-texte ouverts, comme LAION-5B, ne conservent que les paires du Web dont la similarité image-texte CLIP dépasse un seuil, supprimant ainsi les légendes qui ne décrivent pas leur image.
  • Classificateurs par apprentissage supervisé : un classificateur standard possède une sortie par classe d’entraînement et ne peut pas évaluer une classe qu’il n’a jamais rencontrée. Le « classificateur » de CLIP est l’ensemble des représentations textuelles ; il change donc lorsque les étiquettes changent.
  • SigLIP : la variante de Google remplace le softmax appliqué à l’ensemble du lot de CLIP par une fonction de perte sigmoïde qui évalue chaque paire image-texte indépendamment. Elle utilise moins de mémoire et fonctionne mieux avec de petits lots.
  • Apprentissage contrastif auto-supervisé : des méthodes comme SimCLR comparent deux versions augmentées d’une même image et apprennent à partir des images seules. CLIP établit des contrastes entre deux modalités, ce qui lie ses caractéristiques d’image aux mots.
  • VLM génératifs : CLIP évalue la similarité entre images et textes ; il ne peut ni rédiger une légende ni répondre à une question. Les modèles génératifs associent un modèle de langage à un encodeur d’images, souvent celui de CLIP.

Limites#

La précision zéro-shot de CLIP baisse pour les catégories fines comme les modèles d’avion ou de voiture, pour le comptage d’objets et pour les tâches abstraites comme l’estimation des distances. Il apprend également les biais des légendes du Web. Comme CLIP a appris à lire le texte dans les images, celui-ci peut le tromper : dans les recherches d’OpenAI sur les neurones multimodaux, une pomme portant une étiquette manuscrite « iPod » a été classée comme un iPod.

Découvre les solutions

La vision par ordinateur dans le sport

La vision par ordinateur dans le sport

Découvre comment Ultralytics YOLO propulse la vision par ordinateur dans le sport grâce au suivi des joueurs et du ballon, aux analyses de performance, aux conseils d’entraînement et à la rééducation des athlètes.
En savoir plus
Vision par ordinateur pour les images aériennes

Vision par ordinateur pour les images aériennes

Transforme les images de drones et les images aériennes en informations exploitables en temps réel pour l’agriculture, l’aquaculture, la conservation et l’analyse géospatiale avec Ultralytics YOLO.
En savoir plus
Vision par ordinateur dans l’aérospatiale

Vision par ordinateur dans l’aérospatiale

Applique la vision par ordinateur dans l’aérospatiale avec Ultralytics YOLO pour l’inspection des aéronefs, la détection des corps étrangers sur les pistes, les opérations au sol des aéroports et la détection des défauts des matériaux composites.
En savoir plus
La vision par ordinateur dans la sécurité

La vision par ordinateur dans la sécurité

Protège chaque site avec les modèles Ultralytics YOLO. L’IA visuelle permet la surveillance des périmètres, la détection des menaces, la reconnaissance des plaques d’immatriculation et la sécurité au travail.
En savoir plus
La vision par ordinateur en robotique

La vision par ordinateur en robotique

Donne plus de capacités à tes machines grâce aux modèles Ultralytics YOLO. Dans la robotique, l’IA visuelle permet la navigation autonome, la perception, le suivi des objets et le contrôle en temps réel.
En savoir plus
La vision par ordinateur dans la logistique

La vision par ordinateur dans la logistique

Optimise la logistique avec les modèles Ultralytics YOLO. La vision par IA permet d’inspecter les colis, de les trier, de suivre les véhicules et de surveiller la sécurité des entrepôts en temps réel.
En savoir plus
La vision par ordinateur dans le commerce de détail

La vision par ordinateur dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA permet de suivre les stocks, de surveiller les rayons, de gérer les files d’attente et de mieux comprendre les clients.
En savoir plus
La vision par ordinateur dans le secteur de la santé

La vision par ordinateur dans le secteur de la santé

Crée des solutions de santé avec les modèles Ultralytics YOLO. La vision par IA dans le secteur de la santé accélère l’imagerie médicale, améliore les diagnostics et facilite la surveillance des patients.
En savoir plus
La vision par ordinateur dans l’industrie manufacturière

La vision par ordinateur dans l’industrie manufacturière

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA améliore le contrôle qualité, la détection des défauts, le respect des règles concernant les EPI et l’automatisation des chaînes de montage.
En savoir plus
La vision par ordinateur dans l’automobile

La vision par ordinateur dans l’automobile

Mets la vision par ordinateur au service de l’automobile avec les modèles Ultralytics YOLO. La vision par IA renforce la sécurité routière, l’aide à la conduite et l’automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Vision par ordinateur dans l’agriculture

Vision par ordinateur dans l’agriculture

Fais entrer l’IA de vision dans l’agriculture intelligente avec les modèles Ultralytics YOLO. Optimise le suivi des cultures et du bétail ainsi que l’agriculture de précision pour obtenir des rendements plus élevés et plus intelligents.
En savoir plus

Construisons ensemble l’avenir de l’IA !

Commence ton parcours vers l’avenir de l’apprentissage automatique