Qu’est-ce que l’apprentissage zero-shot?
Découvrir la plateforme d’IA d’IBM S’abonner aux mises à jour sur l’IA
Illustration par un collage de pictogrammes représentant des nuages, un diagramme circulaire, des pictogrammes de graphique

Publication : 24 janvier 2024
Contributeur : Dave Bergmann

Qu’est-ce que l’apprentissage zero-shot?

L’apprentissage zero-shot (ZSL) est un scénario de machine learning dans lequel un modèle d’IA est entraîné à reconnaître et à catégoriser des objets ou des concepts sans avoir vu d’exemples de ces catégories ou concepts au préalable.

La plupart des modèles de deep learning (apprentissage profond) de pointe pour la classification ou la régression sont entraînés par apprentissage supervisé, ce qui nécessite de nombreux examples étiquetés de classes de données pertinentes. Les modèles « apprennent » en effectuant des prédictions sur un ensemble de données d’entraînement étiqueté ; les étiquettes de données fournissent à la fois l’éventail de réponses possibles et les réponses correctes (ou vérité terrain) pour chaque exemple d’entraînement. « Apprendre » signifie ici ajuster les pondérations du modèle pour minimiser les différences entre les prédictions du modèle et la vérité terrain. Ce processus nécessite une quantité suffisante d’échantillons étiquetés pour de nombreuses séries d’entraînement et de mises à jour. 

Bien que puissant, l’apprentissage supervisé n’est pas pratique dans certains scénarios du monde réel. L’annotation de grandes quantités d’échantillons de données est coûteuse et prend du temps, et dans des cas tels que les maladies rares et les espèces récemment découvertes, les exemples peuvent être rares ou inexistants. Envisagez les tâches de reconnaissance d’image : selon une étude, les humains peuvent reconnaître environ 30 000 catégories d’objets pouvant être distingués individuellement.1 Il n’est pas possible pour les modèles d’intelligence artificielle, en termes de temps, de coûts et de ressources informatiques, d’appréhender à distance les capacités humaines s’ils doivent être explicitement entraînés sur des données étiquetées pour chaque classe.

La nécessité pour les modèles de machine learning de pouvoir se généraliser rapidement à un grand nombre de catégories sémantiques avec un minimum d’entraînement a donné naissance au n-shot learning, un sous-ensemble du machine learning qui comprend également le few-shot learning (FSL) et le one-shot learning. L’apprentissage « few-shot » fait généralement appel à des méthodes d’apprentissage par transfert et de méta-apprentissage pour entraîner les modèles à reconnaître rapidement de nouvelles classes avec seulement quelques exemples d’entraînement étiquetés (ou, dans le cas d’un apprentissage one-shot, avec un seul exemple étiqueté).

Le zero-shot learning (ZSL), comme toutes les méthodes n-shot learning, ne se rapporte pas à un algorithme spécifique ou à une architecture de réseaux neuronaux, mais à la nature même du problème d’apprentissage : dans le ZSL, le modèle n’est pas entraîné sur des exemples étiquetés de classes non vues sur lesquelles il est demandé d’effectuer des prédictions après l’entraînement.

Cette configuration du problème ne tient pas compte de la présence de cette classe (bien que non étiquetée) dans les données d’entraînement. Par exemple, certains grands modèles de langage (LLM) sont bien adaptés aux tâches ZSL, car ils sont pré-entraînés par apprentissage auto-supervisé sur un corpus massif de textes qui peuvent contenir des références accidentelles ou des connaissances sur des classes de données non vues. En l’absence d’exemples étiquetés sur lesquels s’appuyer, les méthodes ZSL reposent toutes sur l’utilisation de ces connaissances auxiliaires pour formuler des prédictions.

Compte tenu de sa polyvalence et de son large éventail de cas d’utilisation, le zero-shot learning est devenu un domaine de recherche de plus en plus important dans la science des données, en particulier dans les domaines de la vision par ordinateur et du traitement du langage naturel (NLP).

Apprentissage généralisé zero-shot (GSZL)

Dans un contexte ZSL conventionnel, le modèle est testé sur un ensemble de données contenant des échantillons de classes de données non vues. Bien qu’utile pour développer et valider des méthodologies zero-shot, il ne reflète pas les conditions réelles les plus courantes : l’apprentissage généralisé zero-shot (GSZL) se rapporte au problème spécifique d’apprentissage zero-shot dans lequel les points de données que le modèle. est chargé de classer peuvent appartenir soit à des classes non vues, soit à des classes vues, c’est-à-dire les classes que le modèle a déjà « apprises » à partir d’exemples étiquetés.

Le GSZL doit surmonter un défi supplémentaire : la tendance des classificateurs à biaiser les prédictions en faveur des classes qu’il a vues lors de l’entraînement par rapport aux classes non vues auxquelles il n’a pas encore été exposé. Par conséquent, le GSZL nécessite souvent des techniques supplémentaires pour atténuer ce biais.

Pourquoi la gouvernance de l’IA est un impératif stratégique pour la mise à l’échelle de l’IA d’entreprise

Découvrez les obstacles à l’adoption de l’IA, en particulier le manque de solutions de gouvernance de l’IA et de gestion des risques.

Contenu connexe

Obtenir le guide sur les modèles de fondation

Comment fonctionne l’apprentissage zero-shot ?

En l’absence d’exemples étiquetés des catégories sur lesquelles le modèle est entraîné, les problèmes zero-shot learning s’appuient sur des informations auxiliaires, soit des descriptions textuelles, des attributs, des représentations intégrées ou d’autres informations sémantiques pertinentes pour la tâche à accomplir.

Plutôt que de modéliser directement les frontières de décision entre les classes, les techniques d’apprentissage zero-shot produisent généralement un vecteur de probabilité représentant la probabilité qu’une entrée donnée appartienne à certaines classes. Les méthodes GSZL peuvent ajouter un discriminateur préliminaire qui détermine d’abord si l’échantillon appartient à une classe déjà vue ou à une nouvelle classe, puis procède en conséquence.

Comprendre les étiquettes

Dans l’apprentissage supervisé, ainsi que dans l’apprentissage few-shot (FSL), le modèle apprend à reconnaître différentes classes en observant directement un ou plusieurs exemples étiquetés de chaque classe. Sans ces annotations explicites pour les guider, l’apprentissage zero-shot nécessite une compréhension plus fondamentale de la signification de l’étiquette. 

Par exemple, imaginez qu’un enfant veuille apprendre à quoi ressemble un oiseau. Dans un processus qui s’apparente à un apprentissage supervisé ou few-shot, l’enfant apprend en regardant des images portant la mention « oiseau » dans un livre d’images d’animaux. À l’avenir, il reconnaîtra un oiseau parce qu’il ressemble aux images qu’il a déjà vues. Mais dans un scénario ZSL, aucun exemple étiqueté de ce type n’est disponible. À la place, l’enfant pourrait lire une entrée d’encyclopédie sur les oiseaux et apprendre que ce sont des animaux de petite ou moyenne taille avec des plumes, un bec et des ailes qui peuvent voler dans les airs. Il pourra alors reconnaître un oiseau dans le monde réel, même s’il n’en a jamais vu auparavant, car il a appris le concept d’oiseau.

Comme mentionné précédemment, les LLM ont démontré un potentiel naturel pour le ZSL, dérivé de leur capacité à comprendre fondamentalement le sens des mots utilisés pour nommer les classes de données.

Apprentissage par transfert

Pour minimiser le temps et les ressources nécessaires à l’entraînement, ainsi que la quantité d’informations auxiliaires nécessaires à l’identification des classes non vues, le ZSL exploite souvent l’apprentissage par transfert, c’est-à-dire la réutilisation d’un modèle entraîné pour une nouvelle tâche, au lieu d’entraîner des modèles à partir de zéro. 

L’apprentissage par transfert est beaucoup utilisé dans les méthodes ZSL qui représentent des classes et des échantillons sous forme de représentations vectorielles sémantiques. Par exemple, un modèle effectuant une classification de texte zero-shot peut utiliser un modèle basé sur un transformateur comme BERT, déjà pré-entraîné sur un corpus massif de données linguistiques, pour convertir les mots en représentations vectorielles. De même, un modèle de classification d’images zero-shot peut réutiliser un réseau neuronal convolutif (CNN) pré-entraîné comme un ResNet ou un U-Net, car il aura déjà appris les poids de filtre permettant d’identifier les caractéristiques d’images importantes qui pourraient éclairer la classification.

L’apprentissage par transfert est particulièrement important pour le GSZL, dans lequel la connaissance du modèle des classes vues peut être utilisée comme information auxiliaire sur les classes non vues.Par exemple, imaginez qu’un modèle de détection d’objets a déjà appris à reconnaître les grizzlis. Au lieu de l’entraîner à reconnaître également les ours polaires en lui fournissant des exemples étiquetés d’ours polaires, il peut être entraîné à comprendre que les ours polaires ressemblent à des grizzlis à fourrure blanche.

Ce processus de transfert des connaissances acquises vers de nouvelles tâches et différentes classes est également appelé adaptation de domaine.

Méthodes basées sur les attributs

Les méthodes d’apprentissage zero-shot basées sur les attributs utilisent une logique similaire à celle de l’apprentissage supervisé conventionnel. Plutôt que d’entraîner directement un classificateur sur des exemples étiquetés de chaque classe de données, les classificateurs sont entraînés sur des caractéristiques étiquetées de certaines classes de données, comme la couleur, la forme ou d’autres caractéristiques clés.

Bien que les classes cibles ne soient pas directement visibles pendant l’entraînement, l’étiquette d’une classe non vue peut être déduite si ses attributs ressemblent à des classes d’attributs présentes dans les données d’entraînement.

Une fois que le classificateur a appris toutes les caractéristiques pertinentes, il peut utiliser les descriptions sémantiques des différentes classes. Cette approche est particulièrement utile lorsque les exemples étiquetés d’une classe cible ne sont pas disponibles, mais que les exemples étiquetés de ses caractéristiques sont relativement abondants. Par exemple, un modèle peut apprendre les « rayures » à partir d’images de tigres et de zèbres ; il peut apprendre le « jaune » à partir d’images de canaris et un « insecte volant » à partir d’images de mouches. Le modèle peut désormais effectuer une classification zero-shot des abeilles, malgré l’absence d’images d’abeilles dans l’ensemble d’apprentissage, car il peut les comprendre comme une combinaison de caractéristiques apprises : « insectes volants jaunes à rayures ».

Bien que polyvalentes et utiles dans de bonnes circonstances, les méthodes ZSL basées sur des attributs présentent des inconvénients importants :

  • Elles reposent sur l’hypothèse principale selon laquelle chaque classe peut être décrite par un seul vecteur d’attributs, ce qui n’est pas toujours le cas. Dans leurs travaux universitaires, Utkarsh Mall, Bharath Hariharan et Kavita Bala citent les exemples du chardonneret jaune (dont la couleur et les motifs du plumage varient en fonction du sexe, de l’âge et de l’état reproducteur) et des courts de badminton en plein air, qui varient considérablement en termes de couleur, de surface et de présence (ou d’absence) de lignes formelles.2
  • L’annotation d’exemples d’attributs individuels peut être aussi coûteuse et prendre autant de temps que l’annotation d’exemples d’une classe donnée.
  • Les méthodes basées sur les attributs ne peuvent pas se généraliser aux classes dont les attributs sont inconnus ou ne sont pas présents dans les échantillons disponibles.
Méthodes basées sur les représentations vectorielles

De nombreuses méthodes ZSL représentent à la fois des classes et des échantillons comme des représentations vectorielles sémantiques, c’est-à-dire des représentations vectorielles qui permettent de refléter les caractéristiques ou la signification de différents points de données (et la relation entre eux). La classification est ensuite déterminée en mesurant la similarité entre la représentation vectorielle sémantique d’un échantillon donné et les représentations vectorielles des différentes classes dans lesquelles il pourrait être classé.

Une fois que les points de données ont été convertis en représentations vectorielles, la classification est déterminée en utilisant des principes similaires à ceux des algorithmes des  K plus proches voisins : certaines métriques de distance, comme la similarité cosinus, la distance euclidienne ou la distance de Wasserstein, permettent de mesurer la proximité de la représentation vectorielle des données d’entrée avec les représentations vectorielles pour chaque classe potentielle. Plus la représentation vectorielle de cet échantillon de données est proche (ou similaire) de la représentation vectorielle d’une classe donnée, plus elle est susceptible d’appartenir à cette classe.

Ces représentations vectorielles peuvent être générées de plusieurs façons. Exemple :

  • Les modèles et algorithmes pré-entraînés comme BERT, word2vec ou GloVe (Global Vectors) peuvent facilement générer des représentations vectorielles pour les mots (comme les noms des étiquettes de classe).

  • De même, les réseaux d’encodeurs des CNN pré-entraînés comme ResNet (ou les encodeurs d’images basés sur des transformateurs comme ViT) peuvent faire de même pour les images.

  • Les auto-encodeurs peuvent apprendre des représentations latentes, c’est-à-dire des encodages compressés de plus petite dimension qui isolent les variables les plus distinctives d’une entrée de données, d’échantillons ou de classes donnés.

  • Au lieu de l’apprentissage par transfert, diverses architectures de réseaux neuronaux peuvent être entraînées à partir de zéro sur des données d’apprentissage pertinentes, telles que des échantillons de classes de données pour lesquels des exemples étiquetés sont disponibles, afin de générer des représentations vectorielles efficaces.
     

Espace commun de représentations vectorielles
Comme les méthodes basées sur les représentations vectorielles traitent généralement des informations auxiliaires et des représentations dans l’espace vectoriel de différentes formes (ou modalités) de données, telles que les représentations vectorielles de mots qui décrivent une étiquette de classe et celles d’images de photographies qui pourraient appartenir à cette classe, elles nécessitent un moyen de faciliter la comparaison entre les représentations vectorielles de différents types de données.

Pour être comparées, les représentations vectorielles de types et de tailles différents doivent être normalisées et projetées dans un espace sémantique partagé de grande dimension, appelé espace commun de représentations vectorielles, où elles peuvent être comparées dans un environnement d’entités semblables. Dans l’abstrait, cela fonctionne de manière semblable au concept qui consiste à trouver le plus petit dénominateur commun pour comparer des fractions différentes. Un mappage corrélatif fort entre les différentes sources de représentations vectorielles est essentiel aux performances de généralisation d’un modèle.3

Certains modèles d’apprentissage zero-shot utilisent également l’apprentissage contrastif pour mieux aligner les représentations vectorielles sémantiques de différents modèles ou algorithmes : en utilisant des paires de représentations vectorielles sémantiques, l’apprentissage contrastif entraîne les modèles à minimiser la distance entre les paires « positives » (comme la représentation vectorielle d’une image d’un chien et celle du mot « chien ») et à maximiser la distance entre les paires « négatives » (qui ne correspondent pas).
 

Entraînement conjoint de bout en bout
Un moyen efficace de garantir l’alignement entre les représentations vectorielles de différents modèles est d’entraîner conjointement ces modèles côte à côte. Par exemple, le modèle CLIP (Contrastive Language-Image Pre-training) d’OpenAI a été entraîné sur un énorme ensemble de données non étiquetées de plus de 400 millions de paires image-légende provenant d’Internet.4

Ces paires ont permis d’entraîner conjointement un encodeur d’image et un encodeur de texte à partir de zéro, en utilisant la perte contrastive pour maximiser la similarité cosinus entre les représentations vectorielles d’images et les représentations vectorielles de leurs sous-titres correspondants. Cela a permis d’acquérir une aptitude naturelle à la classification zero-shot : sans réglage précis, CLIP a démontré d’excellentes performances de classification sur 27 ensembles de données de classification d’images différents.

Méthodes génératives

L’IA générative offre une solution alternative au problème de l’apprentissage zero-shot : utiliser des informations auxiliaires pour générer des échantillons de données.

Les méthodes génératives peuvent exploiter les représentations sémantiques de classes non vues pour générer des échantillons qui, une fois étiquetés, peuvent être utilisés pour convertir le problème d’apprentissage en apprentissage supervisé standard. Bien que les échantillons non étiquetés (ou les représentations de classes vues étroitement liées) puissent faciliter la synthèse des échantillons, dans un contexte zero-shot, ce processus repose souvent principalement sur des descriptions sémantiques.

Les LLM peuvent réduire le travail nécessaire pour produire des descriptions de haute qualité : dans le document de publication de son modèle de génération de texte vers image DALL-E 3, OpenAI a noté que les légendes synthétiques amélioraient même les performances du modèle par rapport aux légendes de vérité terrain.5
 

Auto-encodeurs variationnels
Les auto-encodeurs variationnels (VAE) sont des modèles génératifs auto-supervisés qui apprennent des représentations latentes des données d’entraînement sous la forme d’une distribution paramétrée de variables latentes. En d’autres termes, ils apprennent à coder une classe de données non pas comme une représentation vectorielle sémantique statique, mais comme une distribution de probabilité dans un espace latent. Le décodeur peut ensuite être utilisé pour générer un échantillon aléatoire à partir de cet espace latent. Les VAE conditionnels (CVAE) peuvent contraindre les propriétés des échantillons synthétisés en maximisant la probabilité des variables choisies.
 

Réseaux antagonistes génératifs (GANS)
Les GAN sont constitués de deux réseaux neuronaux, entraînés conjointement dans un jeu antagoniste à somme nulle : un générateur qui utilise des attributs sémantiques et un bruit gaussien pour synthétiser les échantillons et un discriminateur qui détermine si les échantillons sont réels ou « faux » (c’est-à-dire synthétisés par le générateur). Le retour d’information du discriminateur est utilisé pour entraîner le générateur jusqu’à ce que le discriminateur ne puisse plus faire la distinction entre les vrais et les faux échantillons. Depuis le premier article consacré au GAN en 2014, un certain nombre de modifications ont été apportées pour affiner et stabiliser ce processus.
 

VAEGAN
Les VAE et les GAN présentent tous deux des inconvénients :

  • Les VAE sont stables, mais ont tendance à générer des images floues en raison de la nature de la façon dont les échantillons sont reconstruits à partir de l’espace latent.

  • Les GAN apprennent à générer des images de haute qualité, mais sont sujets à la déstabilisation car ils doivent faire converger deux processus d’entraînement distincts.

Bien qu’un certain nombre de modifications aient été développées pour affiner et stabiliser les deux processus, la combinaison des deux architectures de modèles a donné des résultats prometteurs dans un contexte zero-shot.6
 

Grands modèles de langage (LLM)
Les LLM peuvent également être utilisés pour synthétiser des échantillons étiquetés : par exemple, en utilisant un modèle autorégressif comme Llama 2 pour générer des échantillons permettant d’entraîner un modèle de langage bidirectionnel comme Sentence-BERT pour des tâches de classification de texte.

Solutions connexes
IBM watsonx.ai

Entraînez, validez, ajustez et déployez en toute facilité des capacités d’IA générative et de machine learning ainsi que des modèles de fondation, et créez des applications d’IA beaucoup plus rapidement, avec seulement une fraction des données disponibles.

Découvrir watsonx.ai

Services de conseil en IA

Repensez votre façon d’exploiter l’IA : pour votre sérénité, notre équipe internationale diverse de plus de 20 000 experts en IA vous accompagnera dans la création et la mise à l’échelle de vos projets d’IA et d’automatisation. Alliant rapidité, éthique et fiabilité, vous vous appuierez sur notre technologie IBM watsonx et sur un écosystème de partenaires ouvert, pour assurer la livraison du modèle d’IA de votre choix, quel que soit le cloud utilisé.

Découvrez les services de conseil en IA proposés par IBM

IBM watsonx.data

Faites évoluer l’analyse et l’IA avec toutes vos données, où qu’elles se trouvent, avec des formats ouverts pour y accéder depuis un point d’entrée unique et une interface conversationnelle générative basée sur l’IA pour trouver, augmenter et visualiser facilement les données et exposer de nouvelles informations sur les données.

 

Découvrir IBM watsonx.data
Ressources sur l’apprentissage zero-shot Exemples de prompts de modèle de fondation pour les tâches courantes

Il n’y a pas une seule façon correcte d’animer les modèles de fondation. Mais des modèles fiables ont été trouvés dans le monde universitaire et le secteur. Utilisez les exemples de ce tutoriel pour développer vos compétences et votre intuition en matière de prompt engineering, y compris pour les tâches zero-shot, en pratiquant l’expérimentation.

Qu'est-ce que l'apprentissage auto-supervisé ?

L’apprentissage auto-supervisé est utilisé dans l’entraînement d’un large éventail d’architectures de deep learning sophistiquées pour une variété de tâches, des grands modèles de langage (LLM) basés sur des transformateurs comme BERT et GPT aux modèles de synthèse d’image, tels les auto-encodeurs variationnels (VAE) et les réseaux antagonistes génératifs (GAN), en passant par les modèles de vision par ordinateur comme SimCLR et Momentum Contrast (MoCo).

L’entraînement multitâche assisté permet la généralisation des tâches zero-shot

Les LLM démontrent une généralisation zero-shot raisonnable sur un ensemble varié de tâches. Certains ont émis l’hypothèse qu’il s’agissait d’une conséquence de l’apprentissage multitâche implicite au cours de l’entraînement. La généralisation zero-shot peut-elle être directement induite par l’apprentissage multitâche explicite ? Nous testons cette question à grande échelle.

Passez à l’étape suivante

Entraînez, validez, réglez et déployez une IA générative, des modèles de fondation et des capacités de machine learning avec IBM watsonx.ai, un studio professionnel de nouvelle génération pour les générateurs d’IA. Créez des applications d’IA en peu de temps et avec moins de données.

Découvrir watsonx.ai Réserver une démo live
Notes de bas de page

Tous les liens sont externes à ibm.com
1 « Recognition-by-components: A theory of human image understanding », Psychological Review vol. 94 (pp. 115–147), 1987.
2 « Zero-shot Learning Using Multimodal Descriptions », Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR) Workshops, 2022.
3 « Data-Efficient Language-Supervised Zero-Shot Learning with Self-Distillation », arXiv, 18 avril 2021.
4 « CLIP: Connecting text and images », OpenAI, 5 janvier 2021.
5 «Improving Image Generation with Better Captions », OpenAI, 2023.
6 « Zero-VAE-GAN: Generating Unseen Features for Generalized and Transductive Zero-Shot Learning », PubMed, 13 janvier 2023.