Wprowadzenie
Data Augmentation to technika polegająca na automatycznym tworzeniu nowych, zmodyfikowanych wersji danych treningowych. Pozwala znacząco zwiększyć rozmiar i różnorodność zbioru danych bez zbierania nowych próbek.
Dlaczego augmentacja jest ważna?
- Zmniejsza ryzyko przeuczenia (overfitting)
- Poprawia generalizację modelu na nowe dane
- Pozwala trenować skuteczniejsze modele przy mniejszej ilości oryginalnych danych
- Jest szczególnie ważna w zadaniach z obrazami, tekstem i dźwiękiem
Najpopularniejsze techniki augmentacji obrazów
- Rotacja, odbicia lustrzane (flip)
- Skalowanie, przycinanie (crop), przesunięcie
- Zmiana jasności, kontrastu, nasycenia, barwy
- Dodawanie szumu (Gaussian Noise)
- Perspektywa, zniekształcenia geometryczne
- AugMix, MixUp, CutMix, RandAugment
Augmentacja tekstu
- Synonimy i zamiana słów (WordNet, BERT)
- Back-translation (tłumaczenie w obie strony)
- Random Insertion / Deletion / Swap
- EDA (Easy Data Augmentation)
Narzędzia i biblioteki
- Albumentations – najszybsza biblioteka do obrazów
- imgaug
- TensorFlow / Keras – wbudowane warstwy
- Torchvision i AugLy (Facebook)
- nlpaug – do tekstu