Polydesk-logotype
Polydesk.ai — Header

One-Shot (One-Shot Learning)

Le one-shot learning est la capacité d’un modèle d’IA à reconnaître ou classifier un objet, une personne ou un concept à partir d’un seul exemple d’entraînement. En prompting, le one-shot consiste à fournir un unique exemple dans le prompt pour guider le modèle sur la tâche à réaliser.

One-Shot en bref
Catégorie
Machine Learning / Prompt Engineering
Principe
Apprendre ou exécuter une tâche à partir d’un seul exemple (1 shot = 1 exemple)
Famille
Zero-shot (0 ex.) → One-shot (1 ex.) → Few-shot (2-20 ex.)
Architecture clé
Réseaux siamois (Siamese Networks), Triplet Loss, FaceNet
Application emblématique
Reconnaissance faciale (vérifier une identité avec une seule photo de référence)
En LLM
Fournir 1 exemple dans le prompt pour calibrer le format ou le style de sortie

Qu’est-ce que le one-shot ?

Imaginez que vous êtes agent de contrôle aux frontières. Vous avez la photo du passeport d’un voyageur (un seul exemple) et vous devez déterminer si la personne devant vous est bien celle de la photo. Vous faites du one-shot learning : vous identifiez une personne à partir d’un unique échantillon de référence.

Le one-shot est le cas intermédiaire entre le zero-shot (aucun exemple) et le few-shot (plusieurs exemples). Il est particulièrement pertinent dans les situations où collecter plusieurs exemples est impossible ou impratique : une seule photo d’identité par personne, une seule signature de référence, un seul prototype d’un nouveau produit.

Comme pour le zero-shot et le few-shot, le terme recouvre deux concepts distincts : le one-shot learning en tant qu’architecture de ML, et le one-shot prompting en tant que technique pour les LLMs.

One-Shot Learning : l’architecture ML

Le problème fondamental

L’apprentissage supervisé classique échoue dans un contexte one-shot. Un CNN classique entraîné pour classifier des visages a besoin de centaines d’images de chaque personne pour fonctionner correctement. Si un nouvel employé rejoint l’entreprise, il faudrait recolleter des données et réentraîner tout le modèle. C’est évidemment impratique.

Le one-shot learning change le problème. Au lieu d’entraîner le modèle à classifier directement les entrées dans des catégories fixes, on l’entraîne à mesurer la similarité entre deux entrées. La question n’est plus « qui est cette personne ? » mais « ces deux images montrent-elles la même personne ? ». C’est un problème de vérification, pas de classification.

Les réseaux siamois : l’architecture fondatrice

Les réseaux siamois (Siamese Neural Networks) sont l’architecture emblématique du one-shot learning en vision par ordinateur. Introduits par Jane Bromley et al. en 1993 pour la vérification de signatures, puis popularisés par Koch et al. en 2015 pour la reconnaissance d’images, ils reposent sur un principe élégant.

L’architecture se compose de deux réseaux de neurones identiques (les « jumeaux ») qui partagent exactement les mêmes poids et paramètres. Chaque réseau prend une image en entrée et produit un vecteur de features (un embedding) en sortie. Les deux embeddings sont ensuite comparés via une mesure de distance (distance L1, distance euclidienne, ou similarité cosinus).

Le processus d’apprentissage fonctionne ainsi :

1. Entraînement : le réseau reçoit des paires d’images étiquetées « même classe » ou « classes différentes ». Il apprend à produire des embeddings proches pour les images similaires et éloignés pour les images différentes.

2. Inférence one-shot : pour reconnaître une nouvelle personne (jamais vue pendant l’entraînement), on fournit une seule image de référence. Le réseau calcule l’embedding de cette image et le compare avec l’embedding de l’image test. Si la distance est inférieure à un seuil, c’est la même personne.

L’avantage fondamental : pas besoin de réentraîner le modèle pour de nouvelles catégories. Vous ajoutez simplement une image de référence dans votre base de données. Le réseau siamois calcule les embeddings et effectue la comparaison.

Pourquoi « siamois » ? Le nom vient des « jumeaux siamois » : deux réseaux identiques, attachés l’un à l’autre, qui partagent les mêmes paramètres. Cette architecture garantit que si deux images très similaires passent par leurs réseaux respectifs, les embeddings de sortie seront proches dans l’espace de features. Des images très différentes produiront des embeddings éloignés.

Les fonctions de perte spécialisées

L’entraînement des réseaux siamois repose sur des fonctions de perte (loss functions) spécifiquement conçues pour apprendre des similarités :

Contrastive Loss : la perte contrastive pénalise les paires d’images similaires dont les embeddings sont éloignés, et les paires d’images différentes dont les embeddings sont trop proches. Elle force le réseau à créer un espace d’embedding où la distance reflète la similarité.

Triplet Loss : introduite par FaceNet (Google, 2015), la triplet loss travaille avec des triplets : une ancre (image de référence), un positif (même personne), et un négatif (personne différente). L’objectif est que la distance ancre-positif soit inférieure à la distance ancre-négatif, avec une marge de sécurité. C’est la fonction de perte qui a permis à FaceNet d’atteindre des performances proches du niveau humain en reconnaissance faciale.

Binary Cross-Entropy : les réseaux siamois originaux de Koch et al. utilisent une couche finale avec sigmoid qui produit un score de probabilité (0 à 1) indiquant si les deux images sont de la même classe.

Au-delà des réseaux siamois

D’autres architectures sont aussi utilisées pour le one-shot learning : les Matching Networks (qui utilisent l’attention pour comparer l’image test à tous les exemples de support), les Prototypical Networks (qui apprennent des prototypes de classe), et les réseaux augmentés en mémoire (Memory-Augmented Neural Networks). Ces architectures sont souvent regroupées sous le terme de meta-learning (apprendre à apprendre).

Omniglot : le benchmark historique du one-shot

Omniglot est le dataset de référence pour évaluer le one-shot learning en vision. Il contient 1 623 caractères manuscrits provenant de 50 alphabets différents (du latin au japonais en passant par des alphabets inventés), avec seulement 20 exemples par caractère. Le test type est la classification « N-way one-shot » : le modèle reçoit une image test et N images de référence (une par classe inconnue), et doit déterminer à quelle classe appartient l’image test. Les réseaux siamois de Koch et al. ont atteint 92 % de précision sur la classification 20-way one-shot, surpassant les approches antérieures.

La reconnaissance faciale : le cas d’usage emblématique

La reconnaissance faciale est l’application qui a rendu le one-shot learning célèbre. Les raisons sont évidentes : dans un système de contrôle d’accès, vous avez typiquement une seule photo d’identité par personne. Vous ne pouvez pas demander à chaque employé de poser 500 fois sous différents angles et éclairages.

Les systèmes de reconnaissance faciale modernes basés sur le one-shot suivent un pipeline standard :

1. Détection de visage : localiser le visage dans l’image (MTCNN, RetinaFace).

2. Alignement : normaliser la pose et la taille du visage.

3. Extraction d’embedding : passer le visage dans le réseau (FaceNet, ArcFace, DeepFace) pour obtenir un vecteur d’embedding compact (typiquement 128 ou 512 dimensions).

4. Comparaison : calculer la distance entre l’embedding du visage test et les embeddings de référence stockés. Si la distance est sous un seuil, c’est un match.

DeepFace (Facebook/Meta, 2014) a été l’un des premiers systèmes à atteindre des performances proches du niveau humain, en utilisant un réseau siamois pour la vérification faciale. FaceNet (Google, 2015) a perfectionné l’approche avec la triplet loss, produisant des embeddings facials de haute qualité qui restent influents aujourd’hui.

Les applications pratiques incluent le contrôle aux frontières (comparaison passeport/visage), les systèmes d’accès à des bâtiments (badge photo vs caméra), la surveillance (identification dans une foule), et le déverrouillage de smartphones (Face ID d’Apple).

One-Shot Prompting pour les LLMs

En prompt engineering, le one-shot prompting consiste à fournir un seul exemple résolu avant de poser la vraie question au LLM. C’est le cas intermédiaire entre le zero-shot (aucun exemple) et le few-shot (plusieurs exemples).

Extrais le nom du produit et le prix de chaque description. Description : « Le MacBook Pro M4 est disponible à partir de 1 999 €. » Résultat : {« produit »: « MacBook Pro M4 », « prix »: « 1 999 € »} Description : « La Galaxy Watch Ultra 2 coûte 699 € chez Samsung. » Résultat :

Avec un seul exemple, le modèle comprend le format JSON attendu, les champs à extraire, et le style de réponse. C’est souvent suffisant pour des tâches de transformation structurée.

Le one-shot prompting est utile quand le zero-shot ne produit pas le format de sortie souhaité, mais que vous ne voulez pas alourdir le prompt avec plusieurs exemples (pour des raisons de coût en tokens ou de latence). Un seul exemple bien choisi suffit souvent à calibrer le comportement du modèle.

Quand choisir le one-shot plutôt que le few-shot Le one-shot est optimal quand votre besoin principal est de montrer le format de sortie au modèle (JSON, tableau, style spécifique). Si la tâche est plus nuancée (classification avec des frontières subtiles, ton très spécifique), passez au few-shot avec 2-3 exemples couvrant les différents cas. Si même le few-shot ne suffit pas, envisagez le fine-tuning.

Applications concrètes du one-shot

Reconnaissance faciale et vérification d’identité. Contrôle aux frontières, déverrouillage de smartphones, accès aux bâtiments. Une seule photo de référence suffit pour vérifier l’identité d’une personne.

Vérification de signatures. L’application originale des réseaux siamois (Bromley, 1993). Comparer une signature avec un échantillon de référence pour détecter les contrefaçons.

Détection d’objets avec peu de données. En inspection industrielle, un seul prototype d’un nouveau produit peut suffire pour entraîner un système de détection de défauts via one-shot learning.

Vision par ordinateur embarquée. Drones et véhicules autonomes utilisent le one-shot pour reconnaître des objets spécifiques dans leur environnement à partir de très peu d’exemples de référence.

Clonage de voix. Les systèmes de synthèse vocale modernes peuvent reproduire une voix à partir de quelques secondes d’audio, une forme de one-shot/few-shot learning appliquée au domaine audio.

Reconnaissance de mots inter-langues. Le one-shot permet d’identifier des mots inconnus dans une langue de traduction à partir d’un seul exemple, en exploitant la structure linguistique apprise sur d’autres langues.

Comparaison détaillée : zero-shot, one-shot, few-shot

Le one-shot est souvent présenté comme un simple intermédiaire entre le zero-shot et le few-shot, mais il a ses propres forces et ses cas d’usage spécifiques.

Critère Zero-shot One-shot Few-shot
Exemples 0 1 2-20
Force principale Rapidité, pas de données nécessaires Calibration du format avec un coût minimal Couverture des cas limites et nuances
Faiblesse principale Format de sortie imprévisible Sensibilité à la qualité de l’unique exemple Coût en tokens, risque de biais
En ML classique Embeddings sémantiques (CLIP) Réseaux siamois, FaceNet Prototypical Networks, MAML
En prompting LLM Instruction directe 1 exemple + instruction 2-5 exemples + instruction
Cas d’usage idéal Tâches simples et bien connues Formatage, vérification d’identité Classification nuancée, style spécifique

En pratique pour les LLMs, la progression recommandée est : testez en zero-shot d’abord. Si le format de sortie n’est pas correct, ajoutez un exemple (one-shot). Si la qualité des réponses est insuffisante sur les cas complexes, ajoutez 2-4 exemples supplémentaires (few-shot). Si les performances plafonnent, envisagez le fine-tuning.

Limites et défis

Sensibilité à la qualité de l’exemple unique. Avec un seul exemple, il n’y a aucune marge d’erreur. Si cet exemple est atypique, bruité, ou mal représentatif, les performances se dégradent fortement. En few-shot, la diversité des exemples compense les imperfections individuelles.

Coût computationnel des réseaux siamois. Les réseaux siamois nécessitent deux passages forward (un par branche), doublant le coût de calcul par rapport à un réseau simple. Les exigences en mémoire sont aussi plus élevées.

Difficulté de généralisation extrême. Quand la nouvelle classe est radicalement différente de tout ce que le modèle a vu pendant l’entraînement, même un exemple ne suffit pas. Le one-shot suppose que les features apprises sur les classes d’entraînement sont transférables aux nouvelles classes.

En prompting : le one-shot sous-performe le few-shot sur les tâches complexes. Un seul exemple ne couvre pas les cas limites et les variations. Pour les tâches de classification avec des frontières subtiles, 2-3 exemples sont préférables.

Le one-shot en 2026

Le one-shot learning reste fondamental en 2026, mais le paysage a évolué :

Les modèles fondamentaux absorbent le one-shot. Des modèles comme CLIP et SAM 2 réalisent en zero-shot ce qui nécessitait autrefois du one-shot learning dédié. La ligne entre zero-shot et one-shot s’estompe quand les modèles fondamentaux sont suffisamment puissants.

Les embeddings faciaux sont commoditisés. Les systèmes de reconnaissance faciale one-shot sont matures et largement déployés. La compétition se joue maintenant sur la robustesse (conditions dégradées, masques, vieillissement) et l’éthique (biais, vie privée, régulation).

Le one-shot prompting reste un réflexe utile. Quand le zero-shot ne donne pas le bon format de sortie, ajouter un seul exemple est le premier recours avant de passer au few-shot. C’est une technique simple, peu coûteuse en tokens, et souvent suffisante.


Questions fréquentes sur le one-shot

Quelle est la différence entre one-shot learning et few-shot learning ?

La différence est le nombre d’exemples : le one-shot utilise exactement 1 exemple par nouvelle catégorie, le few-shot utilise entre 2 et 20 exemples. En pratique, les mêmes architectures (réseaux siamois, Prototypical Networks, meta-learning) fonctionnent pour les deux. En prompting LLM, le one-shot place 1 exemple dans le prompt, le few-shot en place plusieurs. Le one-shot est suffisant pour calibrer un format de sortie. Le few-shot est préférable quand la tâche nécessite de couvrir plusieurs cas de figure.

Comment fonctionne un réseau siamois ?

Un réseau siamois se compose de deux réseaux de neurones identiques (mêmes poids, mêmes paramètres) qui traitent chacun une image différente. Chaque réseau produit un vecteur d’embedding qui encode les features de l’image. La distance entre les deux vecteurs est ensuite calculée : si elle est faible, les images sont similaires (même personne, même objet). Le réseau est entraîné sur des paires d’images étiquetées « même » ou « différent », apprenant à produire des embeddings discriminants.

La reconnaissance faciale utilise-t-elle toujours le one-shot learning ?

Oui, la plupart des systèmes de reconnaissance faciale modernes sont fondamentalement des systèmes one-shot. Vous avez une seule photo de référence par personne (passeport, badge, selfie d’inscription), et le système doit vérifier l’identité à partir de cette unique référence. Les architectures ont évolué depuis les réseaux siamois originaux (DeepFace, FaceNet, ArcFace), mais le principe one-shot reste le même : calculer un embedding facial, le stocker, et le comparer lors de la vérification.

Quand utiliser le one-shot prompting plutôt que le zero-shot ?

Utilisez le one-shot prompting quand le zero-shot ne donne pas le format de sortie que vous attendez. Un seul exemple montre au LLM la structure exacte (JSON, tableau, liste), le niveau de détail, et le style de la réponse. C’est particulièrement efficace pour les tâches d’extraction structurée (texte libre → JSON), de transformation de format, et de calibration du ton. Si le modèle comprend déjà la tâche en zero-shot mais ne respecte pas votre format, un seul exemple résout souvent le problème.

Le one-shot est-il fiable pour des applications critiques ?

En reconnaissance faciale, les systèmes one-shot modernes (ArcFace, FaceNet) atteignent des précisions très élevées (>99 % sur les benchmarks standards). Mais la fiabilité dépend des conditions : éclairage, angle, vieillissement du sujet, port de masque ou lunettes. Pour les applications critiques (contrôle aux frontières, sécurité), on combine généralement le one-shot avec d’autres facteurs d’authentification. En prompting LLM, le one-shot est fiable pour les tâches simples de formatage, mais moins robuste que le few-shot pour les tâches complexes de classification ou de raisonnement.

Polydesk.ai — Footer