Imagem do artigo Avaliação de Modelos e Métricas de Desempenho: Métricas de classificação

25.3. Avaliação de Modelos e Métricas de Desempenho: Métricas de classificação

Página 76 | Ouça em áudio

25.3 Avaliação de Modelos e Métricas de Desempenho: Métricas de Classificação

Avaliar a eficácia de modelos de classificação é uma etapa crucial no processo de aprendizado de máquina. Ao construir modelos preditivos, é importante não apenas ajustar os dados ao modelo, mas também garantir que o modelo tenha um desempenho bom e confiável quando exposto a novos dados. Para isso, utilizam-se várias métricas de desempenho que fornecem diferentes perspectivas sobre a eficácia do modelo. Nesta seção, exploraremos as métricas de classificação mais comuns e como elas podem ser usadas para avaliar modelos em Python.

Matriz de Confusão

Antes de mergulhar nas métricas individuais, é essencial entender a matriz de confusão, que é a base para a maioria das métricas de avaliação em problemas de classificação. A matriz de confusão é uma tabela que mostra as frequências de previsão versus as frequências reais para cada classe. Ela é dividida em quatro quadrantes:

  • Verdadeiros Positivos (VP): casos em que o modelo previu corretamente a classe positiva;
  • Falsos Positivos (FP): casos em que o modelo previu incorretamente a classe positiva;
  • Verdadeiros Negativos (VN): casos em que o modelo previu corretamente a classe negativa;
  • Falsos Negativos (FN): casos em que o modelo previu incorretamente a classe negativa.

Acurácia

A acurácia é a medida mais intuitiva de desempenho e é simplesmente a proporção de previsões corretas (tanto positivas quanto negativas) em relação ao total de previsões feitas. É calculada pela fórmula:

Acurácia = (VP + VN) / (VP + FP + FN + VN)

Embora a acurácia seja uma métrica útil, ela pode ser enganosa em conjuntos de dados desequilibrados, onde uma classe é muito mais frequente do que a outra.

Precisão

A precisão é a proporção de previsões positivas corretas em relação ao total de previsões positivas feitas pelo modelo. Ela é calculada pela fórmula:

Precisão = VP / (VP + FP)

Esta métrica é particularmente útil quando o custo de um falso positivo é alto.

Recall (Sensibilidade)

O recall, também conhecido como sensibilidade ou taxa de verdadeiro positivo, é a proporção de casos positivos reais que foram corretamente identificados pelo modelo. É calculado pela fórmula:

Recall = VP / (VP + FN)

Esta métrica é importante quando o custo de um falso negativo é alto.

Especificidade

A especificidade, ou taxa de verdadeiro negativo, mede a proporção de casos negativos reais que foram corretamente identificados. É o complemento do recall para a classe negativa e é calculado pela fórmula:

Especificidade = VN / (VN + FP)

Pontuação F1

A pontuação F1 é a média harmônica entre precisão e recall, fornecendo um único número que leva em conta ambas as métricas. Ela é particularmente útil quando se deseja encontrar um equilíbrio entre precisão e recall. A pontuação F1 é calculada pela fórmula:

F1 = 2 * (Precisão * Recall) / (Precisão + Recall)

Curva ROC e Área Sob a Curva (AUC)

A curva Característica de Operação do Receptor (ROC) é um gráfico que mostra o desempenho de um modelo de classificação em todos os limiares de classificação. Esta curva traça a taxa de verdadeiro positivo (Recall) contra a taxa de falso positivo (1 - Especificidade) em diferentes pontos de corte. A área sob a curva ROC (AUC) é uma medida de desempenho do modelo que resume a curva ROC em um único valor, variando de 0 a 1. Um modelo com AUC de 1 é perfeito, enquanto um modelo com AUC de 0,5 não tem capacidade de discriminação, equivalendo a um palpite aleatório.

Implementação em Python

Em Python, a biblioteca scikit-learn oferece ferramentas para calcular essas métricas facilmente. Por exemplo, a matriz de confusão pode ser obtida usando a função confusion_matrix, e a acurácia pode ser calculada com accuracy_score. A precisão, recall e pontuação F1 podem ser calculados usando as funções precision_score, recall_score e f1_score, respectivamente. A função roc_auc_score pode ser usada para calcular a AUC da curva ROC.

Ao avaliar modelos de classificação, é crucial considerar a natureza do problema e o custo relativo de falsos positivos e falsos negativos. Nem sempre a métrica mais alta é a melhor escolha, e muitas vezes é necessário encontrar um equilíbrio entre diferentes métricas para obter o melhor desempenho prático.

Em resumo, a avaliação de modelos de classificação é uma parte essencial do desenvolvimento de modelos preditivos. As métricas de classificação fornecem insights valiosos sobre o desempenho do modelo e ajudam a identificar áreas onde o modelo pode ser melhorado. Ao entender e aplicar essas métricas corretamente, os cientistas de dados podem desenvolver modelos mais robustos e confiáveis para suas aplicações analíticas.

Agora responda o exercício sobre o conteúdo:

Qual das seguintes afirmações sobre a matriz de confusão é INCORRETA?

Você acertou! Parabéns, agora siga para a próxima página

Você errou! Tente novamente.

Imagem do artigo Avaliação de Modelos e Métricas de Desempenho: Métricas de regressão

Próxima página do Ebook Gratuito:

77Avaliação de Modelos e Métricas de Desempenho: Métricas de regressão

5 minutos

Ganhe seu Certificado deste Curso Gratuitamente! ao baixar o aplicativo Cursa e ler o ebook por lá. Disponível na Google Play ou App Store!

Disponível no Google Play Disponível no App Store

+ de 6,5 milhões
de alunos

Certificado Gratuito e
Válido em todo o Brasil

48 mil exercícios
gratuitos

4,8/5 classificação
nas lojas de apps

Cursos gratuitos em
vídeo, áudio e texto