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

Перекрестная проверка (Кросс-валидация)

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

detect росс-валидация — это надежная процедура повторной выборки, используемая для оценки эффективности моделей машинного обучения (ML) на ограниченной выборке данных . В отличие от стандартного метода удержания, который разделяет данные на один набор для обучения и один набор для тестирования, кросс-валидация предполагает разделение набора данных на несколько подмножеств, чтобы каждая точка данных использовалась как для обучения, так и для валидации. Эта техника имеет решающее значение для оценки того, как результаты статистического анализа будут обобщаться на независимый набор данных, помогая обнаружить переобучение, когда модель может запоминать учебные примеры, а не изучать обобщаемые шаблоны.

Механизм K-красной перекрестной проверки

Наиболее широко используемым вариантом этой техники является K-кратная перекрестная валидация. В этом процессе весь набор данных случайным образом делится на k равных групп, или «складов». Процесс обучения затем повторяется k раз. В каждой итерации один склад выступает в качестве валидационных данных для тестирования модели, а остальные k-1 складов служат в качестве обучающих данных.

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

Реализация с помощью Ultralytics

Перекрестная проверка особенно полезна при работе с небольшими наборами данных или при выполнении тщательной настройки гиперпараметров. В то время как современные фреймворки глубокого обучения, такие как PyTorch упрощают цикл обучения , управление складками требует тщательной подготовки данных.

Следующий пример демонстрирует, как выполнить итерацию по заранее сгенерированным файлам конфигурации YAML для 5-кратного кросс-валидационного эксперимента с использованием модели YOLO26. При этом предполагается, что вы уже разделили набор данных на пять отдельных файлов конфигурации.

from ultralytics import YOLO

# List of dataset configuration files representing 5 folds
fold_yamls = [f"dataset_fold_{i}.yaml" for i in range(5)]

for i, yaml_file in enumerate(fold_yamls):
    # Load a fresh YOLO26 Nano model for each fold
    model = YOLO("yolo26n.pt")

    # Train the model, saving results to a unique project directory
    results = model.train(data=yaml_file, epochs=20, project="cv_experiment", name=f"fold_{i}")

Для более глубокого изучения автоматизации генерации разбиения обратитесь к руководству по K-кратной перекрестной проверке.

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

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

  • Медицинская диагностика: при анализе медицинских изображений наборы данных по редким заболеваниям часто бывают небольшими. Однократное разделение для валидации может случайно исключить сложные случаи или редкие патологии. Используя перекрестную валидацию, исследователи, разрабатывающие ИИ в сфере здравоохранения, гарантируют, что их диагностические модели тестируются на всех доступных сканах пациентов, подтверждая, что система работает с различными демографическими группами и типами оборудования.
  • Точное земледелие: Условия окружающей среды на открытом воздухе могут сильно различаться. Модель, обученная для обнаружения болезней сельскохозяйственных культур, может хорошо работать в солнечные дни, но не справляться с задачей в пасмурную погоду, если в обучающем наборе были только такие изображения. Перекрестная проверка гарантирует, что модель устойчива к таким колебаниям, что помогает фермерам полагаться на инструменты автоматического машинного обучения (AutoML) для постоянного мониторинга независимо от погодных условий.

Стратегические преимущества в разработке моделей

Интеграция перекрестной проверки в жизненный цикл разработки ИИ дает важную информацию о компромиссе между смещением и дисперсией.

  1. Оценка стабильности: если показатели производительности значительно различаются между складками, это указывает на то, что модель очень чувствительна к конкретным точкам данных, используемым для обучения, что свидетельствует о высокой дисперсии.
  2. Эффективность использования данных: максимально увеличивает полезность ограниченных данных, поскольку каждое наблюдение в конечном итоге используется как для обучения, так и для валидации.
  3. Оптимизация гиперпараметров: обеспечивает надежный эталон для выбора оптимальной скорости обучения, размера партии или стратегий увеличения объема данных без «заглядывания» в окончательный тестовый набор.

Дифференциация смежных понятий

Важно отличать перекрестную валидацию от других терминов, связанных с оценкой:

  • vs. Hold-out Validation: Hold-out предполагает однократное разделение (например, 80/20). Хотя этот метод быстрее и подходит для массивных наборов данных, таких как ImageNet, она менее статистически устойчива, чем перекрестная валидация для небольших наборов данных
  • vs. Бутстреппинг: Бутстреппинг предполагает случайную выборку с заменой, тогда как K-кратная перекрестная проверка разделяет данные без замены (каждая выборка находится ровно в одной складке).

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

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

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

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