A seção anterior apresentou um conjunto de métricas de modelo, todas calculadas em um único valor de limite de classificação. No entanto, se você quiser avaliar a qualidade de um modelo em todos os limites possíveis, vai precisar de ferramentas diferentes.
Curva de característica de operação do receptor (ROC)
A curva ROC é uma representação visual da performance do modelo em todos os limites. A versão longa do nome, característica de operação do receptor, é uma retenção da detecção de radar da Segunda Guerra Mundial.
A curva ROC é desenhada calculando a taxa de verdadeiros positivos (TPR, na sigla em inglês) e a taxa de falsos positivos (FPR, na sigla em inglês) em todos os limites possíveis (na prática, em intervalos selecionados) e, em seguida, representando a TPR em relação à FPR. Um modelo perfeito, que em algum limite tem um TPR de 1,0 e um FPR de 0,0, pode ser representado por um ponto em (0, 1) se todos os outros limites forem ignorados ou pelo seguinte:

Área sob a curva (AUC)
A área sob a curva ROC (AUC) representa a probabilidade de o modelo, se receber um exemplo positivo e negativo escolhido aleatoriamente, classificar o positivo como melhor do que o negativo.
O modelo perfeito acima, que contém um quadrado com lados de comprimento 1, tem uma área sob a curva (AUC) de 1,0. Isso significa que há uma probabilidade de 100% de que o modelo classifique corretamente um exemplo positivo escolhido aleatoriamente com uma classificação mais alta do que um exemplo negativo escolhido aleatoriamente. Em outras palavras, analisando a distribuição dos pontos de dados abaixo, o AUC indica a probabilidade de o modelo colocar um quadrado escolhido aleatoriamente à direita de um círculo escolhido aleatoriamente, independente de onde o limite é definido.
Em termos mais concretos, um classificador de spam com AUC de 1,0 sempre atribui a um e-mail de spam aleatório uma probabilidade maior de ser spam do que um e-mail legítimo aleatório. A classificação real de cada e-mail depende do limite escolhido.
Para um classificador binário, um modelo que funciona exatamente como palpites aleatórios ou cara ou coroa tem um ROC que é uma linha diagonal de (0,0) a (1,1). O AUC é 0,5, representando uma probabilidade de 50% de classificar corretamente um exemplo positivo e negativo aleatório.
No exemplo do classificador de spam, um classificador de spam com AUC de 0,5 atribui a um e-mail de spam aleatório uma probabilidade maior de ser spam do que um e-mail legítimo aleatório apenas metade do tempo.

(Opcional, avançado) Curva de precisão/recall
A AUC e a ROC funcionam bem para comparar modelos quando o conjunto de dados está aproximadamente equilibrado entre as classes. Quando o conjunto de dados está desequilibrado, as curvas de precisão-recall (PRCs, na sigla em inglês) e a área abaixo dessas curvas podem oferecer uma visualização comparativa melhor da performance do modelo. As curvas de precisão/recall são criadas ao representar a precisão no eixo y e o recall no eixo x em todos os limites.

AUC e ROC para escolher o modelo e o limite
A AUC é uma medida útil para comparar a performance de dois modelos diferentes, desde que o conjunto de dados esteja aproximadamente equilibrado. O modelo com maior área sob a curva geralmente é o melhor.


Os pontos na curva ROC mais próximos de (0,1) representam um intervalo dos limites de melhor desempenho para o modelo. Conforme discutido nas seções Limites, Matriz de confusão e Escolha de métrica e vantagens e desvantagens, o limite escolhido depende de qual métrica é mais importante para o caso de uso específico. Considere os pontos A, B e C no diagrama a seguir, cada um representando um limite:

Se os falsos positivos (alarmes falsos) forem muito caros, pode ser sensato escolher um limite que ofereça uma FPR menor, como o do ponto A, mesmo que a TPR seja reduzida. Por outro lado, se os falsos positivos forem baratos e os falsos negativos (falhas de verdadeiros positivos) forem muito caros, o limite para o ponto C, que maximiza a TPR, pode ser preferível. Se os custos forem aproximadamente equivalentes, o ponto B pode oferecer o melhor equilíbrio entre TPR e FPR.
Confira a curva ROC dos dados que vimos anteriormente:
Exercício: testar seu conhecimento








(Opcional, avançado) Pergunta bônus
Imagine uma situação em que é melhor permitir que algum spam chegue à caixa de entrada do que enviar um e-mail essencial para a pasta de spam. Você treinou um classificador de spam para essa situação em que a classe positiva é spam e a classe negativa é não spam. Qual dos pontos a seguir na curva ROC do seu classificador é preferível?
