Comment un modèle apprend à voir en lisant.

SRC·39 Source
Il apprend à voir en lisant — sans que tu lui donnes la moindre étiquette.

Il apprend à voir en lisant — sans que tu lui donnes la moindre étiquette.

Montre-lui une photo et la légende qui l'accompagnait — puis recommence un milliard de fois. Peu à peu il relie ce qu'il voit à ce que nous disons, jusqu'à ce qu'images et mots vivent dans un seul espace partagé. Demande avec des mots, il trouve l'image ; montre une image, il trouve les mots. Personne n'a rien étiqueté — les légendes que le monde avait déjà écrites étaient toute la leçon.
L'ancienne méthode : caser chaque image dans l'une de quelques cases fixes.

L'ancienne méthode : caser chaque image dans l'une de quelques cases fixes.

Pour apprendre à voir à un modèle, on étiquetait à la main des millions d'images selon une liste fermée — mille cases fixes, pas une de plus. Lent, coûteux, et aveugle à tout ce qui sort de la liste. Comme un plateau avec un nombre fixe d'alvéoles : ce qui ne correspond à aucune alvéole n'a nulle part où se poser. Mais le web ouvert associe déjà les images aux mots posés à côté — des milliards de légendes, déjà écrites, gratuites. Alors arrête d'étiqueter. Commence à associer.
Deux lecteurs distincts, pixels et mots, visant un seul espace partagé.

Deux lecteurs distincts, pixels et mots, visant un seul espace partagé.

I=fimg(x)fimg(x),T=ftxt(t)ftxt(t),I,TRdI = \dfrac{f_{\text{img}}(x)}{\lVert f_{\text{img}}(x)\rVert},\quad T = \dfrac{f_{\text{txt}}(t)}{\lVert f_{\text{txt}}(t)\rVert},\quad I,\,T \in \mathbb{R}^{d}
Une image et une phrase n'ont rien en commun — le modèle fait donc passer chacune par son propre lecteur, et chacun émet un point dans un seul espace partagé, chaque point ramené à la même longueur pour que seule sa direction compte. Entraîne les deux lecteurs ensemble jusqu'à ce qu'une image et sa légende pointent dans la même direction. Comme deux diapasons frappés sur une même note : frappe l'un et son jumeau à l'autre bout de la pièce vibre tout seul — des corps différents, une fréquence partagée. La leçon n'est pas une étiquette. C'est un accord.
Rapproche chaque vraie paire. Écarte chaque fausse paire.

Rapproche chaque vraie paire. Écarte chaque fausse paire.

i=logexp(Ii,Ti/τ)j=1Nexp(Ii,Tj/τ)\ell_i = -\log \dfrac{\exp(\langle I_i,\,T_i\rangle/\tau)}{\sum_{j=1}^{N}\exp(\langle I_i,\,T_j\rangle/\tau)}
Un lot contient mille paires image–légende : mille bonnes correspondances, près d'un million de mauvaises. La règle est brutale — pour chaque image, fais en sorte que sa propre légende obtienne le meilleur score, et fais chuter les autres. Comme un tas de puzzles à deux pièces renversés ensemble : chaque image a exactement une légende qui s'emboîte ; resserre chaque vraie paire, détache les imposteurs. La formule dit simplement : en haut = le score de la vraie paire, en bas = tous les candidats additionnés, et τ règle la netteté du jugement.
La proximité n'est que direction — et elle se juge dans les deux sens.

La proximité n'est que direction — et elle se juge dans les deux sens.

sim(u,v)=uvuv,L=12(Limgtxt+Ltxtimg)\operatorname{sim}(u,v)=\dfrac{u\cdot v}{\lVert u\rVert\,\lVert v\rVert},\qquad \mathcal{L}=\tfrac{1}{2}\left(\mathcal{L}_{\text{img}\to\text{txt}}+\mathcal{L}_{\text{txt}\to\text{img}}\right)
Comment note-t-il le « plus proche » ? Par la direction, pas la distance : le cosinus de l'angle entre deux points. Même cap, score élevé ; à angle droit, rien. Comme deux girouettes sur un toit : peu importe la taille de chaque flèche, seul compte qu'elles tournent vers le même côté. Et le concours se joue dans les deux sens à la fois — chaque image cherche sa légende, chaque légende cherche son image — donc la perte est la moyenne des deux.
Il peut désormais nommer une chose qu'on ne lui a jamais appris à voir.

Il peut désormais nommer une chose qu'on ne lui a jamais appris à voir.

y^=argmaxc sim(fimg(x),ftxt(promptc))\hat{y}=\arg\max_{c}\ \operatorname{sim}\big(f_{\text{img}}(x),\,f_{\text{txt}}(\text{prompt}_c)\big)
Voilà le cadeau d'un espace partagé : pour classer une image, aucun exemple étiqueté n'est nécessaire. Il suffit de décrire chaque option en mots simples, de déposer ces descriptions dans le même espace et de choisir celle qui se trouve la plus proche de l'image. Comme observer les oiseaux avec un guide de terrain : tu lis la description d'un oiseau que tu n'as jamais vu, puis tu repères dans l'arbre celui qui lui correspond le mieux. Une nouvelle catégorie n'est qu'une nouvelle phrase — sans réentraînement, sans nouvelles étiquettes.
Une seule carte pour les pixels et les mots — la graine de l'IA multimodale.

Une seule carte pour les pixels et les mots — la graine de l'IA multimodale.

Mets tout cela ensemble et tu as bâti un unique système de coordonnées où une image et ses mots se côtoient. Cherche dans une photothèque en tapant ce que tu veux. Légende une image en lisant ses mots les plus proches. Et — discrètement — c'est le pivot sur lequel tournent les générateurs texte-vers-image : un lecteur de texte qui parle déjà la langue des images et oriente ce qui est dessiné. Comme deux bœufs sous un même joug : deux animaux très différents, reliés par une seule barre, tirant enfin comme un seul.
Ils tombent sur un même point. Partagent-ils un même sens ?

Ils tombent sur un même point. Partagent-ils un même sens ?

La photographie d'un chien et le mot pour ce chien tombent exactement au même endroit. Alors il comprend ? Ou a-t-il seulement appris que les deux ont tendance à arriver ensemble — comme le tonnerre suit l'éclair sans rien savoir d'un orage ? Partager une coordonnée n'est pas partager un sens. Nous lui avons appris qu'image et mot vont côte à côte. Nous ne lui avons jamais appris ce que l'un ou l'autre est vraiment. 🌱
touchez →balayez ↑ pour approfondirbalayez ↓ pour quitter