← AI Terminology

Data Augmentation

Data augmentation is the practice of creating additional training examples by applying label-preserving transformations to existing data — expanding dataset size and diversity without collecting new labelled examples.

It is one of the most effective regularisation strategies in both computer vision and NLP.
Why It Matters in AI
Labelled training data is expensive and scarce. Augmentation multiplies its value: a flipped image of a cat is still a cat; a paraphrased sentence with the same meaning still has the same label. Models trained with augmentation generalise better because they see the same underlying concept presented in many variations. Augmentation is also the signal source for self-supervised contrastive learning methods (SimCLR, DINO).
Key Points
Aspect Description
NLP Synonym replacement, back-translation, paraphrase, random deletion/swap, EDA
Audio Time-stretch, pitch-shift, add noise, SpecAugment (mask frequency/time bins)
Vision Flip, rotate, crop, colour jitter, MixUp, CutMix, RandAugment, Gaussian noise
Tabular SMOTE (synthetic minority oversampling for imbalanced classes), Gaussian noise on features
AutoAugment Learns the optimal augmentation policy for a given dataset via reinforcement search
Self-supervised Augmentation creates positive pairs in SimCLR, BYOL, DINO — the learning signal itself
Simple Analogy
Photographing a product once then using photo editing to show it from 20 different angles, in different lighting, at different sizes — all still correctly labelled as the same product. Data augmentation does this systematically during training so the model learns the concept, not the exact image.
Common Usage Examples
  • transforms.RandomHorizontalFlip(), transforms.ColorJitter(0.4, 0.4, 0.4) in PyTorch
  • SpecAugment for speech: randomly mask frequency and time bands in the mel-spectrogram
  • NLP back-translation: translate text to French, then back to English — creates paraphrase pairs
  • MixUp: x_mix = λ*x1 + (1-λ)*x2; y_mix = λ*y1 + (1-λ)*y2 — blend two examples and labels
  • Albumentations: A.Compose([A.RandomRotate90(), A.HorizontalFlip(), A.Normalize()]) — fast CV augmentation
Summary
In short: Data augmentation creates diverse training examples from existing data through label-preserving transformations — one of the cheapest and most effective ways to improve model generalisation.