Area Under the Curve (AUC)
Saiba como a área sob a curva (AUC) mede o desempenho de modelos. Descubra o seu papel na classificação, nos cuidados de saúde e nas finanças utilizando o Ultralytics YOLO26.
A Área sob a curva (AUC) é uma métrica abrangente de desempenho utilizada em aprendizagem automática (ML) para avaliar o poder discriminativo de um modelo de classificação. Especificamente, mede a área bidimensional sob a curva Característica de Operação do Recetor (ROC), fornecendo um único valor escalar entre 0 e 1. Uma AUC de 1,0 indica um classificador perfeito, enquanto uma AUC de 0,5 sugere que o modelo não tem um desempenho melhor do que o acaso. Como agrega o desempenho em todos os limiares de classificação possíveis, a AUC é particularmente eficaz para avaliar as capacidades de modelação preditiva em cenários nos quais a fronteira de decisão ideal é desconhecida ou variável.
A relação entre ROC e AUC#
Para compreender plenamente a AUC, é necessário entender a curva ROC subjacente. Este gráfico representa a Taxa de Verdadeiros Positivos (Recall) em função da Taxa de Falsos Positivos em várias configurações de limiar. A AUC quantifica essencialmente a probabilidade de o modelo classificar uma instância positiva escolhida aleatoriamente acima de uma instância negativa também escolhida aleatoriamente.
- Separabilidade: A AUC mede a capacidade do modelo de distinguir entre classes (por exemplo, "cão" e "gato"). Uma maior separabilidade significa previsões melhores.
- Invariância ao limiar: Ao contrário do F1-score, que depende de um ponto de corte específico, a AUC fornece uma visão geral da qualidade do modelo.
- Invariância à escala: Mede a qualidade da ordenação das previsões, e não os seus valores absolutos de probabilidade.
Aplicações no mundo real#
A AUC é uma métrica preferencial em setores que lidam com tomadas de decisão críticas e conjuntos de dados desequilibrados, nos quais uma classe é significativamente mais rara do que a outra.
-
Diagnóstico médico: No domínio da IA na área da saúde, os modelos são treinados para identificar patologias através da análise de imagens médicas. Por exemplo, um modelo que detete tumores raros deve dar prioridade à sensibilidade. Uma AUC elevada garante que o sistema atribui de forma fiável pontuações de risco mais altas a pacientes que realmente têm a doença do que a indivíduos saudáveis, reduzindo falsos negativos perigosos.
-
Deteção de fraude financeira: As instituições financeiras utilizam IA nas finanças para detetar transações fraudulentas. Como as transações legítimas ultrapassam largamente as fraudulentas, um modelo poderia alcançar 99% de precisão simplesmente classificando tudo como "legítimo". A AUC evita esse problema ao avaliar a capacidade do modelo de separar tentativas reais de fraude do comportamento normal, independentemente da distribuição das classes.
Distinguir a AUC de métricas relacionadas#
É crucial diferenciar a AUC de outros indicadores de avaliação de modelos para escolher a ferramenta certa para o teu projeto.
- AUC vs. precisão: A precisão é simplesmente a proporção entre as previsões corretas e o total de previsões. Em conjuntos de dados muito desequilibrados, a precisão pode ser enganadoramente elevada. A AUC é robusta ao desequilíbrio entre classes, proporcionando uma avaliação mais honesta do desempenho do classificador.
- AUC vs. Precisão-Revocação: Embora a ROC-AUC seja o padrão para resultados equilibrados, a Área sob a curva Precisão-Revocação (AUPRC) é frequentemente preferida quando a classe "positiva" é extremamente rara e os falsos positivos são uma preocupação importante.
- AUC vs. mAP: Em tarefas de deteção de objetos que utilizam modelos como o YOLO26, a métrica padrão é a Precisão Média (mAP). Embora a mAP seja conceptualmente semelhante — calculando a área sob a curva Precisão-Revocação em diferentes limiares de Interseção sobre União (IoU) —, AUC refere-se estritamente à curva ROC em classificações binárias ou multiclasse.
Exemplo de Código#
O exemplo seguinte demonstra como carregar um modelo de classificação YOLO26 pré-treinado e executar a validação. Embora os modelos YOLO apresentem principalmente a precisão top-1 e top-5, o processo de validação gera os dados de previsão necessários para analisar métricas baseadas em curvas.
from ultralytics import YOLO
# Load a pre-trained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Validate the model on a standard dataset (e.g., imagenet10)
# This generates precision, recall, and accuracy metrics
results = model.val(data="imagenet10")
# Access top-1 accuracy, a key point on the ROC curve
print(f"Top-1 Accuracy: {results.top1:.4f}")
print(f"Top-5 Accuracy: {results.top5:.4f}")Para uma gestão abrangente do ciclo de vida, incluindo a anotação de conjuntos de dados e o treino na nuvem, onde estas métricas são visualizadas automaticamente, os programadores podem utilizar a Ultralytics Platform. Isto simplifica o processo de interpretação de métricas complexas como a AUC sem necessidade de cálculo manual.









