Production CV
~25 мин

Метрики в CV

mAP, IoU, Dice coefficient, Precision/Recall для детекции, FID/IS для генерации.

Метрики в CV — как измерять качество моделей

Без правильных метрик невозможно сравнивать модели, выбирать гиперпараметры и доказывать бизнесу ценность решения. В CV у каждой задачи свои метрики, и на собеседовании обязательно спросят: "какой mAP у вашего детектора?" или "почему Dice, а не IoU?".

Метрики CV: IoU, mAP, Dice, FID для разных задач
Ключевые метрики CV по задачам: IoU/mAP для детекции, Dice/mIoU для сегментации, FID/IS для генерации

Classification — Accuracy, Top-K

  • Top-1 Accuracy — доля изображений, где предсказанный класс совпал с истинным. ImageNet SOTA: ~91% (BEiT-3).
  • Top-5 Accuracy — истинный класс в top-5 предсказаний. AlexNet (2012): 83% → ViT (2021): 99%+.
  • Precision / Recall / F1 — для binary/multilabel классификации. Precision = TP/(TP+FP), Recall = TP/(TP+FN).
  • Confusion Matrix — таблица predicted vs actual классов. Показывает, какие классы путаются.

Detection — mAP, IoU

IoU (Intersection over Union) — фундаментальная метрика для detection и segmentation:

Загрузка интерактивного виджета...

  • IoU = Area(Intersection) / Area(Union) — мера совпадения предсказанного bbox/маски с ground truth. IoU=1 → идеальное совпадение, IoU=0 → нет пересечения.
  • Порог IoU — обычно IoU ≥ 0.5 → True Positive (TP). IoU < 0.5 → False Positive (FP).
  • Precision-Recall кривая — для каждого порога confidence строим (Precision, Recall) точку. Area Under Curve = AP (Average Precision) для одного класса.
  • mAP (mean Average Precision) — среднее AP по всем классам. Основная метрика detection.
  • mAP@0.5 (PASCAL VOC стиль) — IoU порог 0.5. Мягкий критерий.
  • mAP@[0.5:0.95] (COCO primary) — среднее mAP по IoU порогам от 0.5 до 0.95 с шагом 0.05. Строгий критерий, стандарт в 2024+.
  • AP50, AP75 — mAP на конкретных IoU порогах. AP75 — строгий, показывает качество локализации.

Segmentation — Dice, mIoU

  • Pixel Accuracy — доля правильно классифицированных пикселей. Простая, но обманчивая: 95% фона → 95% accuracy при полном игнорировании объектов.
  • IoU (Jaccard Index) — для каждого класса: IoU = TP / (TP + FP + FN). Не обманывается дисбалансом классов.
  • mIoU (mean IoU) — среднее IoU по всем классам. Основная метрика semantic segmentation. ADE20K SOTA: ~60% mIoU.
  • Dice Coefficient (F1) — 2·|A∩B| / (|A|+|B|). Эквивалентен F1-score на уровне пикселей. Стандарт в медицинской сегментации.
  • Dice vs IoU — Dice ≥ IoU для одних и тех же предсказаний. Dice = 2·IoU / (1+IoU). Dice более "щедрый".
  • Boundary metrics — Boundary IoU, Hausdorff distance. Оценивают качество контуров, а не площадей. Важно в медицине.

Generation — FID, IS, CLIP Score

  • FID (Fréchet Inception Distance) — расстояние между распределениями features (Inception-V3) реальных и сгенерированных изображений. FID = ||μ_r - μ_g||² + Tr(Σ_r + Σ_g - 2(Σ_r·Σ_g)^0.5). Ниже = лучше.
  • IS (Inception Score) — exp(E[KL(p(y|x) || p(y))]). Высокий IS = чёткие, разнообразные генерации. Не сравнивает с реальными данными напрямую.
  • CLIP Score — cosine similarity CLIP-эмбеддингов текстового промпта и сгенерированного изображения. Стандарт для text-to-image.
  • LPIPS — Learned Perceptual Image Patch Similarity. Перцептуальное расстояние (глубокие features). Для оценки реконструкции и super-resolution.

🎯 На собеседовании

Частые вопросы

Что такое mAP@[0.5:0.95]? Среднее AP по IoU порогам от 0.5 до 0.95 (шаг 0.05). Primary metric на COCO. Строже чем mAP@0.5. • Чем Dice отличается от IoU? Dice = 2·TP / (2·TP + FP + FN), IoU = TP / (TP + FP + FN). Dice всегда ≥ IoU. Dice = 2·IoU/(1+IoU). Dice стандартен в медицине. • Почему Pixel Accuracy — плохая метрика? При дисбалансе классов (95% фона) модель, предсказывающая всё как фон, получает 95% accuracy. mIoU не обманывается этим. • Как считается FID? Fréchet distance между гауссианами (μ, Σ) features Inception-V3 для real и fake изображений. Нужно ~50K samples для стабильной оценки.