Découvrez CLIP (Contrastive Language-Image Pre-training) pour faire le lien entre la vision et le langage. Découvrez comment cette technologie permet l'apprentissage sans entraînement et alimente Ultralytics .
CLIP (Contrastive Language-Image Pre-training) est une architecture de réseau neuronal révolutionnaire développée par OpenAI qui comble le fossé entre les données visuelles et le langage naturel. Contrairement aux systèmes traditionnels de vision par ordinateur (CV) qui nécessitent un étiquetage fastidieux des données pour un ensemble fixe de catégories, CLIP apprend à comprendre les images en s'entraînant sur des millions de paires image-texte collectées sur Internet. Cette approche permet au modèle d'effectuer un apprentissage sans entraînement, ce qui signifie qu'il peut identifier des objets, des concepts ou des styles qu'il n'a jamais explicitement vus pendant l'entraînement, simplement en lisant une description textuelle. En mappant les informations visuelles et linguistiques dans un espace de caractéristiques partagé, CLIP sert de puissant modèle de base pour une grande variété de tâches en aval sans nécessiter de réglage fin spécifique à chaque tâche .
Le mécanisme central de CLIP implique deux encodeurs parallèles : un encodeur d'images, généralement basé sur un Vision Transformer (ViT) ou un ResNet, et un Transformer de texte similaire à ceux utilisés dans les grands modèles linguistiques (LLM) modernes. Grâce à un processus appelé apprentissage contrastif, le système est entraîné à prédire quel extrait de texte correspond à quelle image dans un lot.
Pendant l'entraînement, le modèle optimise ses paramètres afin de rapprocher les vecteurs d'intégration des paires image-texte correspondantes tout en éloignant les paires non correspondantes. Cela crée un espace latent multimodal où la représentation mathématique d'une image d'un « golden retriever » se trouve spatialement proche de l'intégration textuelle d'une « photo d'un chien ». En calculant la similarité cosinus entre ces vecteurs, le modèle peut quantifier dans quelle mesure une image correspond à une invite en langage naturel, ce qui permet une classification et une recherche d'images flexibles.
La capacité à relier la vision et le langage a fait de CLIP une technologie fondamentale dans les applications modernes d'IA :
Alors que les détecteurs d'objets standard sont limités à leurs classes d'entraînement, l'utilisation de fonctionnalités basées sur CLIP permet une
détection à vocabulaire ouvert. Les Python Le code montre comment utiliser le
ultralytics paquet permettant de detect à l'aide d'invites de texte personnalisées :
from ultralytics import YOLOWorld
# Load a pre-trained YOLO-World model utilizing CLIP features
model = YOLOWorld("yolov8s-world.pt")
# Define custom classes using natural language text prompts
model.set_classes(["person wearing sunglasses", "red backpack"])
# Run inference on an image to detect the text-defined objects
results = model.predict("travelers.jpg")
# Display the results
results[0].show()
Il est utile de différencier CLIP des autres paradigmes courants de l'IA afin de comprendre son utilité spécifique :