Yolo Vision Shenzhen
Шэньчжэнь
Присоединиться сейчас
Глоссарий

Тестовые данные

Изучите важную роль тестовых данных в машинном обучении. Узнайте, как оценить производительность Ultralytics с помощью объективных наборов данных, чтобы обеспечить точность в реальных условиях.

Тестовые данные — это специфический поднабор из более крупного набора данных, который строго зарезервирован для оценки конечной эффективности модели машинного обучения (ML). В отличие от данных, используемых на ранних этапах обучения, тестовые данные остаются полностью «невидимыми» для алгоритма до самого конца цикла разработки. Эта изоляция имеет решающее значение, поскольку она обеспечивает объективную оценку того, насколько хорошо модель компьютерного зрения (CV) или другая система ИИ будет обобщать новые, реальные входные данные. Моделируя производственную среду, тестовые данные помогают разработчикам убедиться, что их модель действительно изучила основные паттерны, а не просто запомнила учебные примеры.

Роль тестовых данных в жизненном цикле машинного обучения

В стандартном рабочем процессе машинного обучения данные обычно делятся на три отдельные категории, каждая из которых служит уникальной цели. Понимание различия между этими разделами жизненно важно для построения надежных систем искусственного интеллекта (ИИ).

  • Данные для обучения: это самая большая часть набора данных, используемая для обучения модели. Алгоритм итеративно корректирует свои внутренние параметры, или веса, чтобы минимизировать ошибки в этом конкретном наборе примеров.
  • Данные валидации: этот поднабор часто используется в процессе обучения для настройки гиперпараметров и принятия решений по архитектуре. Он служит промежуточной проверкой для предотвращения переобучения, когда модель хорошо работает на обучающих данных, но не справляется с новыми данными.
  • Тестовые данные: это заключительный «экзамен» для модели. Они никогда не используются для обновления весов или настройки параметров. Оценка тестовых данных дает окончательные показатели производительности, такие как точность, повторяемость и средняя средняя точность (mAP), которые заинтересованные стороны используют для принятия решения о готовности модели к развертыванию.

Правильное управление этими разделами часто облегчается с помощью таких инструментов, как Ultralytics , которая может автоматически организовывать загруженные наборы данных по этим основным категориям, чтобы обеспечить строгую оценку модели.

Важность объективной оценки

Основная ценность тестовых данных заключается в их способности вы detect ть проблемы смещения и дисперсии набора данных. Если модель достигает 99% точности на обучающих данных, но только 60% на тестовых данных, это указывает на высокую дисперсию (переобучение). И наоборот, плохая производительность на обоих наборах данных указывает на недообучение.

Использование специально предназначенного набора тестов соответствует научным принципам воспроизводимости и объективности. Без идеального набора тестов разработчики рискуют «обучать тесту», фактически передавая информацию из этапа оценки обратно в этап обучения — явление, известное как утечка данных. Это приводит к чрезмерно оптимистичным оценкам производительности, которые рушатся, когда модель сталкивается с реальными данными.

Применение в реальном мире

Тестовые данные необходимы во всех отраслях, использующих ИИ, для обеспечения безопасности и надежности перед вводом систем в эксплуатацию.

  • Автономное вождение: при разработке автономных транспортных средств обучающие данные могут состоять из миллионов миль, пройденных по шоссе в ясную погоду. Однако тестовые данные должны включать редкие и сложные сценарии, такие как сильный снегопад, внезапные препятствия или запутанные дорожные знаки, которые автомобиль никогда явно не «видел» во время обучения. Это гарантирует, что система обнаружения объектов сможет безопасно реагировать в непредсказуемых условиях.
  • Диагностика в здравоохранении: при построении модели для обнаружения опухолей в медицинской визуализации набор данных для обучения может быть взят из базы данных конкретной больницы. Чтобы убедиться в надежности и безопасности модели для общего использования, тестовые данные в идеале должны включать сканы из разных больниц, сделанные на разных аппаратах и представляющие разнообразную демографическую группу пациентов. Такая внешняя валидация подтверждает, что ИИ не имеет предвзятости по отношению к конкретному типу оборудования или группе населения.

Оценка производительности с помощью кода

Использование ultralytics пакета, вы можете легко оценить производительность модели на удержанном наборе данных. Хотя the val Режим часто используется для валидации во время обучения, но его также можно настроить для запуска на определенном тестовом наборе, определенном в вашем конфигурация набора данных YAML.

Вот как оценить предварительно обученную модель YOLO26, чтобы получить такие метрики, как mAP50:

from ultralytics import YOLO

# Load a pre-trained YOLO26 model
model = YOLO("yolo26n.pt")

# Evaluate the model's performance on the validation set
# (Note: In a strict testing workflow, you would point 'data'
# to a YAML that defines a specific 'test' split and use split='test')
metrics = model.val(data="coco8.yaml")

# Print a specific metric, e.g., mAP at 50-95% IoU
print(f"Mean Average Precision (mAP50-95): {metrics.box.map}")

Этот процесс генерирует комплексные метрики, позволяющие разработчикам объективно сравнивать различные архитектуры, такие как YOLO26 и YOLO11, и гарантировать, что выбранное решение соответствует заданным целям проекта. Тщательное тестирование является последним этапом контроля, обеспечивающим соблюдение высоких стандартов безопасности ИИ.

Присоединяйтесь к сообществу Ultralytics

Присоединяйтесь к будущему ИИ. Общайтесь, сотрудничайте и развивайтесь вместе с мировыми новаторами

Присоединиться сейчас