Kolmogorov-Smirnov (KS)
é uma métrica de perfomance em modelos de classificação
O que é?
Não confunda o Teste Estatístico de Kolmogorov-Smirnov com a métrica de perfomance Kolmogorov-Smirnov (KS), são coisas diferentes.
Enquanto o primeiro está interessado em avaliar se uma amostra segue uma distribuição específica, o KS - que será o assunto de hoje, é frequentemente usada para medir a capacidade de um modelo de classificação de distinguir entre duas classes. Além disso, o valor máximo do KS indica o ponto de corte onde o modelo faz a melhor distinção entre as duas classes.
Essa métrica é muito utilizada no mercado financeiro, principalmente em fintechs.
Passo a passo
Imagine que estamos criando um modelo de classificação cujo target é se um cliente vai dar churn ou não - veja que é um problema binário, podemos atribuir 1 se der churn e 0 se não.
Com o modelo criado e os valores previstos, podemos criar uma tabela com as faixas de probabilidade previstas. Veja:
Perceba que na primeira coluna temos a faixa de probabilidade prevista, por exemplo: o modelo previu com 0 a 10% de probabilidade para 89 pessoas que dariam churn e 125 que não dariam.
Na segunda e terceira coluna, temos “churn” e “não churn” representados com 1 e 0, respectivamente. Veja que o total de churn que o modelo previu é de 456 e de não churn é de 1344.
E por fim, na quarta coluna , temos o total geral agrupado por faixa de probabilidade.
Agora, iremos criar as frequências relativa das classes previstas:
Podemos fazer isso pegando a respectiva instância e dividindo pelo total geral, dessa forma:
A interpretação seria, por exemplo: na faixa de probabilidade 0.1–0.2, temos concentrado 10% dos 1’s e 14% dos 0's.
Nessa etapa, o objetivo é criar a coluna de distruibuição acumulada dos 0’s e 1's:
A frequência acumulada é a soma das frequências absolutas simples de cada variável. Na frequência absoluta acumulada, os valores numéricos são somados, acumulando, de uma variável para a outra, até a última variável estudada. Assim:
Ou seja, estou pegando a frequência observada e somando com a anterior, dessa forma, acumulando.
Veja que na faixa de probabilidade 0.5–0.6, temos 46% dos 1’s e 42% dos 0's.
Finalmente, chegamos na coluna em que iremos descobrir o KS.
Para isso, é preciso pegar a diferença absoluta entre os 1’s acumulados e 0’s acumulados. Assim:
Como podemos ver no exemplo abaixo, obtívemos um KS de 10%, que é o valor máximo da coluna.
Observação: 20% - 9% deu um resultado de 10% pois diminuímos as casas decimais, de forma que os números sejam aproximados.
Esse número categoriza-se como um KS ruim, de forma que o modelo possui um poder de discriminação ruim, ou seja, não consegue diferenciar facilmente as classes.
No mercado financeiro
Como o KS é uma métrica amplamente utilizada no mercado financeiro, irei deixar aqui uma tabela de referência do livro “Credit Scoring”:
Conclusão
Em conclusão, o Kolmogorov-Smirnov (KS) é um conceito abrangente que abrange tanto o teste estatístico desenvolvido por Andrey Kolmogorov em 1933, em colaboração com Nikolai Smirnov, quanto a métrica de desempenho em classificação utilizada em contextos como modelagem de crédito.
A métrica de desempenho KS em classificação mede a habilidade de um modelo em distinguir entre duas classes ao longo de diferentes pontos de corte.
Links e referências
Para se conectar comigo, acesse meu LinkedIn.