Lui Magno

Matriz de Confusão: O que é?

Imagem Principal

O que é Matriz de Confusão?

No campo do Machine Learning e no campo dos algoritmos de Classificação, a matriz de confusão ou matriz de erro, é uma tabela específica que tem como intuito permitir a visualização da performance do algoritmo de classificação.

Cada linha da matriz corresponde a uma instância da classe que representa, enquanto cada coluna representa uma previsão de cada classe, ou vice-versa (a depender de quem faz a matriz).

Vamos a um exemplo mais claro: suponha que estamos realizando um projeto que detecta animais na floresta amazônica. Para começar, decidimos diminuir o escopo e começar classificando apenas duas espécies: macaco e sapo. 

Nosso dataset inicial fica definido assim, 10 sapos e 10 macacos: 

Dados criados em Python

Veja como a tabela se comporta na hora de classificar cada predição em relação aos valores reais:

Tabela 1 — Matriz de Confusão

Agora o significado de cada região (quadrado), tomando a ideia de que a classe positiva é a de macacos (poderia também ser a de sapos, mas vamos de macacos por enquanto):

  1. True Positive (TP): Previu positivo e é da classe positiva. O algoritmo disse que era um macaco e de fato era um.
  2. False Positive (FP): Previu positivo mas é da classe negativa. Ou seja, o algoritmo previu que era um macaco, mas era um sapo.
  3. True Negative (TN): Previu negativo e é da classe negativa. Ou seja, o algoritmo disse que não era um macaco, e de fato não era, era um sapo.
  4. False Negative (FN): Previu negativo e era da classe positiva. Ou seja, o algoritmo disse que não era um macaco, mas era sim.

É importante entender aqui: escolhendo a classe positiva como macaco, o algoritmo quando faz uma previsão negativa, não diz que as imagens são de um sapo, e sim de que aquilo não representa sua classe positiva, ou seja, não são de um macaco. Mas como estamos trabalhando somente com 2 variáveis, podemos admitir que não ser macaco implica que é um sapo.

Vamos ver como a tabela 1 fica agora com essas novas informações:

Entenderam agora? Vamos revisar:

True Positive: 8 macacos foram previstos como macacos.

False Positive: 3 sapos foram previstos como macacos.

True Negative: 7 sapos foram previstos como não macacos.

False Negative: 2 macacos foram previstos como não macacos.

Agora, podemos tirar algumas informações e métricas importantes dessa tabela.

Métricas da Matriz de Confusão: Precisão, Acurácia, Recall e F-Score

A partir desses elementos, várias métricas podem ser derivadas para avaliar o desempenho do modelo.

- Acurácia (Accuracy): É a proporção de previsões corretas (VP + VN) em relação ao número total de exemplos. A fórmula é: `Acurácia = (VP + VN) / (VP + VN + FP + FN)`. Embora a acurácia seja uma métrica comum, ela pode ser enganosa em conjuntos de dados desbalanceados.

- Precisão (Precision):  Representa a proporção de verdadeiros positivos em relação ao total de previsões positivas do modelo. A fórmula é: `Precisão = VP / (VP + FP)`. A precisão é útil quando o foco está em evitar falsos positivos.

- Revocação (Recall ou Sensibilidade): Indica a proporção de verdadeiros positivos em relação ao total de exemplos positivos reais. A fórmula é: `Revocação = VP / (VP + FN)`. A revocação é relevante quando é crucial identificar todos os exemplos positivos.

- Especificidade (Specificity):  É a proporção de verdadeiros negativos em relação ao total de exemplos negativos reais. A fórmula é: `Especificidade = VN / (VN + FP)`. Essa métrica é valiosa quando o foco está em evitar falsos positivos.

- F1-Score: É a média harmônica entre precisão e revocação. A fórmula é: `F1-Score = 2 * (Precisão * Revocação) / (Precisão + Revocação)`. O F1-Score é útil quando há um equilíbrio desejado entre precisão e revocação.

Ao interpretar uma matriz de confusão, é essencial considerar o contexto específico do problema e os requisitos do aplicativo. Uma métrica pode ser mais relevante que outra, dependendo dos custos associados aos diferentes tipos de erros. Por exemplo, em um sistema de detecção de fraudes, pode ser mais crítico minimizar os falsos positivos (previsões incorretas de fraude) do que os falsos negativos (não detectar fraudes reais). Portanto, a escolha das métricas deve ser orientada pelos objetivos e requisitos específicos do problema em questão.