Глоссарий

Оверфиттинг

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

Обучай модели YOLO просто
с помощью Ultralytics HUB.

Узнай больше

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

Понимание оверфиттинга

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

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

Реальные примеры избыточной подгонки

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

Предотвращение чрезмерной подгонки

Несколько техник могут помочь смягчить чрезмерную подгонку и улучшить обобщение модели:

  • Упрости модель: Использование менее сложной архитектуры модели (меньшее количество слоев или параметров) может предотвратить подгонку модели под шум. Такие техники, как обрезка модели, также могут снизить сложность.
  • Увеличение объема данных: Искусственное увеличение размера и разнообразия обучающего набора данных помогает модели выучить более надежные характеристики. Методы увеличения данныхUltralytics YOLO включают в себя вращение, перевод, масштабирование и изменение цвета.
  • Регуляризация: Добавление штрафов к функции потерь, основанных на параметрах модели, препятствует возникновению слишком сложных моделей. К распространенным методам относятся регуляризация L1 и L2.
  • Ранняя остановка: Следи за работой модели на отдельном наборе данных для проверки во время обучения и останавливай процесс, когда показатели проверки начинают ухудшаться, даже если результаты обучения продолжают улучшаться. Это предотвращает обучение модели на тренировочных данных в течение слишком большого количества эпох.
  • Перекрестная валидация: Такие техники, как перекрестная валидация K-Fold, дают более надежную оценку производительности модели на невидимых данных и помогают выбрать модели, которые лучше обобщают.
  • Отказ от обучения: Случайная установка части активаций нейронов на ноль во время обучения заставляет сеть изучать больше избыточных представлений, уменьшая зависимость от конкретных нейронов. Смотри объяснение концепции Dropout.

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

Читать полностью