P

Data Augmentation : Définition et Exemples

La data augmentation est une technique qui consiste à enrichir artificiellement un jeu de données d'entraînement en créant des variations des données existantes, afin d'améliorer les performances et la robustesse des modèles d'intelligence artificielle.

Définition complète

La data augmentation (ou augmentation de données) est une stratégie fondamentale en machine learning qui permet de multiplier la taille et la diversité d'un jeu de données sans avoir à collecter de nouvelles données réelles. Elle repose sur l'application de transformations contrôlées aux données existantes pour générer de nouveaux exemples d'entraînement plausibles.

Dans le domaine de la vision par ordinateur, cela peut inclure des rotations, des recadrages, des inversions horizontales, des modifications de luminosité ou l'ajout de bruit à des images. En traitement du langage naturel (NLP), les techniques incluent la paraphrase, la substitution de synonymes, la traduction aller-retour (back-translation) ou encore la génération de texte synthétique à l'aide de grands modèles de langage.

L'objectif principal est de réduire le surapprentissage (overfitting) en exposant le modèle à une plus grande variété de situations pendant l'entraînement. Un modèle entraîné sur des données augmentées apprend à être plus robuste face aux variations qu'il rencontrera en production, ce qui améliore sa capacité de généralisation.

En prompt engineering, le concept de data augmentation s'applique indirectement : on peut utiliser un LLM pour générer des variations de prompts, créer des jeux de données synthétiques pour le fine-tuning, ou produire des exemples diversifiés pour le few-shot learning. Cette approche est particulièrement utile lorsque les données annotées sont rares ou coûteuses à obtenir.

Étymologie

Le terme vient de l'anglais « data » (données) et « augmentation » (du latin augmentatio, action d'augmenter). Il est apparu dans la littérature du deep learning au début des années 2010, notamment avec l'essor des réseaux de neurones convolutifs (CNN) appliqués à la classification d'images, où l'insuffisance de données étiquetées constituait un frein majeur.

Exemples concrets

Générer des données synthétiques pour entraîner un classifieur de texte

Tu es un expert en génération de données. À partir de cette phrase : "Le service client a été très réactif", génère 10 paraphrases variées qui conservent le même sentiment positif, en variant le vocabulaire, la structure et le registre de langue.

Créer des exemples diversifiés pour du few-shot learning

Je construis un système de classification d'emails. Voici un exemple d'email de réclamation : [exemple]. Génère 5 variations réalistes de réclamations clients avec des sujets différents (livraison, facturation, qualité produit, SAV, remboursement) tout en gardant un ton similaire.

Augmenter un dataset de questions-réponses pour un chatbot

Voici une FAQ avec 20 questions-réponses sur notre produit. Pour chaque question, génère 3 reformulations naturelles que de vrais utilisateurs pourraient poser, en incluant des formulations familières, des fautes courantes et des variations régionales du français.

Usage pratique

En prompt engineering, la data augmentation permet de générer rapidement des jeux de données synthétiques de qualité pour entraîner ou évaluer des modèles. Utilisez un LLM pour créer des paraphrases, des traductions ou des variations stylistiques de vos données existantes. C'est une technique particulièrement rentable pour les projets disposant de peu de données annotées, car elle réduit considérablement le coût et le temps de constitution d'un dataset.

Concepts liés

Fine-tuningFew-shot learningOverfittingTransfer learning

FAQ

Quelle est la différence entre data augmentation et données synthétiques ?
La data augmentation transforme des données existantes en appliquant des modifications (rotation, paraphrase, bruit), tandis que la génération de données synthétiques crée des exemples entièrement nouveaux à partir de zéro, souvent à l'aide de modèles génératifs. En pratique, les deux approches sont complémentaires et visent le même objectif : enrichir le jeu de données d'entraînement.
La data augmentation peut-elle dégrader les performances d'un modèle ?
Oui, si les transformations appliquées sont trop agressives ou non pertinentes, elles peuvent introduire du bruit ou des exemples irréalistes qui perturbent l'apprentissage. Par exemple, retourner verticalement une image de texte produit un exemple non naturel. Il est essentiel de choisir des augmentations cohérentes avec le domaine d'application et de valider leur impact sur un jeu de validation.
Comment utiliser un LLM comme ChatGPT ou Claude pour faire de la data augmentation ?
Vous pouvez demander au LLM de paraphraser des textes, de traduire puis retraduire des phrases, de générer des variations stylistiques ou de créer des exemples dans des contextes différents. L'astuce est de fournir des consignes précises sur le type de variation souhaité (registre de langue, longueur, domaine) et de toujours vérifier la qualité des données générées avant de les utiliser pour l'entraînement.

Voir aussi

Recevez de nouveaux prompts chaque semaine

Rejoignez notre newsletter.