Entenda o desempenho do modelo com uma matriz de confusão. Explore métricas, usos no mundo real e ferramentas para refinar a precisão da classificação de IA.
Uma matriz de confusão é uma ferramenta abrangente de medição do desempenho utilizada na aprendizagem automática (ML) para avaliar a exatidão de um modelo de classificação. Ao contrário de uma simples pontuação de precisão, que apenas indica a percentagem de previsões corretas, uma matriz de confusão fornece uma análise granular de como o modelo categoriza cada classe. Ela visualiza a discrepância entre os rótulos previstos e a verdade real verdade real, permitindo que os desenvolvedores identifiquem exatamente onde um modelo está "confuso" ou cometendo erros sistemáticos. Este Este nível de pormenor é vital para refinar sistemas complexos sistemas complexos de visão computacional (CV), como os construídos com o Ultralytics YOLO11.
Uma matriz de confusão divide as previsões de um classificador em quatro categorias distintas, normalmente dispostas numa disposição em grelha. Estes componentes ajudam a identificar se um modelo sofre de tipos específicos de erro, tais como "falsos alarmes" ou "alvos falhados":
Embora as métricas gerais sejam úteis para visões gerais de alto nível, a matriz de confusão é essencial quando se lida com conjuntos de dados desequilibrados. Se um conjunto de dados contém 95 gatos e 5 cães, um modelo que simplesmente adivinha "gato" todas as vezes atinge 95% de mas é inútil para encontrar cães. A matriz de confusão revelaria esta falha imediatamente ao mostrar zero verdadeiros positivos para a classe "cão".
Esta desagregação serve de base para o cálculo de outras métricas de desempenho. Ao analisar a matriz, os engenheiros podem derivar:
A importância da matriz de confusão varia consoante a aplicação específica e o "custo" dos erros diferentes.
O ultralytics A biblioteca calcula e guarda automaticamente as matrizes de confusão durante o processo de validação
durante o processo de validação. Isto permite que os utilizadores visualizem o desempenho em todas as classes do seu conjunto de dados.
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)
É importante distinguir a matriz de confusão das métricas derivadas. Enquanto a Exatidão, Precisão e Recuperação são resumos de um único número, a Matriz de confusão é a fonte de dados brutos a partir da qual esses números são calculados. Ela fornece o "quadro completo" em vez de um instantâneo. Além disso, na deteção de objectos, a matriz interage frequentemente com Intersecção sobre União (IoU) (IoU) para determinar o que conta como um verdadeiro positivo, acrescentando outra camada de profundidade à avaliação em tarefas de visão computacional.