Что такое Аугментация данных
Искусственное увеличение обучающей выборки
Аугментация данных
Аугментация данных — техника искусственного увеличения объёма обучающей выборки путём создания модифицированных копий существующих данных.
Зачем нужна аугментация
- Увеличение выборки — когда данных недостаточно для обучения
- Борьба с переобучением — модель учится на разнообразных вариациях
- Повышение устойчивости — модель лучше обобщает на новых данных
- Снижение затрат — дешевле, чем сбор реальных данных
Методы для изображений
| Метод | Описание | |-------|----------| | Поворот | Вращение на произвольный угол | | Отражение | Горизонтальное/вертикальное зеркалирование | | Масштабирование | Увеличение/уменьшение размера | | Обрезка | Случайный crop части изображения | | Яркость/Контраст | Изменение цветовых характеристик | | Шум | Добавление Gaussian noise | | Cutout/Mixup | Современные техники |
Методы для текста
- Back-translation — перевод туда-обратно через другой язык
- Синонимы — замена слов на синонимы
- Вставка/удаление — случайные слова
- Перемешивание — изменение порядка слов
- Генерация — создание новых текстов с помощью LLM
Методы для аудио
- Изменение скорости воспроизведения
- Изменение тональности (pitch shifting)
- Добавление фонового шума
- Временные искажения
Инструменты
- imgaug — библиотека для изображений (Python)
- Albumentations — быстрая аугментация изображений
- nlpaug — аугментация текста
- audiomentations — аугментация аудио
- TensorFlow/PyTorch — встроенные transform-слои