Curva ROC e área sob a curva (AUC): como interpretar
A curva ROC mostra, para todos os pontos de corte possíveis de um teste contínuo, a troca entre sensibilidade e taxa de falsos positivos. A AUC resume essa curva num número entre 0,5 (acaso) e 1,0 (perfeito) e equivale à probabilidade de o teste dar um valor maior a um doente do que a um não doente. A AUC mede discriminação, não depende da prevalência e não avalia calibração nem valor preditivo. Relate-a sempre com intervalo de confiança de 95%, deixe claro se o ponto de corte foi pré-especificado ou derivado dos dados, e não confunda AUC alta com utilidade clínica.
Quando um exame produz um valor contínuo — um marcador laboratorial, um escore de risco, a probabilidade de saída de um modelo — e você quer saber o quanto ele separa doentes de não doentes, a ferramenta é a curva ROC (receiver operating characteristic) e seu resumo, a área sob a curva (AUC). É um dos gráficos mais pedidos em projetos de acurácia diagnóstica e de modelos de predição, e interpretá-lo bem evita conclusões exageradas sobre a "acurácia" de um marcador. Este guia percorre, do começo ao fim, o que a curva significa, como construí-la, como escolher um ponto de corte, como comparar testes, o que a AUC não diz e como relatar tudo de forma defensável perante um revisor.
O nome curioso — receiver operating characteristic — vem da engenharia de radar da Segunda Guerra Mundial, quando operadores precisavam decidir se um sinal na tela era um avião inimigo ou apenas ruído. A mesma matemática que descrevia a troca entre detectar o alvo e disparar alarmes falsos migrou para a psicofísica e, nas décadas seguintes, para a medicina diagnóstica. A pergunta de fundo é sempre a mesma: onde colocar a linha que separa "sinal" de "ruído", sabendo que qualquer linha erra para os dois lados.
De onde vem a curva
Todo ponto de corte aplicado a um teste contínuo transforma o resultado em "positivo" ou "negativo" e gera uma tabela 2×2 comparando a classificação do teste com o padrão de referência (o desfecho verdadeiro). Dessa tabela saem duas medidas fundamentais:
- Sensibilidade — a proporção de doentes corretamente identificados como positivos (verdadeiros positivos ÷ total de doentes).
- Especificidade — a proporção de não doentes corretamente classificados como negativos (verdadeiros negativos ÷ total de não doentes).
Cada corte produz um par (sensibilidade, especificidade) diferente. Um corte baixo classifica quase todo mundo como positivo: captura praticamente todos os doentes (sensibilidade alta), mas às custas de muitos falsos positivos (especificidade baixa). Um corte alto faz o oposto. A curva ROC nasce de varrer o ponto de corte por toda a faixa de valores do teste e marcar, para cada um, a sensibilidade (eixo y) contra a taxa de falsos positivos, que é 1 − especificidade (eixo x). Cada ponto da curva é, portanto, um corte possível, e a curva inteira descreve o comportamento do teste em qualquer limiar.
A diagonal que liga o canto inferior esquerdo ao superior direito representa um teste sem poder de discriminação — equivalente a jogar uma moeda. Quanto mais a curva se afasta dessa diagonal em direção ao canto superior esquerdo (sensibilidade 1, falsos positivos 0), melhor o teste separa os dois grupos.
Construindo a curva passo a passo
Imagine um marcador medido em 100 pessoas, 40 com a doença e 60 sem. O procedimento é mecânico:
- Ordene todos os valores observados do marcador.
- Use cada valor (na prática, cada valor único) como um possível ponto de corte.
- Para cada corte, monte a 2×2 e calcule sensibilidade e 1 − especificidade.
- Plote os pontos e ligue-os: surge a curva em escada característica.
Com dados reais e amostras finitas, a ROC é uma função em degraus; softwares estatísticos a suavizam ou a mantêm empírica conforme o método. O ponto extremo inferior esquerdo (corte tão alto que ninguém é positivo) tem sensibilidade 0 e especificidade 1; o extremo superior direito (corte tão baixo que todos são positivos) tem sensibilidade 1 e especificidade 0. Entre esses extremos mora a informação útil.
Um exemplo numérico
Suponha um marcador testado em 200 pacientes, 80 com a doença e 120 sem. Escolhemos três cortes possíveis e montamos a 2×2 de cada um. Os resultados hipotéticos:
| Ponto de corte | Sensibilidade | Especificidade | 1 − especificidade |
|---|---|---|---|
| Baixo (captura muito) | 0,95 | 0,50 | 0,50 |
| Intermediário | 0,85 | 0,80 | 0,20 |
| Alto (exige muito) | 0,55 | 0,96 | 0,04 |
Cada linha vira um ponto no gráfico: (0,50; 0,95), (0,20; 0,85) e (0,04; 0,55). Ligando esses pontos aos extremos (0,0) e (1,1) e a todos os outros cortes possíveis, obtém-se a curva. O corte intermediário, nesse exemplo, é o mais próximo do canto superior esquerdo e teria o maior índice de Youden (0,85 + 0,80 − 1 = 0,65) — mas note como o corte alto quase elimina falsos positivos ao custo de perder quase metade dos doentes. Qual escolher não é uma decisão estatística: é clínica.
O que a AUC mede
A área sob a curva resume a ROC inteira em um único número entre 0 e 1 (na prática, entre 0,5 e 1, já que um teste pior que o acaso pode ser simplesmente invertido). Sua interpretação mais precisa e mais útil de comunicar é probabilística: a AUC é a probabilidade de o teste atribuir um valor mais alto a um doente escolhido ao acaso do que a um não doente também escolhido ao acaso. Uma AUC de 0,82 significa que, tomando um doente e um sadio ao acaso, em 82% das vezes o doente terá o valor mais alto do marcador.
Essa definição não é coincidência: a AUC é matematicamente equivalente à estatística U de Mann-Whitney normalizada — a mesma que fundamenta o teste não paramétrico de comparação de dois grupos. Por isso a AUC mede discriminação: a capacidade de ordenar corretamente doentes acima de sadios, independentemente de onde se coloque o corte.
| AUC | Interpretação convencional |
|---|---|
| 0,5 | Nenhuma discriminação (acaso) |
| 0,7 – 0,8 | Discriminação aceitável |
| 0,8 – 0,9 | Boa |
| > 0,9 | Excelente |
Esses limiares são convenções de orientação, não regras absolutas. O que conta como "bom" depende do que o teste vai decidir na prática: em rastreamento populacional, uma AUC de 0,75 pode ser insuficiente; para um marcador de pesquisa exploratória, pode ser promissora. Nunca reporte a AUC isolada de seu contexto.
A Evidens calcula sensibilidade, especificidade, AUC com intervalo de confiança, ponto de corte ótimo e gera a curva ROC pronta para o artigo — método e figuras entregues a você, que continua único autor do trabalho.
Solicitar orçamento
A AUC precisa vir com intervalo de confiança
A AUC é uma estimativa obtida em uma amostra; em outra amostra da mesma população, ela seria um pouco diferente. Por isso deve sempre vir acompanhada de um intervalo de confiança de 95%. Uma AUC de 0,82 com IC de 0,78 a 0,86 numa amostra grande é uma coisa; a mesma 0,82 com IC de 0,62 a 0,95 numa amostra pequena diz muito menos — o intervalo largo revela que o teste pode, na verdade, ser apenas razoável.
Há duas formas usuais de obter esse intervalo: o método de DeLong, que usa a teoria da estatística U e é o padrão na maioria dos softwares, e o bootstrap, que reamostra os dados milhares de vezes e é útil quando as suposições do método analítico são frágeis ou quando se quer intervalo para o ponto de corte ótimo. Amostras pequenas, poucos eventos ou desfechos muito desbalanceados alargam o intervalo — motivo pelo qual o tamanho amostral deve ser pensado antes de o estudo começar, não depois.
Quantos casos são necessários?
Não é o total de participantes que determina a precisão da AUC, e sim o número de doentes e de não doentes — o grupo menor costuma ser o gargalo. Um estudo com 500 pessoas mas apenas 15 eventos estimará a AUC com enorme incerteza. Métodos clássicos, como as fórmulas de Hanley e McNeil, permitem calcular o tamanho amostral para uma largura de intervalo desejada ou para detectar uma diferença mínima entre duas AUCs; em modelos de predição, seguem-se recomendações específicas de número mínimo de eventos por variável candidata para evitar superajuste. Planejar isso na fase de desenho evita o desfecho frustrante de uma AUC promissora, porém com intervalo de confiança inconclusivo.
Discriminação não é calibração
Este é o ponto mais mal compreendido da AUC. Discriminação e calibração são propriedades diferentes de um teste ou modelo:
- Discriminação (o que a AUC mede) — o teste consegue separar quem tem de quem não tem o desfecho?
- Calibração — as probabilidades previstas batem com as frequências observadas? Quando o modelo diz "30% de risco", cerca de 30% desses pacientes realmente têm o evento?
Um modelo pode discriminar bem (AUC alta) e ser mal calibrado — sistematicamente super ou subestimando o risco. A AUC é cega a isso, porque depende apenas da ordenação dos valores, não de sua magnitude absoluta. Por isso, em modelos de predição clínica, avalia-se a calibração à parte, com o gráfico de calibração (previsto versus observado) e medidas como o intercepto e a inclinação de calibração; o antigo teste de Hosmer-Lemeshow é limitado e cada vez menos recomendado isoladamente. Um modelo verdadeiramente útil precisa das duas coisas: discriminar e calibrar.
AUC não depende da prevalência — valores preditivos sim
Uma propriedade central da ROC: a curva e a AUC não variam com a prevalência da doença, porque sensibilidade e especificidade são calculadas dentro de cada grupo (doentes e não doentes, separadamente). Isso as torna atraentes para comparar testes entre estudos com composições diferentes.
Mas atenção ao que o clínico realmente quer saber: "dado um resultado positivo, qual a chance de este paciente ter a doença?" Isso é o valor preditivo positivo, e ele depende fortemente da prevalência. Um teste com AUC de 0,90 e especificidade de 90% pode ter valor preditivo positivo baixíssimo se a doença for rara: numa população com 1% de prevalência, a maioria dos positivos serão falsos positivos, simplesmente porque há muito mais sadios do que doentes. Uma AUC alta não garante bom desempenho na ponta clínica — é preciso traduzir sensibilidade e especificidade em valores preditivos usando a prevalência da população-alvo.
Curva ROC × curva precisão-recall
Justamente por a ROC ignorar a prevalência, ela pode ser enganosamente otimista quando o desfecho é raro e as classes são muito desbalanceadas — situação comum em rastreamento e em muitos problemas de aprendizado de máquina. Nesses casos, a curva precisão-recall costuma ser mais informativa: ela cruza a precisão (valor preditivo positivo) com o recall (sensibilidade), ambos sensíveis à proporção de positivos. Se o seu problema tem 2% de eventos, reporte a curva precisão-recall ao lado da ROC; uma AUC-ROC de 0,95 pode conviver com uma precisão sofrível.
Escolhendo o ponto de corte
A AUC avalia o teste como um todo, em todos os cortes; para usar o teste na prática, é preciso fixar um ponto de corte. E aqui não existe corte universalmente "melhor": aumentar a sensibilidade custa especificidade e vice-versa. Alguns critérios comuns:
- Índice de Youden (sensibilidade + especificidade − 1) — escolhe o ponto que maximiza a soma das duas; geometricamente, o ponto mais distante da diagonal. É o critério mais reportado, mas trata falsos positivos e falsos negativos como igualmente ruins.
- Menor distância ao canto superior esquerdo — alternativa geométrica ao Youden, com resultado quase sempre parecido.
- Sensibilidade (ou especificidade) fixa — quando a decisão clínica exige, por exemplo, não perder mais que 5% dos casos, fixa-se a sensibilidade desejada e lê-se a especificidade correspondente.
- Critério de custo — pondera explicitamente o custo clínico de cada tipo de erro.
A escolha deve pesar o custo clínico de cada erro. Para rastrear uma doença grave e tratável, prioriza-se a sensibilidade (não perder casos, aceitando mais falsos positivos); para confirmar antes de uma intervenção arriscada, prioriza-se a especificidade. E há uma armadilha estatística importante: um corte "otimizado" no mesmo conjunto de dados em que é testado tende a parecer melhor do que será em dados novos — é o otimismo por superajuste. Sempre que possível, o corte deve ser pré-especificado ou validado em dados independentes.
Comparando dois testes ou modelos
Quando você tem dois marcadores e quer saber qual discrimina melhor, comparar duas AUCs exige cuidado com a correlação entre elas. Se os dois testes foram medidos nos mesmos indivíduos (o caso mais comum), as AUCs são pareadas e a comparação correta usa o teste de DeLong, que leva essa dependência em conta; comparar por intervalos de confiança sobrepostos, ignorando o pareamento, é incorreto e conservador demais.
Além do ΔAUC, em modelos de predição usam-se métricas de reclassificação — o NRI (net reclassification improvement) e o IDI (integrated discrimination improvement) — para capturar ganhos que a AUC, por ser pouco sensível a pequenas melhorias, às vezes não evidencia. Nenhuma dessas medidas substitui a pergunta final: o novo marcador muda condutas e melhora desfechos?
AUC em regressão logística e de Cox
A ROC não se restringe a marcadores isolados: ela avalia qualquer escore contínuo, inclusive a probabilidade prevista por um modelo. Na regressão logística, a AUC do modelo é numericamente igual ao índice-c (c-statistic), a medida padrão de discriminação de modelos binários. Na regressão de Cox, para desfechos de tempo até o evento com censura, o equivalente é o índice-c de Harrell, e existem versões de ROC dependente do tempo que avaliam a discriminação em horizontes específicos (por exemplo, sobrevida em 1 e 5 anos) — úteis quando o risco muda ao longo do seguimento, tema também tratado na curva de Kaplan-Meier.
ROC em aprendizado de máquina e problemas multiclasse
Em modelos de aprendizado de máquina, a AUC-ROC é uma das métricas de avaliação mais usadas justamente por não exigir a fixação de um corte e por independer da prevalência — o que facilita comparar algoritmos. Duas ressalvas importam. Primeiro, como já dito, em desfechos raros a curva precisão-recall costuma ser mais honesta. Segundo, a ROC é definida para duas classes; em problemas multiclasse, estende-se por estratégias um-contra-o-resto (uma curva por classe) ou um-contra-um, agregando as AUCs por média macro (todas as classes com o mesmo peso) ou micro (ponderada pela frequência). Reportar qual esquema de agregação foi usado é essencial: uma "AUC de 0,90" sem esse detalhe é ambígua num problema com mais de duas categorias.
Viés de espectro: por que a AUC muda entre populações
Costuma-se dizer que sensibilidade e especificidade são "propriedades fixas do teste". Na prática, não são tão fixas assim. Elas — e, por consequência, a AUC — dependem do espectro de gravidade da amostra estudada. Um marcador avaliado comparando doentes graves e hospitalizados contra pessoas jovens e saudáveis parece muito melhor (AUC inflada) do que quando é aplicado à população em que será usado de verdade, com casos leves e controles com comorbidades. Esse viés de espectro é uma das razões pelas quais AUCs de estudos iniciais tantas vezes não se confirmam. Ao ler ou desenhar um estudo, pergunte sempre: os participantes representam a população onde o teste será aplicado? A discussão detalhada está no guia de viés e fatores de confusão.
Além da AUC: benefício líquido e curva de decisão
Discriminação e calibração descrevem o desempenho estatístico, mas nenhuma responde diretamente à pergunta que importa ao paciente: usar este teste para decidir conduta traz mais benefício do que dano? A análise de curva de decisão (decision curve analysis) foi criada para isso. Ela calcula o benefício líquido de uma estratégia ao longo de diferentes limiares de probabilidade — incorporando explicitamente a troca entre tratar quem não precisa e deixar de tratar quem precisa — e compara a estratégia baseada no teste com as alternativas "tratar todos" e "não tratar ninguém". Dois modelos com AUC idêntica podem oferecer benefícios líquidos muito diferentes. Cada vez mais revistas pedem essa análise em estudos de modelos preditivos, ao lado da ROC.
AUC parcial (pAUC)
Às vezes só interessa uma faixa da curva. Num teste de rastreamento, por exemplo, apenas a região de alta especificidade é clinicamente aceitável — não adianta um ganho de sensibilidade que só aparece à custa de 40% de falsos positivos. A AUC parcial (pAUC) integra apenas o trecho de interesse da curva (por exemplo, especificidade acima de 90%), oferecendo uma comparação mais alinhada ao uso real do que a AUC global. É uma ferramenta menos comum, mas valiosa quando a decisão vive numa região específica da ROC.
Erros comuns na interpretação
- Reportar a AUC sem intervalo de confiança — esconde a incerteza, sobretudo em amostras pequenas.
- Tratar AUC alta como utilidade clínica — ignora calibração, prevalência e o benefício líquido para o paciente.
- Otimizar o corte e testá-lo nos mesmos dados — infla o desempenho; o número honesto vem da validação.
- Comparar AUCs pareadas por sobreposição de IC — em vez do teste de DeLong.
- Usar só a ROC em desfecho raro — sem a curva precisão-recall, o quadro fica otimista demais.
- Extrapolar limiares convencionais — 0,8 "boa" não significa aprovada para a prática; o contexto manda.
Como se calcula na prática
Qualquer pacote estatístico moderno traça a ROC e estima a AUC. Em R, o pacote pROC gera a curva, calcula a AUC com intervalo de confiança (DeLong ou bootstrap), identifica o ponto de Youden e compara duas curvas com o teste de DeLong; o rms e o timeROC cobrem índice-c e ROC dependente do tempo. Em Python, o scikit-learn fornece roc_curve e roc_auc_score, incluindo as variantes multiclasse. Em Stata, os comandos roctab e roccomp resolvem o caso de um ou de vários testes. O cálculo em si é trivial; o que separa um resultado publicável de um número solto é o que vem em torno dele — intervalo de confiança, escolha e justificativa do corte, validação e relato adequado. É aí que um erro metodológico custa uma revisão inteira.
O que reportar em um estudo de acurácia
Em estudos de acurácia diagnóstica, a diretriz de relato STARD pede clareza sobre: o padrão-ouro de referência e como foi aplicado; sensibilidade e especificidade no corte escolhido, com intervalos de confiança; a AUC com seu IC; como o ponto de corte foi definido e se ele foi pré-especificado ou derivado dos próprios dados; e como se lidou com resultados indeterminados e dados faltantes. Para modelos de predição, a diretriz TRIPOD acrescenta a exigência de relatar discriminação e calibração e de descrever a validação — interna (por exemplo, bootstrap) e, idealmente, externa. Reportar bem é o que separa um achado reprodutível de um número bonito que não se sustenta em dados novos. Vale revisar também nossos guias de como relatar resultados estatísticos e de viés e fatores de confusão.
Checklist antes de reportar sua ROC
- A AUC vem com intervalo de confiança de 95%?
- O padrão de referência está descrito e foi aplicado a todos?
- O ponto de corte foi pré-especificado ou derivado dos dados — e isso está dito?
- Sensibilidade e especificidade no corte escolhido estão reportadas, com IC?
- Houve alguma forma de validação (interna por bootstrap; externa, se possível)?
- Em desfecho raro, você mostrou também a curva precisão-recall?
- Para modelo de predição, avaliou calibração além da discriminação?
- A comparação de AUCs pareadas usou o teste de DeLong?
Perguntas frequentes
O que significa a área sob a curva (AUC)?
É a probabilidade de o teste dar um valor maior a um doente do que a um não doente, ambos escolhidos ao acaso. 0,5 é o acaso; 1,0, a discriminação perfeita.
Qual é um bom valor de AUC?
Como referência: ~0,5 não discrimina, 0,7–0,8 aceitável, 0,8–0,9 boa, acima de 0,9 excelente. São convenções; o que importa depende do contexto e da decisão que o teste apoia.
A AUC depende da prevalência?
Não. A AUC mede discriminação e independe da prevalência. Os valores preditivos positivo e negativo é que dependem dela.
Como escolher o melhor ponto de corte?
Não há corte universal. O índice de Youden maximiza sensibilidade + especificidade, mas a escolha deve pesar o custo de falsos positivos e negativos e, de preferência, ser pré-especificada.
Qual a diferença entre ROC e curva precisão-recall?
A ROC independe da prevalência; a precisão-recall usa valor preditivo positivo e sensibilidade e é mais informativa quando o desfecho é raro e as classes muito desbalanceadas.
AUC alta significa teste clinicamente útil?
Não necessariamente. A AUC não vê calibração nem valor preditivo. Utilidade exige avaliar calibração e o benefício líquido para o paciente.
Como comparar a AUC de dois testes?
Se medidos nos mesmos indivíduos, use o teste de DeLong para AUCs pareadas. NRI e IDI ajudam a avaliar reclassificação em modelos de predição.
AUC e índice-c são a mesma coisa?
Na regressão logística, sim: o índice-c é igual à AUC. Na regressão de Cox, o equivalente é o índice-c de Harrell, para desfechos de tempo até o evento.
A Evidens faz desenho, análise e figuras — curva ROC, AUC com IC, ponto de corte e comparação de modelos inclusos. Você continua único autor.
Solicitar