Pular para o conteúdo
Favoritos

Calculadora de matriz de confusão

Atualizado:

Informe as quatro contagens de uma matriz de confusão (TP, FP, FN, TN) e obtenha na hora acurácia, precisão, recall, especificidade e F1, exibidos como proporções ou porcentagens.

Acurácia, precisão, revocação e F1 a partir de uma matriz de confusão

Campos de entrada
Contagens da matriz de confusão
TP
Casos positivos classificados corretamente como positivos.
FP
Casos negativos classificados incorretamente como positivos (erros do tipo I).
FN
Casos positivos classificados incorretamente como negativos (erros do tipo II).
TN
Casos negativos classificados corretamente como negativos.
Opções de saída
Se ativado, o resultado é atualizado automaticamente quando você altera qualquer valor.

Matriz de confusão

Fórmula
\[ n = TP + FP + FN + TN \\ \text{Acurácia} = \frac{TP + TN}{n} \\ \text{Precisão} = \frac{TP}{TP + FP} \\ \text{Recall} = \frac{TP}{TP + FN} \\ \text{Especificidade} = \frac{TN}{TN + FP} \\ F_1 = \frac{2TP}{2TP + FP + FN} = \frac{2 \cdot \text{Precisão} \cdot \text{Recall}}{\text{Precisão} + \text{Recall}} \]

Onde:

  • \(TP\) — verdadeiros positivos: casos positivos classificados corretamente como positivos
  • \(FP\) — falsos positivos: casos negativos classificados incorretamente como positivos (erros do tipo I)
  • \(FN\) — falsos negativos: casos positivos classificados incorretamente como negativos (erros do tipo II)
  • \(TN\) — verdadeiros negativos: casos negativos classificados corretamente como negativos
  • \(n\) — número total de casos classificados

Essas cinco métricas variam de 0 (pior) a 1 (perfeito) e resumem aspectos diferentes do desempenho de um classificador binário. Quando o denominador é zero, a métrica correspondente fica indefinida e a calculadora exibe "—".

Matriz de confusão – Exemplo de cálculo

Exemplo: um modelo avaliou 150 casos. Ele sinalizou corretamente 45 casos positivos (TP) e deixou passar 15 (FN), enquanto aprovou corretamente 80 casos negativos (TN) e disparou 10 alarmes falsos (FP).

\[ n = 45 + 10 + 15 + 80 = 150 \]

\[ \text{Acurácia} = \frac{45 + 80}{150} = 0.8333 \quad (83.33\%) \]

\[ \text{Precisão} = \frac{45}{45 + 10} = 0.8182 \quad (81.82\%) \]

\[ \text{Recall} = \frac{45}{45 + 15} = 0.75 \quad (75\%) \]

\[ \text{Especificidade} = \frac{80}{80 + 10} = 0.8889 \quad (88.89\%) \]

\[ F_1 = \frac{2 \times 45}{2 \times 45 + 10 + 15} = \frac{90}{115} = 0.7826 \quad (78.26\%) \]

Resultado: acurácia de 83,33%, precisão de 81,82%, recall de 75%, especificidade de 88,89% e F1 de 78,26% (com o resultado exibido em porcentagens).

Como usar a calculadora

  1. Conte quantos casos caem em cada célula da sua matriz de confusão e informe os valores em Verdadeiros positivos, Falsos positivos, Falsos negativos e Verdadeiros negativos. Os quatro valores devem ser números inteiros \(\ge 0\).
  2. Escolha a opção Exibir métricas como: "Proporções (0–1)" para valores decimais ou "Porcentagens (0–100%)" para valores em porcentagem.
  3. Leia os resultados: Total de previsões, Acurácia, Precisão (valor preditivo positivo), Recall (sensibilidade, taxa de verdadeiros positivos), Especificidade (taxa de verdadeiros negativos) e Pontuação F1, seguidos de um resumo de como as métricas foram calculadas e como interpretá-las.
  4. Se uma métrica aparecer como "—", é porque seu denominador era zero — por exemplo, a precisão fica indefinida quando o modelo nunca previu um caso positivo (\(TP + FP = 0\)).

O que é uma matriz de confusão?

A matriz de confusão é o boletim básico de um classificador binário. Trata-se de uma tabela 2×2 que cruza a classe verdadeira de cada caso (positivo ou negativo) com a classe que o modelo previu. As quatro células — verdadeiros positivos, falsos positivos, falsos negativos e verdadeiros negativos — cobrem todos os resultados possíveis, de modo que a soma delas, \(n\), é o número total de casos classificados. A partir apenas desses quatro números, é possível derivar todas as medidas padrão de qualidade da classificação.

As cinco métricas calculadas aqui respondem cada uma a uma pergunta diferente. A acurácia pergunta: no geral, que fração das previsões estava correta? A precisão pergunta: quando o modelo diz "positivo", com que frequência ele acerta? Precisão baixa significa muitos alarmes falsos. O recall (também chamado de sensibilidade ou taxa de verdadeiros positivos) pergunta: de todos os casos que realmente são positivos, quantos o modelo capturou? Recall baixo significa casos perdidos. A especificidade é o recall da classe negativa — mede o quão bem o modelo reconhece os verdadeiros negativos. O F1 é a média harmônica entre precisão e recall, equilibrando as duas: só fica alto quando ambas são altas.

Por que não usar apenas a acurácia? Porque ela engana quando as classes são desbalanceadas. Se apenas 1% dos casos são positivos, um modelo trivial que classifica tudo como negativo atinge 99% de acurácia sem capturar nenhum positivo. Precisão, recall e F1 focam na classe positiva e expõem esse tipo de falha de imediato. Qual métrica importa mais depende do custo dos erros: no rastreamento de câncer, um tumor não detectado (falso negativo) é muito pior do que um alarme falso, então o recall é priorizado; no filtro de spam, um e-mail legítimo perdido (falso positivo) pode ser pior, então a precisão pesa mais.

Em contextos médicos e epidemiológicos, os mesmos números recebem outros nomes: o recall é a sensibilidade, a precisão é o valor preditivo positivo (VPP) e a proporção de casos realmente positivos, \((TP + FN)/n\), é a prevalência. Se você conhece a sensibilidade, a especificidade e a prevalência de um teste, pode avançar até os valores preditivos com o Teorema de Bayes.

Premissas, limitações e dicas práticas

  • A calculadora trata as quatro contagens como inteiros exatos de uma única rodada de classificação. Ela assume que cada caso pertence a exatamente uma célula e que a classe "positiva" é aquela que você quer detectar.
  • Todas as métricas são calculadas sobre a amostra informada, portanto, são estimativas sujeitas a erro amostral. Com contagens pequenas (digamos, menos de 30 positivos), informe um intervalo de confiança — o intervalo de Wilson é uma boa escolha para proporções — em vez de uma porcentagem isolada.
  • Métricas com denominador zero ficam indefinidas e aparecem como "—": a precisão quando nenhum positivo foi previsto, o recall quando não há casos positivos, a especificidade quando não há casos negativos e o F1 quando precisão e recall são ambas zero.
  • O F1 pondera precisão e recall igualmente. Se uma delas importa mais na sua aplicação, use a pontuação \(F_\beta\) (por exemplo, \(F_2\) favorece o recall e \(F_{0.5}\) favorece a precisão).
  • A matriz de confusão não diz nada sobre por que o modelo erra nem como ele se compara a outro modelo nos mesmos dados. Para testar se dois classificadores (ou dois avaliadores) diferem significativamente em resultados pareados, use o Teste de McNemar; para proporções independentes, aplica-se o Teste Z para duas proporções ou o Teste Exato de Fisher.
  • A matriz de confusão exige decisões rígidas (binárias). Se o seu modelo gera probabilidades, as contagens — e, portanto, todas as métricas — dependem do limiar escolhido para converter escores em rótulos; por isso, sempre informe o limiar junto com as métricas.

Perguntas frequentes

O que é um bom valor de F1 ou de acurácia?

Não existe um valor "bom" universal — tudo depende do domínio e do custo dos erros. Como referências aproximadas: acima de 0,9 é excelente em tarefas bem estudadas, como reconhecimento de dígitos; de 0,7 a 0,9 costuma ser aceitável em classificação de textos; e de 0,5 a 0,7 já pode ser valioso em áreas ruidosas, como previsão médica. Compare sempre com uma linha de base (por exemplo, prever sempre a classe majoritária) em vez de mirar um número absoluto.

Como calcular as métricas à mão, sem calculadora?

Escreva as quatro contagens em uma grade 2×2, com as classes previstas nas colunas e as classes reais nas linhas. A acurácia é a soma da diagonal dividida pelo total; a precisão é TP dividido pela soma da primeira coluna; o recall é TP dividido pela soma da primeira linha; e a especificidade é TN dividido pela soma da segunda linha. O F1 é a média harmônica: multiplique a precisão pelo recall, dobre o resultado e divida pela soma das duas. Cada valor fica entre 0 e 1; multiplique por 100 para obter uma porcentagem.

Quais são os erros mais comuns ao preencher uma matriz de confusão?

O erro clássico é trocar falsos positivos e falsos negativos. Lembre-se: um falso positivo é um caso que o modelo previu como positivo, mas que na verdade era negativo (um alarme falso); já um falso negativo foi previsto como negativo, mas na verdade é positivo (um caso perdido). Confira também se a orientação da matriz segue a sua convenção — algumas ferramentas colocam as classes reais nas colunas e as previsões nas linhas, o que transpõe a tabela e muda quais células são FP e FN.

Essa calculadora serve para matrizes de confusão multiclasse?

Não — ela funciona apenas para problemas binários (duas classes). Em problemas multiclasse, você pode montar uma matriz 2×2 por classe, tratando essa classe como "positiva" e todas as outras como "negativas", calcular precisão, recall e F1 de cada classe e tirar a média (média macro ou micro). Alternativamente, métricas como o Coeficiente de Correlação de Matthews (MCC) e o kappa de Cohen generalizam diretamente para matrizes quadradas maiores.

Como converter entre proporções, porcentagens e chances (odds)?

Uma proporção de 0,85 equivale a 85%; basta multiplicar por 100 (ou dividir por 100 para voltar). Algumas áreas trabalham com chances (odds): a razão de chances de um classificador é \( (TP \cdot TN)/(FP \cdot FN) \), e a estatística J de Youden é recall + especificidade − 1. Se uma fonte fornecer uma porcentagem, converta-a em proporção antes de usá-la em fórmulas como a média harmônica do F1.

Por que meu F1 ficou menor que a precisão e o recall?

Esse comportamento é esperado, não é um bug. O F1 é a média harmônica, dominada pelo menor dos dois valores. Por exemplo, com precisão de 0,95 e recall de 0,55, o F1 fica em torno de 0,70 — muito mais próximo do recall fraco do que a média aritmética (0,75) sugeriria. Isso penaliza classificadores que brilham em uma métrica enquanto falham na outra, e é exatamente por isso que o F1 é preferido à simples média.

E a classe negativa — existe um valor preditivo negativo?

Existe. A contraparte da precisão para a classe negativa é o valor preditivo negativo (VPN): \( TN/(TN + FN) \), a probabilidade de uma previsão "negativa" ser realmente negativa. Diferentemente da sensibilidade e da especificidade, tanto o VPP quanto o VPN dependem da prevalência das classes, de modo que o mesmo teste pode apresentar um VPN alto em uma população de baixa prevalência mesmo com especificidade modesta. Use-o quando a confiabilidade dos resultados negativos importa, como para descartar uma doença.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *