Умное управление наборами данных в компьютерном зрении с помощью Ultralytics Platform
Узнай, как использовать Ultralytics Platform для более эффективного управления наборами данных в твоих проектах. Легко отслеживай, сравнивай и улучшай свои датасеты.

Компьютерное зрение, или computer vision, прошло долгий путь с момента своего зарождения, превратившись из экспериментальных исследований в ключевую технологию, лежащую в основе реальных приложений. Сегодня энтузиасты искусственного интеллекта могут создавать мощные модели для таких задач, как обнаружение объектов и сегментация экземпляров, используя доступные инструменты и фреймворки.
Однако по мере перехода этих приложений от экспериментов к продакшену управление датасетами остается критической и часто упускаемой из виду проблемой. По мере того как computer vision datasets увеличиваются в объеме и сложности, команды часто сталкиваются с трудностями при поддержании согласованности разметки, отслеживании изменений между версиями и обеспечении общего качества данных.
Даже передовые модели могут показывать низкие результаты в реальных условиях, если данные, на которых они обучаются, неполные, несбалансированные или плохо структурированы. Этот растущий разрыв между производительностью при разработке и надежностью в реальных условиях — причина, по которой необходим более структурированный подход к управлению наборами данных.
Еще одно частое ограничение заключается в том, что сбор данных, аннотирование и обучение нередко выполняются с помощью разрозненных инструментов. Фрагментированный рабочий процесс затрудняет эффективное управление наборами данных, увеличивает риск несоответствий и замедляет итерации.
Чтобы решить такие проблемы компьютерного зрения, как управление датасетами и фрагментированные рабочие процессы, мы недавно запустили Ultralytics Platform. Это комплексное рабочее пространство, объединяющее управление датасетами, разметку, обучение, развертывание и мониторинг в единый целостный рабочий процесс.
Связывая каждый этап жизненного цикла компьютерного зрения, становится проще отслеживать изменения в наборах данных, сравнивать производительность между версиями и постоянно уточнять данные для достижения лучших результатов.

Рис. 1. Пример просмотра изображений датасета в Ultralytics Platform (Source)
В этой статье мы подробно рассмотрим, как Ultralytics Platform помогает тебе отслеживать, сравнивать и улучшать наборы данных для создания более надежных моделей компьютерного зрения. Давай начнем!
Важность управления наборами данных в компьютерном зрении#
Производительность computer vision model тесно связана с данными, на которых она обучается. Точность модели, то есть частота правильных предсказаний, зависит не только от алгоритма, но и от того, насколько хорошо датасет отражает реальные условия.
Проще говоря, модель извлекает закономерности непосредственно из данных, поэтому любые пробелы, предвзятости или несоответствия в наборе данных могут повлиять на ее способность делать прогнозы. Иными словами, некачественные данные, неверные аннотации или ограниченный охват реальных вариаций в изображениях (таких как разные условия освещения, углы обзора объектов, фоны или уровни перекрытия) могут значительно снизить точность, даже если архитектура модели сама по себе сильна.
Это также применимо при дообучении модели, когда предобученная модель дотренировывается на новых или обновленных данных, чтобы лучше адаптироваться к конкретному сценарию использования или среде. Поскольку точность модели так сильно зависит от данных, правильное управление ими становится необходимым.
Управление наборами данных включает в себя организацию, разметку и постоянное обновление данных, чтобы они оставались точными и актуальными. Это облегчает повышение производительности со временем, особенно при переобучении или дообучении моделей на новых данных.
Как качество набора данных влияет на надежность в реальных условиях#
Варианты использования компьютерного зрения, такие как security monitoring systems, служат отличным примером того, почему правильное управление данными жизненно важно. Эти системы должны надежно работать в различных реальных условиях, включая разное освещение, углы камеры, плотность толпы и частичные перекрытия.
Если обучающие данные не охватывают эти вариации или им не хватает разнообразия в том, как объекты появляются в разных сценах и условиях, модели может быть трудно точно обнаруживать объекты. Например, модель, обученная преимущественно на хорошо освещенных и незахламленных сценах, может плохо работать при слабом освещении или в условиях большого скопления людей. В системах безопасности это может привести к пропуску событий или ложным тревогам.
Чтобы избежать этого, важно поддерживать наборы данных, которые не только чисты и точно размечены, но также сбалансированы и постоянно обновляются. Это означает поиск пробелов в данных, добавление новых примеров по мере изменения условий и обеспечение равномерного представительства разных классов и сред.
С более полным и структурированным набором данных модели лучше приспособлены к обработке реальной вариативности и способны выдавать более надежные прогнозы.
Ключевые аспекты управления наборами данных#
Итак, как на самом деле выглядит управление наборами данных? Оно включает организацию, разметку и ведение данных таким образом, чтобы их можно было эффективно использовать на протяжении всего процесса разработки модели.
Организация данных, например, включает структурирование набора данных и разбиение его на обучающую, валидационную и тестовую выборки. Обучающая выборка используется для обучения модели, валидационная — для мониторинга производительности и корректировок во время разработки, а тестовая — для оценки того, насколько хорошо финальная модель работает на абсолютно новых, не виденных ранее данных.
Тем временем разметка включает аннотирование изображений такими деталями, как метки классов, ограничивающие рамки (bounding boxes) или маски сегментации. Поскольку модель учится на этих аннотациях, точность и последовательность критически важны, чтобы помочь ей выучить значимые закономерности и делать надежные прогнозы.
В дополнение к этому, поддержка набора данных включает проверку и обновление данных с течением времени. Это может включать исправление ошибок аннотирования, удаление некачественных или дублирующихся данных и добавление новых примеров для покрытия отсутствующих случаев или меняющихся условий.
В более широком смысле управление наборами данных — это непрерывный процесс. По мере оценки моделей и сбора новых данных наборы данных должны обновляться, чтобы отражать реальные условия и крайние случаи. Отслеживание этих обновлений и сравнение разных версий помогает командам понять, что именно улучшает производительность и где необходимы дополнительные изменения.
Управление наборами данных с помощью Ultralytics Platform#
Ultralytics Platform предоставляет структурированный рабочий процесс для управления наборами данных в единой среде, охватывающий все этапы — от подготовки данных до их экспорта. Она спроектирована так, чтобы поддерживать как индивидуальных разработчиков, так и команды, упрощая последовательное управление наборами данных, работаешь ли ты самостоятельно или сотрудничаешь в рамках проектов.
Каждый этап разработан для упрощения организации, обработки и использования наборов данных на протяжении всего жизненного цикла разработки модели. Объединяя эти шаги в одном месте, платформа уменьшает фрагментацию и делает поддержание единообразия в рабочих процессах более понятным.
Далее давай пройдемся по основным этапам и посмотрим, как платформа поддерживает каждый из них.
Загрузка наборов данных в Ultralytics Platform#
Начало работы с наборами данных на платформе гибкое: существует несколько способов добавить или повторно использовать данные. Ты можешь загрузить свои собственные данные или начать быстрее, используя общедоступные наборы данных, доступные на платформе. Ты также можешь клонировать существующие наборы данных, которыми поделилось сообщество, и строить на их основе свои.
Функции сообщества на платформе позволяют легко исследовать и повторно использовать существующие наработки. Имея доступ к наборам данных, созданным другими пользователями (включая миллионы изображений и аннотаций), ты можешь быстро начать работу, не собирая и не размечая всё самостоятельно. Клонирование набора данных создает копию в твоем рабочем пространстве, позволяя модифицировать и расширять его, сохраняя оригинал.
Для загрузки платформа поддерживает отдельные изображения, видео и архивы данных (например, ZIP, TAR или GZ файлы). Она также поддерживает широко используемые форматы наборов данных, такие как YOLO и COCO, что позволяет легко импортировать существующие наборы данных и аннотации без дополнительного преобразования. Кроме того, ты можешь загрузить набор данных, используя NDJSON-файл, экспортированный с платформы, что делает повторное создание или использование наборов данных в разных проектах бесшовным.
После загрузки платформа обрабатывает данные через структурированный конвейер. Это включает проверку форматов файлов и размеров, изменение размера изображений при необходимости, синтаксический анализ аннотаций и генерацию статистики набора данных.
Например, видео преобразуются в кадры, чтобы их можно было использовать для обучения, а изображения оптимизируются и подготавливаются для более легкого просмотра и анализа. После обработки наборы данных готовы к аннотированию, анализу и обучению моделей на платформе.
Аннотирование данных на Ultralytics Platform#
После загрузки датасеты можно просматривать и размечать прямо на платформе. Она включает встроенные инструменты для image annotation для различных задач компьютерного зрения, таких как обнаружение объектов, сегментация экземпляров, оценка позы, поиск ориентированных ограничивающих прямоугольников (OBB) и классификация изображений.

Рис. 2. Использование Ultralytics Platform для разметки данных (Source)
Аннотации можно создавать вручную с помощью этих инструментов или ускорять процесс с помощью функций с поддержкой ИИ, таких как «умная» аннотация на базе SAM. С помощью SAM ты можешь генерировать маски, ограничивающие рамки или ориентированные рамки, взаимодействуя с изображением, что помогает ускорить процесс разметки, сохраняя при этом точность.
Анализ качества набора данных через Ultralytics Platform#
Помимо подготовки и аннотирования данных, понимание качества набора данных необходимо для создания надежных моделей компьютерного зрения. Без четкой видимости таких факторов, как распределение классов, качество аннотаций, разбиение набора данных и то, как данные представлены в различных условиях, бывает трудно выявить проблемы, влияющие на производительность модели.
Ultralytics Platform включает встроенные функции, помогающие более эффективно анализировать наборы данных. Эти аналитические данные доступны непосредственно в интерфейсе набора данных через вкладки, такие как «Изображения» (Images), «Классы» (Classes) и «Графики» (Charts).
На вкладке «Графики» (Charts) ты можешь просматривать статистику уровня набора данных, такую как распределение разбиения (обучающая, валидационная и тестовая выборки), частоту классов и тепловые карты аннотаций, которые показывают, где объекты появляются на изображениях.
Вкладка «Классы» (Classes) предоставляет разбивку количества аннотаций по классам, что облегчает обнаружение дисбаланса классов. В то же время вкладка «Изображения» (Images) показывает детали на уровне изображений, такие как размеры, количество аннотаций и распределение меток по отдельным изображениям.
Эти аналитические данные облегчают выявление таких проблем, как дисбаланс классов, пропущенные сценарии или неравномерное распределение данных. Например, ты можешь заметить, что некоторые классы имеют очень мало примеров или что большинство аннотаций сконцентрировано в определенных областях изображения.
Помимо анализа данных, платформа поддерживает курирование и дополнение наборов данных, что означает уточнение наборов данных путем исправления или удаления проблемных данных и создания вариаций существующих данных для улучшения производительности модели. Эти улучшения можно вносить непосредственно на платформе, обновляя аннотации, добавляя новые данные или переорганизуя разбиение набора данных на основе результатов анализа.
Экспорт наборов данных из Ultralytics Platform#
После того как датасет подготовлен и проверен, его можно экспортировать для использования в различных средах. Это дает тебе гибкость в использовании твоих computer vision data где угодно — будь то обучение моделей локально, в облаке или в других инструментах и рабочих процессах.
Ultralytics Platform поддерживает несколько форматов экспорта, включая YOLO, COCO и NDJSON, что облегчает интеграцию наборов данных в различные рабочие процессы обучения и инструменты.

Рис. 3. Экспорт датасета из Ultralytics Platform (Source)
Экспорт набора данных создает фиксированный снимок (снапшот) данных в определенный момент времени, включая изображения, аннотации и структуру. Это полезно, поскольку наборы данных часто меняются по мере добавления новых данных, обновления аннотаций или изменения разбиений. Экспортируя снимок, ты можешь сохранить точную версию набора данных, использованную для конкретного запуска обучения.
Это упрощает воспроизведение результатов позже, так как ты можешь снова обучить модель на той же настройке данных и сравнить производительность между разными версиями набора данных. Например, ты можешь оценить, действительно ли добавление новых изображений или исправление аннотаций улучшает точность модели, вместо того чтобы гадать, что изменилось.
Экспорт выполняется асинхронно, и как только он будет готов, наборы данных можно скачать и использовать в локальных, облачных или офлайн средах обучения.
Улучшение качества набора данных через итерации на Ultralytics Platform#
В рабочих процессах машинного обучения и глубокого обучения управление наборами данных продолжается даже после развертывания, поскольку реальные данные часто отличаются от данных, используемых во время обучения.
По мере того как модели сталкиваются с новыми входными данными, пробелы в наборе данных (такие как отсутствие условий вроде сред с низкой освещенностью, разных углов обзора камер, перекрытий или сценах с большим количеством объектов), а также ошибки аннотирования становятся более очевидными, что делает необходимым уточнение данных с течением времени.
Существует несколько способов улучшить набор данных. Ты можешь добавить новые изображения или видео, чтобы охватить отсутствующие условия, такие как условия низкой освещенности, разные углы обзора камер, перекрытия или сцены с большим количеством людей, помогая уменьшить «слепые зоны» в данных.
В то же время обеспечение точности и последовательности аннотаций, таких как правильно размеченные объекты и точные ограничивающие рамки или маски, помогает модели изучать более надежные закономерности.
Обычно это следует простому циклу: train the model, оценка результатов, выявление ошибок, улучшение датасета и повторное обучение. Каждый шаг помогает выявить такие проблемы, как неверная разметка, отсутствующие данные или недостаточно представленные случаи.
Допустим, ты работаешь над системой мониторинга полок в розничной торговле в реальном времени, используемой для обнаружения продуктов в магазинах. Ранние версии набора данных могут не включать определенные типы продуктов, условия освещения или плотную расстановку товара на полках. Во время оценки ты можешь заметить, что модель с трудом обнаруживает товары в этих ситуациях.
Чтобы повысить производительность, ты можешь собрать новые изображения, которые охватывают эти недостающие сценарии, и обновить аннотации там, где это необходимо. Со временем повторение этого процесса помогает модели стать более точной и надежной в реальных условиях.
Ultralytics Platform поддерживает этот рабочий процесс, связывая обновления набора данных с обучением и оценкой. Благодаря встроенному отслеживанию экспериментов и метрикам производительности, становится проще следить за прогрессом и постоянно улучшать наборы данных с течением времени.
Отслеживание изменений набора данных с использованием Ultralytics Platform#
Мы кратко обсудили, как наборы данных эволюционируют со временем в процессе разработки модели. По мере добавления новых данных, уточнения аннотаций и обновления классов, отслеживание этих изменений становится ключом к поддержанию качества данных и обеспечению стабильной производительности модели.
Вот некоторые ключевые функции Ultralytics Platform, которые поддерживают отслеживание наборов данных и контроль версий:
- Версионирование наборов данных: Ты можешь создавать фиксированные версии набора данных в виде NDJSON-снимков. Каждая версия фиксирует ключевые детали, такие как количество изображений, количество классов, количество аннотаций и размер набора данных в определенный момент времени. Эти версии сохраняются и могут быть загружены позже, что облегчает воспроизведение экспериментов и сравнение результатов между разными состояниями набора данных.
- Вкладка «Версии» (Versions): Все версии набора данных организованы на вкладке «Версии», где ты можешь просматривать историю версий, добавлять описания к изменениям и отслеживать, как набор данных меняется со временем.
- Связь с моделями: Вкладка «Модели» (Models) показывает все модели, обученные на наборе данных, включая метрики, такие как mAP, и детали обучения. Версии набора данных привязаны к запускам обучения, помогая тебе понять, как изменения в данных влияют на производительность модели.
- Вкладка «Ошибки» (Errors): Вкладка «Ошибки» выделяет файлы, которые не прошли обработку, вместе с деталями ошибок и предложениями. Это позволяет выявлять и исправлять проблемы, такие как поврежденные файлы или неподдерживаемые форматы, до начала обучения.
- Интерфейс набора данных (вкладки «Изображения» и «Классы»): Эти представления позволяют просматривать изображения, проверять аннотации, управлять метками классов и анализировать распределение классов. Функции фильтрации, сортировки и выявления неразмеченных изображений упрощают мониторинг качества набора данных со временем.
- Статистика и графики: Встроенные визуализации данных, такие как распределение разбиения, частота классов и тепловые карты аннотаций, помогают отслеживать изменения в распределении данных и выявлять дисбалансы по мере эволюции набора данных.

Рис. 4. Анализ распределения классов датасета на Ultralytics Platform (Source)
Подключение наборов данных к обучению и развертыванию внутри Ultralytics Platform#
Ultralytics Platform объединяет различные этапы разработки ИИ-моделей в единый конвейер. Это упрощает процесс перехода от необработанных данных к готовым к использованию приложениям ИИ для зрения.
Подготовленные и размеченные датасеты можно использовать для обучения моделей компьютерного зрения, таких как Ultralytics YOLO26, прямо на платформе. Во время обучения ты можешь следить за метриками производительности, отслеживать эксперименты и оценивать процесс обучения модели с помощью встроенных дашбордов.

Рис. 5. Просмотр метрик обучения модели на Ultralytics Platform (Source)
После обучения модели можно тестировать на новых изображениях прямо в браузере, чтобы оценивать прогнозы и определять области для улучшения перед развертыванием. Когда модель показывает хорошие результаты, ее можно развертывать в промышленную среду.
Платформа поддерживает экспорт моделей в несколько форматов или их развертывание через сервисы вывода (inference services) и выделенные конечные точки, позволяя им работать в разных средах.
После развертывания встроенные инструменты мониторинга помогают отслеживать производительность системы с течением времени, включая метрики, связанные с использованием и поведением модели. Это упрощает поддержку и улучшение ИИ-систем для зрения в реальных приложениях.
Лучшие практики управления наборами данных с помощью Ultralytics Platform#
Вот несколько ключевых факторов, о которых стоит помнить при управлении своими наборами данных с использованием Ultralytics Platform:
- Используй фильтры для поиска пробелов: Находи неразмеченные или недостаточно представленные данные с помощью инструментов фильтрации, делая завершение аннотаций и улучшение охвата более бесшовным.
- Исправляй ошибки на ранней стадии: Используй вкладку «Ошибки» (Errors) для контроля качества, чтобы выявлять неудавшиеся загрузки, поврежденные файлы или неподдерживаемые форматы до начала обучения.
- Постоянно обновляй наборы данных: Добавляй новые данные, исправляй аннотации и включай крайние случаи по мере их появления. Это помогает улучшить охват и гарантирует надежную работу моделей в реальных сценариях.
- Тщательно управляй разбиением наборов данных: Обеспечивай хороший баланс между обучающей, валидационной и тестовой выборками. Ты можешь переорганизовывать разбиения вручную или использовать автоматическое перераспределение при необходимости.
Чтобы узнать больше о Ultralytics Platform, ознакомься с официальной Ultralytics documentation.
Основные выводы#
По мере масштабирования проектов компьютерного зрения эффективное управление наборами данных становится столь же важным, как и разработка моделей. Структурированный подход к управлению наборами данных помогает улучшить качество данных, оптимизировать рабочие процессы и обеспечить более высокую производительность модели со временем.
Ultralytics Platform упрощает этот процесс, объединяя управление наборами данных, обучение и развертывание в единый рабочий процесс. Применяя структурированный подход к управлению наборами данных, команды могут уменьшить сложность, повысить эффективность и создавать более масштабируемые и надежные системы компьютерного зрения.
Присоединяйся к нашему растущему community и изучай наш GitHub repository в поисках ресурсов по ИИ. Чтобы создавать решения на базе компьютерного зрения уже сегодня, ознакомься с нашими licensing options. Узнай, как AI in agriculture трансформирует сельское хозяйство и как vision AI in healthcare формирует будущее, посетив страницы наших решений.






