Confusion Matrix
Узнай, как матрица ошибок оценивает качество классификации. Изучи TP, FP, TN и FN, чтобы оптимизировать модели Ultralytics YOLO26 и повысить точность.
Матрица ошибок — это инструмент оценки производительности для задач классификации в машинном обучении, где результатом могут быть два или более класса. Это таблица с четырьмя различными сочетаниями предсказанных и фактических значений, служащая основой для визуализации данных при оценке модели. В отличие от простой точности, которая может вводить в заблуждение при несбалансированном наборе данных, матрица ошибок подробно показывает, где модель компьютерного зрения (CV) допускает ошибки. Сравнивая предсказания с метками эталонной разметки, разработчики могут определить, путает ли система два конкретных класса или полностью не обнаруживает объект.
Основные компоненты матрицы#
Сама матрица обычно разделена на четыре квадранта для бинарной классификации, хотя для многоклассовых задач, например тех, которые решает Ultralytics YOLO26, она расширяется. Эти четыре компонента представляют пересечение предсказаний модели с тем, что фактически присутствует на изображении.
- Истинно положительные (TP): Модель правильно предсказывает положительный класс. Например, в задаче обнаружения объектов модель успешно рисует ограничивающую рамку вокруг человека, который действительно находится в кадре.
- Истинно отрицательные (TN): Модель правильно предсказывает отрицательный класс. Это особенно важно в таких сценариях, как обнаружение аномалий, когда система правильно определяет, что в изготовленной детали нет дефектов.
- Ложно положительные (FP): Модель неправильно предсказывает положительный класс. Это часто называют «ошибкой I рода». Такая ошибка возникает, когда система обнаруживает несуществующий объект, например камера видеонаблюдения принимает тень за нарушителя.
- Ложно отрицательные (FN): Модель неправильно предсказывает отрицательный класс. Это называют «ошибкой II рода». Такая ошибка возникает, когда модель не обнаруживает присутствующий объект, фактически «пропуская» целевой объект.
Производные метрики и их значение#
Исходные числа в матрице ошибок используются для вычисления более сложных метрик, описывающих производительность модели. Понимание этих производных метрик необходимо для оптимизации нейронных сетей.
- Точность (Precision): Вычисляется как TP / (TP + FP). Эта метрика показывает, насколько точны положительные предсказания. Высокая точность означает меньше ложных срабатываний.
- Полнота (чувствительность) (Recall (Sensitivity)): Вычисляется как TP / (TP + FN) и измеряет способность модели находить все положительные примеры. Высокая полнота жизненно важна, когда пропуск объекта может иметь серьезные последствия.
- F1-мера: Гармоническое среднее точности и полноты. Она дает единую оценку, уравновешивающую компромисс между этими показателями, и полезна для сравнения разных моделей YOLO26.
Практические применения#
Конкретная стоимость ошибок, определяемая матрицей ошибок, задает способ настройки моделей для разных отраслей.
В сфере ИИ в здравоохранении матрица ошибок имеет критическое значение для безопасности. При обучении модели для анализа медицинских изображений с целью обнаружения опухолей ложно отрицательный результат (пропуск опухоли) гораздо хуже ложно положительного результата (направление доброкачественного образования на проверку врачом). Поэтому инженеры отдают в этих матрицах приоритет полноте, а не точности, чтобы не пропустить потенциальные риски для здоровья.
И наоборот, в сфере контроля качества на производстве ключевую роль играет эффективность. Если система, классифицирующая детали на сборочной линии, генерирует слишком много ложно положительных результатов (помечает качественные детали как бракованные), это приводит к ненужным отходам и замедляет производство. Здесь матрица ошибок помогает инженерам настроить модель для максимизации точности, гарантируя, что отбраковываются действительно дефектные детали, и оптимизировать рабочие процессы автоматизированного машинного обучения.
Создание матрицы ошибок с Ultralytics YOLO26#
При использовании современных фреймворков создание такой матрицы часто входит в стандартный конвейер валидации. В примере ниже показано, как проверить модель YOLO26 и получить доступ к данным матрицы ошибок с помощью пакета ultralytics.
from ultralytics import YOLO
# Load a pre-trained YOLO26 model
model = YOLO("yolo26n.pt")
# Validate the model on the COCO8 dataset
# This automatically generates and plots the confusion matrix
metrics = model.val(data="coco8.yaml")
# Access the confusion matrix object directly
print(metrics.confusion_matrix.matrix)Различия между связанными понятиями#
Важно отличать матрицу ошибок от схожих терминов оценки.
- В сравнении с точностью: Точность — это просто отношение числа правильных предсказаний к общему числу предсказаний. Хотя эта метрика полезна, точность может сильно вводить в заблуждение в несбалансированных наборах данных. Например, если 95% электронных писем не являются спамом, модель, которая предсказывает «не спам» для каждого письма, имеет точность 95%, но бесполезна. Матрица ошибок показывает этот недостаток, демонстрируя отсутствие истинно положительных результатов для класса спама.
- В сравнении с ROC-кривой: Матрица ошибок дает моментальный снимок производительности при одном конкретном пороговом значении уверенности. В отличие от нее, кривая рабочей характеристики приемника (ROC) показывает, как изменяются доля истинно положительных результатов и доля ложно положительных результатов при изменении этого порога. Такие инструменты, как Ultralytics Platform, позволяют пользователям изучать обе визуализации и выбирать оптимальную рабочую точку для развертывания.






