Усовершенствуй свои модели машинного обучения с помощью дополнения данных. Открой для себя методы повышения точности, уменьшения перебора и повышения надежности.
Увеличение данных - это техника, используемая в машинном обучении для искусственного увеличения размера обучающего набора данных путем создания модифицированных версий существующих данных. Этот процесс включает в себя применение различных преобразований к исходным данным, таких как поворот, переворот, масштабирование или обрезка изображений. Увеличивая разнообразие обучающих данных, увеличение данных помогает улучшить обобщающую способность моделей машинного обучения, делая их более надежными и менее склонными к переподгонке. Переподгонка происходит, когда модель слишком хорошо усваивает обучающие данные, включая их шумы и выбросы, что может привести к плохой работе на новых, неизвестных данных.
Увеличение данных дает несколько ключевых преимуществ. Во-первых, оно помогает уменьшить перебор, подвергая модель более широкому диапазону вариаций во время обучения. Это делает модель менее чувствительной к специфическим особенностям обучающих данных и более способной к обобщению на новые, невидимые данные. Во-вторых, это может повысить точность и производительность моделей, особенно если исходный набор данных мал или ему не хватает разнообразия. Создавая больше обучающих примеров, увеличение данных предоставляет модели больше возможностей для изучения закономерностей, лежащих в основе данных. Наконец, оно может повысить устойчивость модели, сделав ее более устойчивой к изменениям во входных данных, таким как вариации освещения, ориентации или фонового шума.
Для дополнения данных используется несколько распространенных техник, особенно в задачах компьютерного зрения:
В компьютерном зрении увеличение данных особенно полезно, потому что оно позволяет имитировать широкий спектр сценариев реального мира, с которыми может столкнуться модель. Например, при обнаружении объектов Ultralytics YOLO при первом упоминании YOLO на странице модель, обученная на дополненных изображениях, может научиться обнаруживать объекты независимо от их ориентации, размера и условий освещения. Это очень важно для таких приложений, как автономные транспортные средства, где модель должна надежно работать в различных и непредсказуемых условиях. Например, применяя различные преобразования, такие как поворот, масштабирование и добавление шума к изображениям пешеходов и автомобилей, можно обучить систему автономного вождения точно обнаруживать эти объекты в различных реальных сценариях. Аналогично, при классификации изображений добавление к ним различных цветовых коррекций может помочь модели лучше обобщаться для различных условий освещения.
Хотя дополнение данных широко используется в компьютерном зрении, оно применимо и в других областях, таких как обработка естественного языка (NLP) и обработка звука. В NLP такие техники, как замена синонимов, обратный перевод и случайная вставка/удаление слов, могут дополнить текстовые данные. В обработке аудио добавление фонового шума, изменение высоты тона или растягивание звука во времени позволяет создать разнообразные обучающие примеры.
Важно отличать увеличение данных от других родственных техник:
Несколько инструментов и библиотек поддерживают увеличение данных. На сайте Python такие библиотеки, как OpenCV и TensorFlow предоставляют широкий набор функций для преобразования изображений. Кроме того, специализированные библиотеки вроде Albumentations предлагают высокооптимизированные и разнообразные конвейеры аугментации. Ultralytics HUB также предоставляет инструменты для аугментации данных, облегчая интеграцию этих техник в процесс обучения модели. Изучи такие техники дополнения данных, как MixUp, Mosaic и Random Perspective, чтобы улучшить процесс обучения моделей.