Аугментация данных
Улучшите свои модели машинного обучения с помощью аугментации данных. Откройте для себя методы повышения точности, уменьшения переобучения и повышения устойчивости.
Расширение данных - это стратегическая техника в
машинном обучении (МЛ) используемый для
искусственного увеличения размера и разнообразия
обучающий набор данных без необходимости
сбора новых исходных данных. Применяя различные преобразования к существующим образцам данных, разработчики могут создавать модифицированные, но
реалистичные версии изображений, текста или аудио. Этот процесс необходим для уменьшения
оверфиттингараспространенной проблемы, когда модель запоминает обучающие примеры, а не учится обобщенным шаблонам.
В конечном итоге эффективное дополнение приводит к повышению
точности и гарантирует, что модель
устойчивость модели при работе с неизвестными данными в реальных условиях.
Основные техники и методы
В области
компьютерного зрения (КЗ)Дополнение включает в себя манипулирование входными изображениями для имитации различных условий. Эти преобразования помогают
модели стать инвариантной к изменениям ориентации, освещения и масштаба.
-
Геометрические преобразования: Они изменяют пространственное расположение изображения. Общие операции включают
произвольное вращение, горизонтальное переворачивание, кадрирование и масштабирование. Например, при использовании
геометрические преобразованияOpenCV
позволяет модели распознавать объект независимо от того, перевернут он или наклонен.
-
Фотометрические преобразования: Они корректируют значения пикселей для изменения внешнего вида без
изменения геометрии. Регулировка яркости, контрастности, насыщенности и добавление
гауссовский шум помогают модели справляться с
при изменяющихся условиях освещения.
-
Продвинутое смешивание: Современный
обнаружение объектов фреймворки
часто используют такие сложные техники, как Mosaic, MixUp и CutMix. Эти методы объединяют несколько изображений в один
обучающий образец, побуждая модель к изучению контекстных связей. Вы можете изучить, как их реализовать с помощью
на
ИнтеграцияUltralytics Albumentations.
Применение в реальном мире
Дополнение данных незаменимо в отраслях, где высококачественные данные дефицитны или их получение обходится дорого.
-
Медицинская визуализация: In
анализ медицинских изображенийЗаконы о конфиденциальности и редкость конкретных заболеваний ограничивают размер наборов данных. Дополнив рентгеновские снимки или снимки МРТ
вращением и упругими деформациями, исследователи могут обучить надежные модели для
обнаружения опухолейПри этом ИИ сможет выявлять аномалии независимо от положения пациента или калибровки машины.
-
Автономное вождение: Самоуправляемые автомобили должны ориентироваться в непредсказуемой обстановке. Собрать данные для
всех возможных погодных условий невозможно. Инженеры используют дополнения, чтобы смоделировать дождь, туман или слабое освещение
для имитации дождя, тумана или слабого освещения на кадрах, снятых в ясный день. Это позволяет подготовить
автономные автомобили к безопасному реагированию
в неблагоприятную погоду, значительно повышая стандарты безопасности, описанные такими организациями, как
NHTSA.
Реализация дополнения в Ultralytics YOLO
Сайт ultralytics Библиотека упрощает применение дополнений непосредственно в
обучение модели трубопровод. Вы можете настроить
гиперпараметры для управления интенсивностью и вероятностью преобразований.
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Train the model with custom data augmentation parameters
# These arguments modify the training data on-the-fly
model.train(
data="coco8.yaml",
epochs=5,
degrees=30.0, # Apply random rotations between -30 and +30 degrees
fliplr=0.5, # 50% probability of flipping images horizontally
mosaic=1.0, # Use Mosaic augmentation (combining 4 images)
mixup=0.1, # Apply MixUp augmentation with 10% probability
)
Различение смежных понятий
Важно отличать увеличение объема данных от аналогичных стратегий работы с данными:
-
В сравнении с синтетическими данными: При дополнении изменяются существующие реальные данные,
синтетические данные генерируется
полностью с нуля с помощью компьютерного моделирования или
генеративный искусственный интеллект. Дополнения добавляют разнообразие к тому, что у вас есть; синтетические данные создают то, чего у вас нет.
-
В сравнении с предварительной обработкой данных:
Предварительная обработка данных включает в себя
очистку и форматирование данных (например, изменение размера, нормализацию), чтобы сделать их пригодными для модели. Дополнение происходит
после предварительной обработки и направлено на расширение разнообразия набора данных, а не его формата.
-
против трансферного обучения:
Трансфертное обучение использует
знания из предварительно обученной модели (например, обученной на
ImageNet) для решения новой задачи. Хотя их часто используют вместе, трансферное обучение относится к весовым коэффициентам модели, в то время как расширение
относится к входным данным.
Для более глубокого погружения в современные библиотеки дополнений можно использовать
Документация Albumentations содержит обширный список
доступных преобразований, совместимых с PyTorch и YOLO11.