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

Переобучение

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

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

Почему происходит переобучение

Основной причиной переобучения является чрезмерная сложность модели по отношению к объему доступных данных. Если нейронная сеть слишком велика, то есть имеет слишком много слоев или параметров, она может легко запомнить обучающие примеры. Другие факторы, способствующие этому, включают:

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

Переобучение и недообучение

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

Предотвращение переобучения

Инженеры используют несколько методов для смягчения переобучения и повышения надежности модели:

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

Реальные примеры

Переобучение может иметь серьезные последствия при внедрении ИИ в производственные среды:

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

Пример кода: раннее прекращение с YOLO26

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

from ultralytics import YOLO

# Load the YOLO26 model (latest generation)
model = YOLO("yolo26n.pt")

# Train with early stopping enabled (patience=50 epochs)
# If validation metrics don't improve for 50 epochs, training stops.
results = model.train(data="coco8.yaml", epochs=100, patience=50)

Связанные понятия

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

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

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

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