Оценка производительности модели с помощью матрицы ошибок. Изучите метрики, реальные примеры использования и инструменты для повышения точности классификации ИИ.
Матрица путаницы - это комплексный инструмент измерения производительности, используемый в машинном обучении (ML) для оценки точности модели классификации. В отличие от простого показателя точности, который говорит только о проценте правильных предсказаний, матрица смешения дает подробное представление о том, как как модель классифицирует каждый класс. Она визуализирует расхождение между предсказанными метками и реальными Это позволяет разработчикам точно определить, где модель "запуталась" или допускает систематические ошибки. Этот уровень детализации жизненно важен для совершенствования сложных систем компьютерного зрения (КЗ), таких как те, что созданных с помощью Ultralytics YOLO11.
Матрица путаницы разбивает предсказания классификатора на четыре отдельные категории, обычно расположенные в виде сетке. Эти компоненты помогают определить, страдает ли модель от конкретных типов ошибок, таких как "ложные тревоги" или "пропущенные цели":
В то время как широкие метрики полезны для высокоуровневых обзоров, матрица путаницы очень важна при работе с несбалансированными наборами данных. Если в наборе данных 95 кошек и 5 собак, то модель, которая просто каждый раз угадывает "кошку", достигает 95 % но бесполезна для поиска собак. Матрица смешения сразу же покажет эту неудачу, показав ноль истинных положительных результатов для класса "собака".
Эта разбивка служит основой для расчета других важнейших показателей производительности. Анализируя матрицы, инженеры могут получить:
Важность матрицы путаницы зависит от конкретного применения и "стоимости" различных ошибок.
Сайт ultralytics библиотека автоматически вычисляет и сохраняет матрицы путаницы в процессе проверки
процесса. Это позволяет пользователям визуализировать производительность для всех классов в их наборе данных.
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Validate the model on a dataset like COCO8
# This generates the confusion matrix in the 'runs/detect/val' directory
results = model.val(data="coco8.yaml")
# You can also programmatically access the matrix data
print(results.confusion_matrix.matrix)
Важно отличать матрицу путаницы от производных метрик. В то время как Accuracy, Precision и Recall - это суммарные показатели, состоящие из одного числа, а Матрица путаницы - это исходные данные, на основе которых рассчитываются эти показатели. Она предоставляет "полную картину", а не моментальный снимок. Кроме того, при при обнаружении объектов матрица часто взаимодействует с Пересечение над объединением (IoU) пороговыми значениями для определения того, что считается истинно положительным, что добавляет еще один уровень глубины к оценке в задачах задачах компьютерного зрения.