Curva ROC e calculadora AUC - Avaliação de classificador binário

Testes estatísticos avançados

Insira abaixo os escores de previsão do seu modelo e os rótulos verdadeiros para gerar uma curva ROC e calcular a área sob a curva (AUC).

Curva ROC e calculadora AUC - Avaliação de classificador binário
Testes estatísticos avançados

Digite uma observação por linha no formato 'score,label'. Os rótulos devem ser 0 ou 1. Exemplo: 0.9,1

Sobre a calculadora de curva ROC e AUC

A curva ROC (Receiver Operating Characteristic) é uma ferramenta gráfica para avaliar a capacidade de discriminação de um modelo de classificação binária em todos os possíveis limiares de decisão. Ela plota a Taxa de Verdadeiros Positivos (TPR, ou sensibilidade) no eixo y contra a Taxa de Falsos Positivos (FPR, ou 1 − especificidade) no eixo x à medida que o limiar de decisão varia de alto para baixo. Sensibilidade (TPR) é a proporção de positivos reais corretamente identificados: TPR = TP / (TP + FN). Especificidade é a proporção de negativos reais corretamente identificados: Especificidade = TN / (TN + FP). A FPR = 1 − Especificidade = FP / (TN + FP). Um classificador perfeito passaria pelo canto superior esquerdo (FPR = 0, TPR = 1), enquanto a curva ROC de um classificador aleatório fica na diagonal de (0,0) a (1,1). A Área Sob a Curva ROC (AUC) resume o desempenho geral de classificação em um único escalar. Uma AUC de 1.0 representa discriminação perfeita; 0.5 representa ausência de discriminação (equivalente a chutar aleatoriamente). Convencionalmente: AUC ≥ 0.9 é excelente, 0.8–0.9 é boa, 0.7–0.8 é razoável e abaixo de 0.7 é fraca. Esta calculadora calcula a AUC usando a regra do trapézio, que integra a área sob a curva ROC em degraus. Ela também identifica o limiar de decisão ideal usando a estatística J de Youden (J = sensibilidade + especificidade − 1), que maximiza a soma de sensibilidade e especificidade e fornece um ponto operacional equilibrado. Curvas ROC e AUC são métricas padrão de avaliação em diagnóstico médico (onde classificadores separam pacientes doentes de saudáveis), aprendizado de máquina (avaliação de modelos de classificação binária) e score de crédito. Diferentemente da acurácia, a AUC é insensível ao desequilíbrio de classes, tornando-a particularmente valiosa quando os casos positivos são raros. Esta ferramenta aceita qualquer lista de pares score-rótulo. Os scores podem ser probabilidades, valores de logit ou qualquer classificação contínua. Os rótulos devem ser 0 (classe negativa) ou 1 (classe positiva). A tabela de resultados mostra todos os pontos operacionais da ROC, com a linha do limiar ideal destacada para fácil consulta.

Exemplos de curva ROC

Estes exemplos mostram como os valores de AUC correspondem a diferentes níveis de desempenho do classificador.

Pares Score, RótuloAUCInterpretação
0.9,1 / 0.8,1 / 0.3,0 / 0.2,0AUC = 1.0Classificador perfeito
0.9,1 / 0.8,1 / 0.75,1 / 0.6,0 / 0.55,1 / 0.45,0 / 0.4,0 / 0.35,0AUC ≈ 0.9375Discriminação excelente
0.9,0 / 0.8,1 / 0.7,0 / 0.6,1 / 0.5,0 / 0.4,1AUC ≈ 0.33Ordenação inversa — pior que o acaso

Como usar esta calculadora

  1. Digite uma observação por linha no formato 'score,label', em que score é uma previsão numérica e label é 0 ou 1.
  2. Garanta que seus dados incluam exemplos positivos (label=1) e negativos (label=0).
  3. Clique em 'Calcular' para obter a AUC e gerar os pontos da curva ROC.
  4. Revise o valor da AUC e sua interpretação qualitativa (excelente, boa, razoável ou fraca).
  5. Encontre a linha do limiar ideal (destacada na tabela) para o melhor equilíbrio entre sensibilidade e especificidade.

Perguntas frequentes

O que é AUC e por que ela é importante?
A AUC (Área Sob a Curva ROC) mede a capacidade de um classificador de ranquear instâncias positivas acima das negativas em todos os limiares. Ela é independente do limiar e robusta ao desequilíbrio de classes, sendo uma referência padrão para modelos de classificação binária em medicina, aprendizado de máquina e finanças.
O que significa uma AUC de 0.5?
Uma AUC de 0.5 significa que o classificador não faz melhor do que chutar aleatoriamente — ele ranqueia instâncias positivas e negativas de forma aleatória. Qualquer AUC abaixo de 0.5 sugere que o classificador está sistematicamente errado, e inverter suas previsões geraria desempenho acima do acaso.
Como o limiar ideal é selecionado?
Esta calculadora usa a estatística J de Youden (J = sensibilidade + especificidade − 1) para selecionar o limiar ideal. Ela maximiza a soma de sensibilidade e especificidade, fornecendo um ponto operacional equilibrado. Critérios alternativos, como minimizar custo ou maximizar o F1-score, podem produzir limiares ideais diferentes dependendo da aplicação.
A AUC pode ser usada para classificação multiclasse?
A AUC padrão é definida para classificação binária. Em problemas multiclasse, pode-se calcular uma AUC one-vs-rest para cada classe separadamente ou relatar uma AUC macro ou ponderada. Esta calculadora suporta apenas classificação binária (rótulos 0 e 1).
Qual é a diferença entre sensibilidade e especificidade?
Sensibilidade (recall ou TPR) mede quão bem o classificador detecta verdadeiros positivos: TP / (TP + FN). Especificidade mede quão bem ele evita falsos alarmes: TN / (TN + FP). Alta sensibilidade é crucial quando perder um caso positivo é caro (por exemplo, rastreamento de doenças). Alta especificidade é importante quando falsos positivos são caros (por exemplo, testes confirmatórios).
A AUC é sempre a melhor métrica para avaliação de modelo?
A AUC é excelente para comparar modelos entre limiares e para conjuntos de dados desbalanceados, mas nem sempre é a melhor escolha. Para dados muito desbalanceados, a área sob a curva Precision-Recall (PR-AUC) costuma ser mais informativa. Para um limiar de decisão específico, métricas como F1-score, acurácia ou coeficiente de correlação de Matthews podem ser mais relevantes.