Retour au Blog
Computer Vision 1 octobre 2024 8 min de lecture

Stratégies d'augmentation de données avec moins de 1000 exemples

Mixup, CutMix, AugMix, données synthétiques avec GANs — que faire quand votre dataset est minuscule.

Hiérarchie d'augmentation (du plus au moins impactant)

Niveau 1 : à toujours faire

  • Retournement horizontal/vertical aléatoire
  • Rotation aléatoire (±15°)
  • Crop et redimensionnement aléatoires
  • Color jitter (luminosité, contraste, saturation)

Niveau 2 : aide généralement

  • Mixup : mélanger deux images et leurs étiquettes
lam = np.random.beta(0.2, 0.2)
x_mix = lam * x1 + (1-lam) * x2
y_mix = lam * y1 + (1-lam) * y2
  • CutMix : coller un patch d'une image sur une autre

Niveau 3 : pour les très petits jeux de données (<200 exemples)

  • Transformations élastiques (pour les images médicales)
  • Distorsion en grille
  • Augmentation au moment du test (TTA) — assembler 8 versions augmentées à l'inférence

Niveau 4 : données synthétiques

  • Entraîner un GAN ou utiliser Stable Diffusion pour générer des échantillons supplémentaires
  • Fonctionne bien pour les classes rares spécifiques à un domaine
Data AugmentationSmall DatasetsMixupCutMixComputer Vision
O

Ossama Elhakki

Ingénieur IA & Systèmes ML — Maroc