Ultralytics YOLO27: Вступи в список ожидания.
Лицензия YOLO
Назад к глоссарию Ultralytics

Data Leakage

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

Утечка данных в машинном обучении (ML) возникает, когда обучающие данные или оценка модели содержат информацию, недоступную ей при реальных прогнозах, например примеры из тестовой выборки, сведения из будущего или признаки, кодирующие ответ. На этапе разработки модель кажется точной и хорошо проходит тестирование модели, но в production показывает худшие результаты, потому что использованный ею обходной путь больше недоступен. Утечки — одна из главных причин невоспроизводимых результатов: в обзоре научных исследований с применением машинного обучения были выявлены 294 затронутые публикации в 17 областях. А в прогнозировании гражданских войн после устранения утечки сложные модели утратили заявленное преимущество перед логистической регрессией, появившейся десятилетия назад.

Как происходит утечка данных#

Утечка возникает из-за способа разделения или обработки данных либо выбора входных признаков. Одни и те же ошибки встречаются в моделях для таблиц, анализе временных рядов и задачах компьютерного зрения, например распознавании действий:

  • Пересечение обучающих и тестовых данных: Этапы, обучаемые на данных, например расчёт статистик нормализации, заполнение пропусков или отбор признаков, выполняются на всём наборе данных до разделения. В результате обучающие данные содержат информацию о выборке для оценки. Так же влияют дубли изображений и их аугментированные копии, созданные до разделения.
  • Утечка между группами: Связанные образцы попадают в разные выборки, например соседние кадры одного видео, несколько снимков одного пациента или фотографии одной сцены. Тогда модель может получить высокий результат, распознавая сцену или человека вместо изучения самой задачи.
  • Утечка из будущего: При случайном разделении упорядоченных по времени данных или расчёте признаков с использованием значений, полученных после момента прогноза, модель заглядывает в будущее.
  • Утечка целевой переменной: входной признак является следствием целевой переменной или её косвенным показателем, например поле «получал лечение» в модели прогнозирования заболевания.
  • Повторное использование оценки: настройка по тестовой выборке или присутствие вопросов бенчмарка в обучающих данных крупной языковой модели, собранных из интернета, превращает оценку в сигнал для обучения.

Целевая переменная может утекать и через изображения. В наборе данных ChestX-ray14 на 80% рентгеновских снимков пневмоторакса из тестовой выборки также виден дренаж грудной клетки — трубка для лечения этого состояния. Классификатор, обученный на этом наборе, показал AUC ROC 0.94 на снимках с дренажом и только 0.77 на снимках без него, то есть в случаях без лечения, которые детектор и должен выявлять.

Демонстрация утечки в коде#

Обучение этапа, зависящего от данных, до перекрёстной проверки — классическая ошибка, эффект которой легко измерить. В примере ниже генерируется чистый шум, поэтому ни одна модель не может добиться точности выше 50% на новых данных. Затем отбираются 20 признаков, лучше всего разделяющих метки, и дважды выполняется перекрёстная проверка логистической регрессии: сначала отбор обучается на всех образцах, затем — внутри конвейера scikit-learn, который заново обучает его на каждой обучающей части.

import numpy as np
from sklearn.feature_selection import SelectKBest
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import cross_val_score
from sklearn.pipeline import make_pipeline

# Pure noise: 100 samples, 5,000 random features, random labels (true accuracy is 50%)
rng = np.random.default_rng(0)
X = rng.normal(size=(100, 5000))
y = rng.integers(0, 2, size=100)

# Leaky: pick the 20 features that best separate the labels using every sample, then cross-validate
X_selected = SelectKBest(k=20).fit_transform(X, y)
leaky = cross_val_score(LogisticRegression(), X_selected, y, cv=5).mean()

# Correct: feature selection is refit inside each training fold
pipeline = make_pipeline(SelectKBest(k=20), LogisticRegression())
clean = cross_val_score(pipeline, X, y, cv=5).mean()
print(f"Leaky CV accuracy: {leaky:.2f}, correct CV accuracy: {clean:.2f}")

В версии с утечкой точность на случайных метках составляет 85%, а в конвейере — 48%, то есть соответствует случайному угадыванию. При 5000 признаков и 100 образцах некоторые признаки случайно коррелируют с метками. Если выбирать их с учётом частей для проверки, эта случайность отражается на оценке каждого разбиения.

Как предотвратить утечку данных#

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

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

Утечка также искажает выбор контрольной точки. Ultralytics YOLO обучается на изображениях train, указанных в файле YAML набора данных, и сохраняет best.pt из эпохи с наивысшим показателем качества на валидации — для обнаружения это mAP50-95. Поэтому почти дублирующиеся кадры, одновременно попавшие в train и val, завышают и оценку, по которой выбирается контрольная точка, и публикуемую оценку.

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

Explore solutions

Компьютерное зрение в спорте

Компьютерное зрение в спорте

Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки

Компьютерное зрение для аэросъёмки

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

Компьютерное зрение в аэрокосмической отрасли

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

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

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

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении

Компьютерное зрение в здравоохранении

Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

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

Компьютерное зрение в сельском хозяйстве

Внедряй ИИ для компьютерного зрения в умное сельское хозяйство с моделями Ultralytics YOLO. Используй их для мониторинга посевов, отслеживания скота и точного земледелия, чтобы повысить урожайность и эффективность.
Подробнее
Компьютерное зрение в спорте
Компьютерное зрение в спорте
Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки
Компьютерное зрение для аэросъёмки
Преобразуй изображения с дронов и других воздушных платформ в аналитические данные в реальном времени для сельского хозяйства, аквакультуры, экологического мониторинга, охраны природы и геопространственного анализа с помощью Ultralytics YOLO.
Подробнее
Компьютерное зрение в аэрокосмической отрасли
Компьютерное зрение в аэрокосмической отрасли
Используй модели Ultralytics YOLO для мониторинга с воздуха с помощью ИИ для компьютерного зрения. Применяй решения компьютерного зрения для дронов, аэрокосмических рабочих процессов, охраны окружающей среды и геопространственных отраслей.
Подробнее
Компьютерное зрение в сфере безопасности
Компьютерное зрение в сфере безопасности
Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике
Компьютерное зрение в робототехнике
Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике
Компьютерное зрение в логистике
Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле
Компьютерное зрение в розничной торговле
Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении
Компьютерное зрение в здравоохранении
Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве
Компьютерное зрение в производстве
Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли
Компьютерное зрение в автомобильной отрасли
Применяй компьютерное зрение в автомобильной отрасли с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ повышает безопасность дорожного движения, улучшает помощь водителю и автоматизацию автомобилей, делая дороги умнее.
Подробнее
Компьютерное зрение в сельском хозяйстве
Компьютерное зрение в сельском хозяйстве
Внедряй ИИ для компьютерного зрения в умное сельское хозяйство с моделями Ultralytics YOLO. Используй их для мониторинга посевов, отслеживания скота и точного земледелия, чтобы повысить урожайность и эффективность.
Подробнее
Компьютерное зрение в спорте
Компьютерное зрение в спорте
Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки
Компьютерное зрение для аэросъёмки
Преобразуй изображения с дронов и других воздушных платформ в аналитические данные в реальном времени для сельского хозяйства, аквакультуры, экологического мониторинга, охраны природы и геопространственного анализа с помощью Ultralytics YOLO.
Подробнее
Компьютерное зрение в аэрокосмической отрасли
Компьютерное зрение в аэрокосмической отрасли
Используй модели Ultralytics YOLO для мониторинга с воздуха с помощью ИИ для компьютерного зрения. Применяй решения компьютерного зрения для дронов, аэрокосмических рабочих процессов, охраны окружающей среды и геопространственных отраслей.
Подробнее
Компьютерное зрение в сфере безопасности
Компьютерное зрение в сфере безопасности
Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике
Компьютерное зрение в робототехнике
Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике
Компьютерное зрение в логистике
Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле
Компьютерное зрение в розничной торговле
Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении
Компьютерное зрение в здравоохранении
Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве
Компьютерное зрение в производстве
Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли
Компьютерное зрение в автомобильной отрасли
Применяй компьютерное зрение в автомобильной отрасли с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ повышает безопасность дорожного движения, улучшает помощь водителю и автоматизацию автомобилей, делая дороги умнее.
Подробнее
Компьютерное зрение в сельском хозяйстве
Компьютерное зрение в сельском хозяйстве
Внедряй ИИ для компьютерного зрения в умное сельское хозяйство с моделями Ultralytics YOLO. Используй их для мониторинга посевов, отслеживания скота и точного земледелия, чтобы повысить урожайность и эффективность.
Подробнее

Давай вместе строить будущее ИИ!

Начни свой путь в будущее машинного обучения