← AI Terminology
Robustness
Robustness in AI refers to a model's ability to maintain reliable performance under distribution shifts, adversarial perturbations, noisy inputs, and unexpected real-world conditions — not just on the clean, i.i.d. test set it was evaluated on during development.
A robust model performs well even when the world doesn't look exactly like its training data.
A robust model performs well even when the world doesn't look exactly like its training data.
Why It Matters in AI
Models evaluated on clean test sets may fail catastrophically in production: autonomous vehicles trained on sunny roads fail in rain; NLP models fail on misspellings; image classifiers change their prediction with barely visible pixel perturbations (adversarial examples). The gap between benchmark performance and real-world performance is largely a robustness gap. Building robust AI is critical for safety-critical applications — medical, autonomous, financial — where unexpected inputs are guaranteed to occur.
Key Points
| Aspect | Description |
|---|---|
| Techniques | Adversarial training, data augmentation, ensemble methods, distributionally robust optimisation |
| OOD robustness | Out-of-distribution detection + graceful degradation when inputs are outside training distribution |
| Distribution shift | Model trained on source domain (hospital A) deployed on different domain (hospital B) — performance degrades |
| Natural robustness | Performance on corrupted inputs (blur, noise, compression) — ImageNet-C benchmark |
| Certified robustness | Mathematical guarantee that model output doesn't change within a perturbation ball — using randomised smoothing |
| Adversarial robustness | Resistance to adversarial examples — imperceptible input perturbations that change predictions |
Simple Analogy
A car engine tested on a smooth track (training distribution) vs. deployed on city roads with potholes, rain, and traffic. A robust engine performs reliably in real conditions — not just on the test track. Robustness engineering builds AI that works in the real world, not just the evaluation lab.
Common Usage Examples
robustbench.eval.benchmark(model, dataset="imagenet_c")— RobustBench standardised robustness eval- Adversarial training:
pgd_attack = PGDAttack(model, eps=8/255); adv_imgs = pgd_attack(imgs, labels) - Augmentation:
albumentations.GaussianBlur(blur_limit=7)— train with blur to improve blur robustness - ImageNet-C: 75 corruptions × 5 severities — standard natural robustness benchmark
- Certified robustness:
smoothed_classifier = Smooth(model, sigma=0.25)— randomised smoothing
Summary
In short: Robustness is a model's ability to maintain performance under real-world conditions — distribution shifts, adversarial perturbations, and noisy inputs — the critical property that determines whether benchmark performance translates to production reliability.