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

Очаговая потеря

Узнайте, как Focal Loss решает проблему дисбаланса классов в глубоком обучении. Научитесь применять его с Ultralytics , чтобы сосредоточиться на сложных примерах и повысить точность модели.

Focal Loss — это специализированная целевая функция, которая в основном используется в глубоком обучении для решения проблемы серьезного дисбаланса классов. Во многих задачах компьютерного зрения, таких как обнаружение объектов, количество примеров фона (отрицательных выборок) значительно превышает количество интересующих объектов (положительных выборок). Стандартные методы, такие как широко используемый потеря кросс-энтропии, одинаково относятся ко всем ошибкам, что часто приводит к перегрузке модели огромным объемомclassify данных. Фокальная потеря модифицирует стандартный расчет потерь, чтобы снизить вес этих простых примеров, заставляя алгоритм оптимизации сосредоточить свои возможности обучения на «сложных» примерах — редких иclassify , которые имеют решающее значение для производительности модели.

Механизм фокусировки

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

Focal Loss вводит модулирующий фактор, который уменьшает вклад потери по мере увеличения уверенности в правильности класса . Это означает, что если модель уже на 99% уверена, что фрагмент фона действительно является фоном, потеря для этого фрагмента уменьшается почти до нуля. Следовательно, веса модели обновляются в первую очередь на основе неправильно классифицированных образцов или тех, в которых модель не уверена. Этот целенаправленный подход необходим для обучения высокопроизводительных одноэтапных детекторов объектов, таких как YOLO26, позволяя им достигать высокой точности без необходимости сложных этапов выборки.

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

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

  • ИИ в здравоохранении: в таких областях, как анализ медицинских изображений, выявление патологий часто сравнивают с поиском иголки в стоге сена. Например, при МРТ-сканировании в поисках небольших поражений здоровые ткани могут составлять более 99 % пикселей. Стандартная модель может максимизировать простую точность, предсказывая «здоровые» ткани повсюду и пропуская критически важный диагноз. Фокальная потеря позволяет системе подавлять сигнал от обильных здоровых тканей и уделять приоритетное внимание изучению тонких особенностей аномалий, тем самым улучшая воспроизведение для спасающих жизнь обнаружений.
  • Автономные транспортные средства: Системы восприятия для самоуправляемых автомобилей должны detect участников дорожного движения, таких как пешеходы или велосипедисты, на сложном фоне зданий, дорог и неба. Хотя фон легко запоминается, небольшие или удаленные препятствия представляют собой серьезную проблему. Используя Focal Loss, ИИ в автомобильных приложениях может гарантировать, что стек восприятия не будет игнорировать этиdetect , поддерживая стандарты безопасности даже в тех случаях, когда опасности занимают лишь небольшую часть поля зрения.

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

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

Следующий пример демонстрирует, как инициализировать Focal Loss с помощью ultralytics пакет утилит и вычислить ошибку для набора прогнозов.

import torch
from ultralytics.utils.loss import FocalLoss

# Initialize Focal Loss.
# The 'gamma' parameter controls the focusing strength (higher = more focus on hard examples).
criterion = FocalLoss(gamma=1.5)

# Example: Model predictions (logits) and binary Ground Truth labels
# requires_grad=True simulates model outputs that need backpropagation
predictions = torch.tensor([[0.8], [-1.5], [0.1]], requires_grad=True)
targets = torch.tensor([[1.0], [0.0], [1.0]])

# Calculate the loss value
loss = criterion(predictions, targets)
print(f"Computed Focal Loss: {loss.item():.4f}")

Отличие от смежных понятий

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

  • Потеря фокуса против потери кросс-энтропии: Кросс-энтропия — это базовый показатель для классификации, который наказывает прогнозы на основе логарифмической ошибки. Фокальная потеря является строгим расширением кросс-энтропии; если параметр фокусировки установлен на ноль, математически она возвращается к стандартной кросс-энтропии. Ключевое отличие заключается в способности фокальной потери автоматически снижать вес простых отрицательных значений, что делает ее более подходящей для несбалансированных наборов данных, таких как COCO.
  • Потеря фокуса против IoU : В то время как потеря фокуса предназначена для классификации (определения того, что представляет собой объект), IoU используется для локализации (определения местоположения объекта). Современные детекторы используют составную функцию потери, которая сочетает в себе потерю фокуса для вероятностей классов и метрики IoU для регрессии ограничивающей рамки.
  • Focal Loss vs. Dice Loss: Dice Loss — еще одна техника, используемая для устранения дисбаланса, в первую очередь в задачах сегментации изображений. В то время как Focal Loss работает с отдельными пикселями или образцами на основе достоверности, Dice Loss оптимизирует перекрытие между прогнозируемыми и реальными областями в целом. Обычно обе техники используются вместе в сложных рабочих процессах сегментации.

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

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

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