Узнайте, как площадь под кривой (AUC) измеряет эффективность модели. Откройте для себя ее роль в классификации, здравоохранении и финансах с помощью Ultralytics .
Площадь под кривой (AUC) — это комплексный показатель эффективности, используемый в машинном обучении (ML) для оценки дискриминационной способности классификационной модели. В частности, он измеряет двумерную площадь под кривой рабочих характеристик приемника (ROC), предоставляя одно скалярное значение в диапазоне от 0 до 1. AUC равная 1,0 указывает на идеальный классификатор, а AUC равная 0,5 — на то, что модель работает не лучше, чем случайный выбор. Поскольку AUC агрегирует производительность по всем возможным порогам классификации, она особенно эффективна для оценки возможностей прогнозного моделирования в сценариях, где оптимальная граница принятия решений неизвестна или изменчива.
Чтобы полностью понять AUC, необходимо понимать лежащую в его основе кривую ROC. На этом графике отображается коэффициент истинных положительных результатов (Recall) в сопоставлении с коэффициентом ложных положительных результатов при различных настройках порогового значения. AUC, по сути, количественно оценивает вероятность того, что модель присвоит случайно выбранному положительному экземпляру более высокий рейтинг, чем случайно выбранному отрицательному.
AUC является предпочтительным показателем в отраслях, связанных с принятием критически важных решений и несбалансированными наборами данных, где один класс встречается значительно реже другого.
Очень важно отличать AUC от других методов оценки моделей, чтобы выбрать подходящий инструмент для вашего проекта.
Следующий пример демонстрирует, как загрузить предварительно обученную классификационную модель YOLO26 и запустить валидацию. В то время как модели YOLO в основном сообщают о точности top-1 и top-5, процесс валидации генерирует данные прогнозирования, необходимые для анализа метрик на основе кривых.
from ultralytics import YOLO
# Load a pre-trained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Validate the model on a standard dataset (e.g., imagenet10)
# This generates precision, recall, and accuracy metrics
results = model.val(data="imagenet10")
# Access top-1 accuracy, a key point on the ROC curve
print(f"Top-1 Accuracy: {results.top1:.4f}")
print(f"Top-5 Accuracy: {results.top5:.4f}")
Для комплексного управления жизненным циклом, включая аннотирование наборов данных и обучение в облаке, где эти метрики визуализируются автоматически, разработчики могут использовать Ultralytics . Это упрощает процесс интерпретации сложных метрик, таких как AUC, без ручного вычисления.