Mohamed Keita
← Blog
Deep Dive

VLM, CLIP, Computer Vision

Vision Language Model : la fin de la vision aveugle

6 juil. 2026 · 9 min de lecture

La computer vision a longtemps été une affaire de pixels et de classes. Ça, c'était avant.

Aujourd'hui, tu envoies une photo d'un réfrigérateur ouvert à un modèle. Tu poses la question : "qu'est-ce que je peux cuisiner ce soir ?"

Le modèle te liste trois recettes. Il a vu les ingrédients, compris ta question, croisé les deux. Aucun code de détection d'objets. Aucun pipeline "détecte → classe → règle métier". Une image, une question, une réponse utile.

C'est ça un VLM — Vision Language Model. Et ce qui semble magique en surface repose sur un changement architectural précis : pour la première fois, vision et langage partagent le même espace de représentation. La machine ne voit plus d'un côté et ne lit plus de l'autre. Elle fait les deux en même temps.

Pendant des années, la computer vision avait un angle mort structurel : elle percevait sans comprendre. Un détecteur d'objets te dit "chien". Il ne te dit pas lequel, dans quel contexte, ni ce que ça implique. Les VLM comblent cet angle mort.

Le problème que les VLM résolvent

Pour comprendre ce que les VLM apportent, il faut d'abord être honnête sur ce que la computer vision classique ne sait pas faire.

Un réseau de neurones convolutif (CNN) est un extracteur de features visuelles. Il apprend à reconnaître des patterns dans les pixels : bords, textures, formes, puis des combinaisons de plus en plus abstraites à mesure qu'on monte dans les couches. En sortie, il produit un vecteur de probabilités. "Chien : 94%. Chat : 3%. Autre : 3%." C'est tout.

Ce vecteur ne contient aucun contexte. Le modèle ne sait pas si ce chien est en laisse ou non. S'il est dans une cuisine ou dans une rue, si la photo a été prise de jour ou de nuit. Il ne peut pas répondre à une question ni comparer deux images. Il ne peut pas expliquer ce qu'il voit. Ce n'est pas un bug, c'est une limite de conception. Un CNN est entraîné sur une tâche fermée, avec un ensemble de classes fixé à l'avance. Il est très bon dans ce périmètre. En dehors, il est aveugle.

Le langage naturel, lui, est ouvert par nature. Une phrase peut décrire n'importe quelle scène, poser n'importe quelle question, exprimer une nuance. C'est précisément ce qui manquait à la vision. Les VLM ne "rajoutent" pas du langage sur de la vision. Ils résolvent un problème plus profond : comment faire cohabiter deux modalités, pixels et tokens, dans un espace où un modèle peut raisonner sur les deux simultanément. C'est ce qu'on appelle l'alignement multimodal, et c'est là que tout se joue.

Architecture : comment un VLM fonctionne

Un VLM repose principalement sur trois blocs :

Architecture simplifiée d'un VLMFlux visuelFlux texteEncodeur visuelTokens visuelsEncodeur texteTokens texteFusion multimodaleLLMRéponseimgtxt

Architecture simplifiée d'un VLM. Cliquer sur un bloc pour afficher une description.

La fusion aligne les modalités visuelle et textuelle dans un espace partagé.

Le vision encoder

Son rôle : transformer une image en quelque chose qu'un transformer peut digérer.

En pratique, c'est presque toujours un Vision Transformer (ViT). Le principe : tu découpes l'image en patches de taille fixe (16×16 pixels par exemple), tu linéarises chaque patch en vecteur, et tu les passes dans un transformer exactement comme tu passerais des tokens textuels. Le modèle apprend des relations entre patches via le mécanisme d'attention.

En sortie : une séquence de vecteurs où chaque vecteur représente une région de l'image. C'est ce qu'on appelle les visual tokens.

Un CNN aurait fait le même travail différemment — convolutions, feature maps, pooling. Le ViT est devenu dominant parce qu'il s'intègre naturellement dans une architecture tout-transformer. Moins de bricolage à la jonction.

Le text encoder

Rien de surprenant ici si tu connais BERT ou GPT. Une séquence de texte → tokenisation → embeddings → transformer → vecteurs contextuels.

En sortie : des text tokens, dans un espace vectoriel de dimension comparable aux visual tokens. Le problème ? Les deux espaces ne sont pas alignés. Les visual tokens et les text tokens vivent dans des géométries différentes. Un pixel de chien et le mot "chien" ne sont pas naturellement proches dans l'espace vectoriel, même si sémantiquement, ils devraient l'être. C'est ici que tout se joue.

La couche de fusion

C'est le cœur architectural du VLM et souvent la partie la moins bien expliquée.

L'approche la plus répandue : une projection linéaire (parfois appelée linear adapter ou MLP projection) qui apprend à mapper les visual tokens dans l'espace du text encoder. Après entraînement, un visual token représentant "une fourrure orange et des moustaches" se retrouve géométriquement proche du token textuel "chat". Le modèle peut alors raisonner sur les deux modalités comme s'il lisait une seule séquence mixte.

CLIP de OpenAI a popularisé une variante élégante : entraîner les deux encodeurs simultanément avec une loss contrastive — rapprocher les paires image/texte correspondantes, éloigner les paires non correspondantes. En gros, le modèle apprend que la photo d'un chat et la phrase "a photo of a cat" doivent être voisines. Sur 400 millions de paires. (Oui, quelqu'un a dû écrire les légendes. Non, c'était pas un stagiaire. C'était du scraping web à grande échelle.)

Apprentissage contrastif CLIPEspace imageEspace textechatchienvélochatavionvélopaires correspondantes rapprochéesnon-paires éloignées

Apprentissage contrastif CLIP. Les paires correspondantes sont rapprochées, les non-paires éloignées.

Les architectures plus récentes (LLaVA, Flamingo, InternVL) raffinent cette idée avec des projections plus sophistiquées, des cross-attention layers, ou des resampler modules qui compressent les visual tokens avant fusion. Mais le principe reste le même : aligner les deux espaces pour qu'un seul modèle puisse raisonner dessus.

Ce que ça change concrètement

Assez de théorie. Ce que les VLM rendent possible en pratique, c'est un changement de paradigme sur le type de tâches qu'on peut adresser et sur la façon dont on les adresse.

Visual Question Answering (VQA)

Tu passes une image et une question en langage naturel. Le modèle répond. Pas de pipeline de détection, pas de règles métier, pas de post-processing. Une inférence, une réponse.

Exemple : un système de contrôle qualité industriel. Avant les VLM, tu entraînais un détecteur sur tes défauts spécifiques — ce qui supposait des données labellisées, un cycle d'entraînement, un modèle à maintenir. Avec un VLM, tu poses la question : "est-ce que cette soudure présente une irrégularité ?". Zéro label, zéro fine-tuning dans les cas simples.

Image captioning

Le modèle décrit ce qu'il voit. Utile en accessibilité, en indexation automatique de contenus visuels, en génération de métadonnées. Rien de révolutionnaire en apparence mais la qualité des descriptions a fait un bond qualitatif massif avec les VLM par rapport aux approches CNN+LSTM d'avant.

Zéro-shot classification

C'est probablement l'apport le plus sous-estimé. Avec CLIP, tu n'as plus besoin d'un ensemble de classes fixé à l'entraînement. Tu décris tes classes en langage naturel au moment de l'inférence : "a photo of a fire", "a photo of smoke", "a photo of a normal industrial scene". Le modèle classe par similarité cosine entre l'embedding image et les embeddings textuels.

Conséquence directe : tu peux changer tes classes sans réentraîner. Pour un MLOps qui a déjà géré des pipelines de réentraînement à 23h, c'est une information non négligeable.

Document understanding

Un cas moins médiatisé mais très concret en entreprise : extraire des informations structurées depuis des documents scannés (factures, contrats, formulaires). Les VLM remplacent avantageusement des pipelines OCR + NLP + règles de parsing qui étaient fragiles, coûteux à maintenir, et qui pleuraient dès qu'une mise en page changeait légèrement.

Les limites actuelles

Les VLM sont impressionnants. Ils sont aussi, à ce stade, imparfaits. Voici ce qui mérite d'être dit honnêtement.

Les hallucinations visuelles

Le problème le plus connu et le plus traître. Un VLM peut décrire avec une confiance totale des éléments qui ne sont pas dans l'image. Par construction : le modèle génère des tokens selon ce qui est statistiquement probable dans la séquence. Si la séquence textuelle appelle naturellement "le chat est assis sur le canapé", il peut compléter avec "canapé" même si l'image montre un parquet.

Ce n'est pas un bug qu'on corrige avec un patch. C'est une tension fondamentale entre la fluidité du langage et la fidélité visuelle. Des travaux récents (RLHF visuel, techniques de grounding plus strictes) réduisent le phénomène sans pour l'instant l'éliminer.

En production, ça veut dire une chose simple : tu ne déploies pas un VLM sans mécanisme de vérification sur les sorties critiques.

Le coût computationnel

Un ViT-L (~300M paramètres) couplé à un LLM 7B, c'est plus de 7 milliards de paramètres à faire tourner. L'inférence est coûteuse en mémoire, en latence, et en énergie. Sur GPU cloud, c'est gérable. Sur edge device, c'est une contrainte réelle qui explique pourquoi des initiatives comme Gemini Robotics On-Device font autant parler d'elles.

La quantization (INT8, INT4) et la distillation permettent de comprimer les modèles mais souvent au prix d'une dégradation sur les tâches fines. Le compromis taille/performance reste un chantier actif.

Les données d'entraînement

Les VLM sont entraînés sur des volumes massifs de paires image/texte scrapées du web. Ce qui veut dire : biais de représentation, données de qualité inégale, surreprésentation de certaines cultures et langues. Pour des applications métier spécifiques comme l'imagerie médicale, la vision industrielle ou le satellite, le fine-tuning sur données domaine reste souvent indispensable. Le zéro-shot ne fait pas tout.

Et après ?

Les VLM ont résolu un problème que la computer vision classique ne pouvait pas adresser : donner à une machine les moyens de voir et de comprendre simultanément. Mais comprendre n'est pas agir.

Un VLM peut te dire que le verre est renversé sur la table. Il ne le redresse pas. Il peut décrire une trajectoire de bras robotique optimale mais il ne l'exécute pas. Entre la compréhension multimodale et l'action dans le monde physique, il reste un gap architectural que les VLM seuls ne comblent pas.

C'est exactement ce que les Vision Language Action models (VLA) tentent de résoudre. Même logique d'unification, une modalité supplémentaire en sortie : l'action. Plus un vecteur de probabilités sur des classes, mais des commandes motrices, des trajectoires, des décisions exécutables.

Partager sur LinkedIn et X

Articles similaires