Pular para o conteúdo
Favoritos

Calculadora de ROC AUC

Atualizado:

Informe os rótulos de classe (0/1) e os escores de previsão para calcular a ROC AUC, o coeficiente de Gini, o melhor ponto de corte pelo J de Youden, a matriz de confusão e todos os pontos da curva ROC.

Meça o quão bem seus escores separam duas classes

Campos de entrada
t
Um caso é previsto como positivo quando seu escore é maior ou igual a este ponto de corte. Não afeta a AUC.
Se ativado, o resultado é atualizado automaticamente quando você altera qualquer valor.

Fórmula da ROC AUC

Fórmula
\[ \text{AUC} = \frac{\#\{\text{pares com } s_+ > s_-\} + \tfrac{1}{2}\,\#\{\text{pares com } s_+ = s_-\}}{P \cdot N} \] \[ G = 2\,\text{AUC} - 1, \qquad J = \text{sensibilidade} + \text{especificidade} - 1 = \text{TPR} - \text{FPR} \]

Onde:

  • \(P\) — número de casos positivos (rótulo 1)
  • \(N\) — número de casos negativos (rótulo 0)
  • \(s_+\) — escore de um caso positivo; \(s_-\) — escore de um caso negativo
  • \(G\) — coeficiente de Gini (D de Somers), um reescalonamento da AUC
  • \(J\) — estatística J de Youden, usada para encontrar o melhor ponto de corte

A AUC é a probabilidade de um caso positivo sorteado ao acaso receber um escore maior do que um caso negativo sorteado ao acaso (empates valem meio acerto). Ela corresponde à área trapezoidal sob a curva ROC e à estatística U de Mann–Whitney dividida por \(P \cdot N\).

ROC AUC – Exemplo de cálculo

Exemplo: 10 casos, 5 positivos e 5 negativos, com os escores padrão. Os escores positivos são 0,9; 0,85; 0,8; 0,75 e 0,6, e os escores negativos são 0,7; 0,4; 0,3; 0,2 e 0,1.

Há \(P \cdot N = 25\) pares positivo–negativo. Em 24 deles o caso positivo tem escore maior; o único par mal ordenado é (0,6; 0,7). Não há empates, logo:

\[ \text{AUC} = \frac{24 + \tfrac{1}{2}\cdot 0}{5 \times 5} = 0.96 \]

Resultado: AUC = 0,96, coeficiente de Gini \(2 \times 0.96 - 1 = 0.92\). O melhor ponto de corte pelo J de Youden é escore ≥ 0,6 (sensibilidade 100%, especificidade 80%, \(J = 0.8\)). No limiar padrão de 0,5, a matriz de confusão é VP = 5, FP = 1, FN = 0, VN = 4 (acurácia 90%).

Como usar a calculadora

  1. Cole os Rótulos de classe reais (0 ou 1) no primeiro campo — um rótulo por caso, separados por espaços, quebras de linha ou ponto e vírgula. Use 1 para a classe positiva e 0 para a classe negativa.
  2. Cole os Escores de previsão no segundo campo, na mesma ordem dos rótulos. Qualquer escala numérica serve (probabilidades, saídas do modelo, notas); vírgulas decimais são aceitas.
  3. Se quiser, altere o Limiar da matriz de confusão (padrão 0,5). Um caso é previsto como positivo quando seu escore é ≥ esse ponto de corte. O limiar não afeta a AUC.
  4. Leia os resultados: a Área sob a curva ROC, o coeficiente de Gini, o melhor ponto de corte (J de Youden), a matriz de confusão no seu limiar e uma tabela com os pontos da curva ROC que você pode plotar.

As duas listas devem ter o mesmo comprimento, e os dados precisam conter pelo menos um caso positivo e um negativo — caso contrário, nenhum ordenamento pode ser avaliado.

O que é a ROC AUC?

A curva ROC (Receiver Operating Characteristic, ou característica de operação do receptor) mostra como um classificador binário se comporta em cada ponto de corte possível. Cada ponto da curva é um par (taxa de falsos positivos, taxa de verdadeiros positivos) obtido ao classificar como positivos todos os casos com escore ≥ determinado corte. Ao percorrer o corte do maior para o menor, a curva vai da origem (nada previsto como positivo) até o canto superior direito (tudo previsto como positivo).

A AUC — a área sob essa curva — resume a curva inteira em um único número. Ela tem um significado probabilístico direto: a chance de um caso positivo escolhido ao acaso ter escore maior que um caso negativo escolhido ao acaso. Um ordenamento perfeito dá AUC = 1; um ordenamento inútil (aleatório) dá AUC = 0,5; um ordenamento consistentemente invertido dá AUC < 0,5, o que indica que você deve inverter o sentido dos seus escores.

Um guia aproximado útil: 0,9–1 excelente, 0,8–0,9 bom, 0,7–0,8 razoável, 0,6–0,7 fraco, 0,5 não melhor que o acaso. O coeficiente de Gini \(2\cdot\text{AUC}-1\) reescala essa escala de modo que 0 signifique acaso e 1 signifique perfeição; ele é comum em credit scoring, onde também é chamado de D de Somers.

Diferentemente da acurácia ou da precisão, a AUC é independente de limiar: ela mede a qualidade com que os escores ordenam os casos, independentemente de qualquer corte que você venha a escolher depois. Isso a torna a métrica natural para comparar modelos de pontuação, mas também significa que ela não diz nada sobre calibração — um escore de 0,8 não precisa corresponder a uma probabilidade de 80%. Se você precisar de métricas de matriz de confusão em um corte específico, use esta ferramenta junto com a calculadora de Matriz de Confusão.

Escolhendo um ponto de corte

A calculadora indica o corte que maximiza a estatística J de Youden, \(J = \text{sensibilidade} + \text{especificidade} - 1\) — o ponto da curva ROC mais distante da diagonal. É uma escolha padrão sensata, mas nem sempre é a melhor na prática. Em rastreamento médico, você pode querer alta sensibilidade e aceitar mais falsos positivos; em um teste confirmatório ou na detecção de fraudes com investigações custosas, a especificidade pode pesar mais. Use a tabela de pontos da ROC para ver o equilíbrio entre sensibilidade e especificidade em cada escore distinto e escolha o corte que se ajusta aos seus custos.

Como a AUC é uma medida de ordenamento, ela está intimamente ligada a outras estatísticas de postos. Se você estiver analisando concordância de ordenações de forma mais geral, a calculadora de Tau de Kendall cobre pares concordantes e discordantes entre duas variáveis.

Premissas, limitações e dicas

  • Apenas resultados binários. Os rótulos devem ser exatamente 0 ou 1. Para problemas multiclasse, calcule uma AUC por classe (um contra todos).
  • Independência. Cada caso contribui com um rótulo e um escore, e assume-se que os casos são independentes. Medições repetidas do mesmo indivíduo violam essa premissa.
  • Empates são tratados contando cada par positivo–negativo empatado como meio acerto, o que coincide com a AUC trapezoidal e a convenção da U de Mann–Whitney.
  • Amostras pequenas. Com poucos casos, a AUC tem um intervalo de confiança largo; vale a pena reportar um intervalo de Hanley–McNeil ou DeLong junto com ela. O exemplo padrão de 10 casos serve apenas para ilustração.
  • Desbalanceamento de classes. A AUC é insensível à proporção entre positivos e negativos, o que pode ser uma vantagem ou um ponto cego — um modelo pode ter AUC alta e ainda assim deixar passar muitos positivos reais. Verifique a matriz de confusão e métricas como a razão de chances para avaliar o impacto prático.
  • AUC < 0,5 significa que seus escores estão invertidos: use a lógica "escore ≤ corte" ou troque os rótulos.

Perguntas frequentes

Como calcular a AUC manualmente, sem nenhum software?

Liste todos os escores positivos e todos os negativos e compare todos os pares positivo–negativo. Conte quantos pares têm o escore positivo estritamente maior; pares empatados valem 0,5. Divida pelo total de pares. Com 4 positivos e 6 negativos há 24 pares; se 21 estiverem bem ordenados e 2 empatados, \(\text{AUC} = (21 + 1)/24 \approx 0.92\). Isso é exatamente a estatística U de Mann–Whitney dividida por \(P \cdot N\).

A AUC pode ser maior que 1 ou negativa?

Não. A AUC é uma probabilidade, portanto sempre está entre 0 e 1. Se o seu cálculo manual der algo fora dessa faixa, você contou os pares errado ou rotulou as classes de forma incorreta. Uma AUC abaixo de 0,5 ainda é válida matematicamente — apenas indica que seus escores ordenam na direção errada, e inverter a comparação (tratando escores menores como mais positivos) a transforma em 1 − AUC.

De quantos casos preciso para uma AUC confiável?

Não há um mínimo fixo, mas a precisão cresce lentamente. Com 10 positivos e 10 negativos, a AUC varia em degraus de 1/100, e o intervalo de confiança de 95% pode facilmente abranger 0,2 ou mais. Como regra prática, busque pelo menos 20–30 casos por classe para uma estimativa grosseira e reporte um intervalo de confiança de DeLong ou Hanley–McNeil, para que o leitor possa julgar a incerteza em vez de confiar em um único número.

Uma AUC maior é sempre um modelo melhor?

Não necessariamente. A AUC mede apenas a qualidade do ordenamento, então um modelo pode pontuar alto e ainda assim ter desempenho ruim na prática — por exemplo, com positivos raros ele pode deixar escapar muitos casos reais mantendo uma AUC alta. Ela também ignora a calibração e os custos reais dos erros. Sempre acompanhe a AUC de uma matriz de confusão em um corte realista e considere precisão, revocação ou lift para o seu problema de decisão específico.

Por que minha AUC não muda quando altero o limiar?

Isso é esperado. A AUC resume o modelo em todos os cortes possíveis de uma só vez, então nenhum limiar isolado pode afetá-la. Mudar o limiar apenas desloca você ao longo da curva ROC, mudando o ponto em que você opera — e, portanto, a matriz de confusão, a acurácia, a precisão e a revocação. Use o campo de limiar para explorar esse equilíbrio e a AUC para comparar modelos antes de escolher um.

Como o coeficiente de Gini se relaciona com a AUC?

É um reescalonamento linear: \(G = 2\times\text{AUC} - 1\). O desempenho ao acaso (AUC 0,5) corresponde a Gini 0, e um ordenamento perfeito corresponde a Gini 1. Publicações de credit scoring e de economia costumam citar o Gini ou o equivalente D de Somers, enquanto artigos de aprendizado de máquina usam a AUC — eles carregam a mesma informação, e converter entre eles é apenas essa fórmula.

Posso usar esta calculadora para mais de duas classes?

Não diretamente — a curva ROC é definida para resultados binários, então os rótulos devem ser 0 ou 1. Para um problema multiclasse, calcule uma AUC por classe com a estratégia um contra todos: trate essa classe como 1, junte todas as outras em 0 e execute o cálculo separadamente. Para resumir o resultado, faça a média das AUCs por classe, tipicamente com pesos iguais (média macro) ou ponderada pela frequência das classes.

Deixe um comentário

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