three augmentation
**Three augmentation** is the **compact ViT training recipe that combines grayscale conversion, solarization, and Gaussian blur to reduce texture shortcut learning** - this trio became important in data efficient transformer training because it forces models to rely on shape and semantic structure rather than fragile color and local texture cues.
**What Is Three Augmentation?**
- **Definition**: A fixed augmentation bundle with three operations often used in DeiT style recipes.
- **Operation 1**: Random grayscale removes color dependency.
- **Operation 2**: Solarization inverts pixel intensities above threshold and disrupts shallow cues.
- **Operation 3**: Gaussian blur smooths high frequency details and limits texture memorization.
**Why Three Augmentation Matters**
- **Data Efficiency**: Helps ViT models train well on ImageNet scale data without giant private corpora.
- **Shape Bias**: Encourages focus on object geometry and global structure.
- **Regularization**: Increases variation and lowers overfitting risk.
- **Recipe Simplicity**: Easy to implement compared with complex policy search methods.
- **Compatibility**: Combines cleanly with label smoothing, mixup, and warmup schedules.
**Augmentation Effects**
**Grayscale**:
- Removes chromatic shortcuts.
- Improves robustness to color shifts.
**Solarization**:
- Introduces nonlinear intensity transformation.
- Prevents reliance on narrow contrast patterns.
**Gaussian Blur**:
- Reduces high frequency noise and minor texture dependencies.
- Promotes robust coarse feature extraction.
**How It Works**
**Step 1**: Randomly apply grayscale, solarization, and blur according to configured probabilities during data loading.
**Step 2**: Feed transformed images to ViT while monitoring validation accuracy to ensure augmentation intensity remains beneficial.
**Tools & Platforms**
- **torchvision and albumentations**: Provide direct operators for all three transforms.
- **timm augment configs**: Include DeiT style augmentation bundles.
- **Ablation scripts**: Useful for tuning transform probabilities by dataset.
Three augmentation is **a high value minimal recipe that strengthens ViT generalization by suppressing brittle texture shortcuts** - it delivers reliable gains with very little implementation complexity.