Precision, Recall ou F1-Score ? Qual a melhor métrica para utilizar em seu modelo?

Fala galera dos dados! vamos falar aqui sobre três métricas de classificação para serem utilizadas em seus modelos da melhor forma e atender corretamente o problema de negócio que você deseja solucionar.

Djalma Junior
comunidadeds
7 min readJun 9, 2022

--

Conteúdo | Djalma Junior

Matriz de Confusão

Matriz de Confusão de fato é onde toda análise se inicia, através dela é possível identificar os Verdadeiros Negativos(TN), Falsos Positivos(FP), Falsos Negativos(FN), Verdadeiros Positivos(TP) e com isso é possível entender como as métricas surgem.

Existem quatro tipos de combinações de matriz, veja abaixo quais são elas:

Tipos de matrizes | Samarth Agrawal

Nesta abordagem vamos utilizar a variação ‘‘D’’, pois é assim que o sklearn mostra a matriz.

Precision

Precision pode ser interpretada como: de todas as predições corretas, quantas delas foram preditas pelo modelo corretamente. Precisão diz o quanto ele é confiável ao classificar.

Formula da métrica precision | Djalma Junior

Veja abaixo o exemplo de como isto ocorre:

Exemplo real de como a precision funciona | Djalma Junior

Pontos de atenção

  • Pode ser usado como uma única métrica para avaliar modelos de classificação.
  • Bons modelos podem não encontrar todos os positivos, mas espera-se que os previstos sejam os mais corretos.
  • Modelos ruins podem encontrar muitos positivos, mas muitos deles são falsos positivos

Recall

A maneira como interpretar essa métrica é a seguinte: de todas as previsões positivas, quais delas são realmente verdadeiras. Recall do modelo diz à respeito de sua completude: tudo o que é certo ele consegue classificar. Recall nos mostra tambem o quanto do espaço de possibilidades o modelo consegue compreender.

Formula da métrica precision | Djalma Junior

Veja abaixo o exemplo de como isto ocorre:

Exemplo real de como a recall funciona | Djalma Junior

Pontos de atenção

  • Pode ser usado como uma única métrica de classificação.
  • Um modelo com um alto recall é capaz de encontrar a maioria dos casos verdadeiros.
  • Um modelo com baixo recall não consegue encontrar casos reais.

Trade-off entre precision e recall

Em um mundo ideal é possível encontrar todos os verdadeiros positivos (precisão) e apenas verdadeiros positivos (recall), infelizmente na realidade isso não ocorre facilmente, devido a esse problema é necessário um trade-off.

O trade off entre precisão e recall acontece quando no negócio um deles é mais exigido que o outro. Considere um banco que deseja saber o número de clientes churn, foi feita uma amostra de 2000 clientes.

Matriz de confusão | Djalma Junior

A precision medirá os clientes corretos propensos a deixar o banco comparado a todos os clientes.

Tabela para calculo de Precision | Djalma Junior
  • Por exemplo, foi identificado que 212 dos 278 clientes querem sair, então a precisão do banco em identificar seus clientes é de 74%.

Caso contrário, a recall identifica todos os clientes que realmente deixaram o banco, quantos foram identificados corretamente.

  • Os clientes de churn do banco na verdade são 212 dos 407 previstos, então o recall é de 52%.
Tabela para calculo de Recall | Djalma Junior

Neste caso, precision é a métrica que o banco está procurando, pois a precision localiza entre os clientes que querem sair quais foram preditos de forma correta, veja que o mais importante para o banco é prever quem tem a potencial saída, pois os que ja sairam ja não são mais clientes.

Agora surge o seguinte questionamento: e se eu quiser aumentar a precision?! veja abaixo o que acontece se eu mudar o threshold em prol de conseguir este feito.

Ajuste de threshold | Djalma Junior

O resultado ficou ótimo por outro lado veja o impacto que causou na recall

Ajuste de threshold | Djalma Junior

Portanto, para aumentar esta precision sem duvidas a recall tera que diminuir e veice-versa. O que de fato desloca esta linha do modelo, tanto para um lado quanto para o outro é o que chamamos threshold ele é a chave de movimento para favorecer uma das métricas.

F1-Score

Além de Precision e Recall temos também o F-score que consiste na média harmônica entre elas, é uma métrica útil quando um se deseja a unificação das métricas.

Formula do F1-Score | Djalma Junior

Para o F1-Score temos quatro tipos de medidas: por classe, micro, macro e ponderada. Vamos falar sobre elas.

Relatorio de classificação | Djalma Junior

Podemos ver pela tabela acima que as classes estão desbalanceadas (uma das classes aparece muito mais que a outra), isso impactará diretamente nos resultados.

Por Classe

No F1-Score há uma medida por classe(0, 1), que pode ser vista pelo relatório de classificação do sklearn. Se você estiver assumindo uma métrica unificada, isso servirá perfeitamente.

Como F1 é uma média entre precision e recall, ela lidará com o mesmo peso para ambos. Então os cenários podem ser assim:

  • F1-Score baixo se recall e precision tiverem valores baixos.
  • F1-Score Alto se o recall e a precision tiverem valores altos.
  • F1-Score Médio se tanto o recall quanto a precision tiverem valor baixo ou se um deles for alto e o outro baixo.

Macro Média

Macro Average é a conhecida média aritmética, a soma de todas as classes médias divididas pelo total de classes, ela não levará em consideração os valores amostrais, tratando as classes igualmente.

Média ponderada

A média ponderada é calculada tomando-se a média da frequência de todas as classes da amostra. Veja a tabela abaixo para ver como funciona.

Tabela com calculo da media ponderada | Djalma Junior

Considere uma amostra desequilibrada, esta métrica atribuiu peso à medida que cada classe aparecer, útil para lidar com o desequilíbrio sendo mais justo com as classes minoritarias.

Micro Média

A micro média pode ser considerada como a precisão do modelo, uma vez que ambos são calculados com base na soma dos Verdadeiros Positivos (**TP**), Falsos Negativos (**FN**) e Falsos Positivos(**FP** ). De fato micro é uma boa métrica se o conjunto de dados estiver balanceado.

Acurácia serve para medir em porcentagem o quanto as previsões estão corretas em comparação com a resposta verdadeira.

Observações para escolher a métrica!

Esta decisão sempre precisa estar alinhada com o negócio, pois a partir disso você saberá se são permitidos falsos positivos ou não, se é preciso acertar todos os verdadeiros positivos da amostra.

Como visto no exemplo que foi abordado clientes propensos a sair do banco, o mais interessante foi usar a precision para mapear os possiveis clientes propensos, por outro lado em uma clinica de doenças cardiovascular o ideal é a recall, pois há a necessidade de tratar apenas os pacientes com a doença.

Dica para nunca esquecer sobre Precision

  • PRECISION = TRUCK SIDE

Dica para nunca esquecer sobre recall

  • RECALL=ALL TRUCKS

Enquanto a precisão se refere à porcentagem de seus resultados que são relevantes, o recall se refere à porcentagem do total de resultados relevantes classificados corretamente pelo seu algoritmo.

Em geral para F1-Score, se você estiver trabalhando com um conjunto de dados desequilibrado em que todas as classes são igualmente importantes, usar a média macro seria uma boa opção, pois trata todas as classes igualmente.

Isso significa que para o nosso exemplo envolvendo a classificação de aviões, barcos e carros, usaríamos a pontuação macro-F1.

Se você tiver um conjunto de dados desequilibrado, mas quiser atribuir uma contribuição maior a classes com mais exemplos no conjunto de dados, a média ponderada é preferível.

Isso porque, na média ponderada, a contribuição de cada classe para a média da F1 é ponderada pelo seu tamanho.

Suponha que você tenha um conjunto de dados balanceado e queira uma métrica facilmente compreensível para o desempenho geral, independentemente da classe. Nesse caso, você pode ir com precisão, que é essencialmente apontuação de micro F1.

Ufaaa, chegamos ao fim, agradeço pelo seu tempo!!!

aaaah e antes de você ir me adicione no linkedin, bora pra cima!!! https://www.linkedin.com/in/djalmajunior07/

--

--