vamos começar por definir o que se entende por classificação, classificação é o processo de tentar atribuir algo a um dos grupos disponíveis. Você pode ter 2 grupos (classificação binária) ou mais de 2 grupos (classificação Multi-classe).
algoritmos de classificação incluem: (Regressão Logística, K-vizinho mais próximo, Máquina de suporte vetorial, e Bayes ingênuos…etc)
para um cientista de dados é realmente importante certificar-se de quão bom é o seu modelo de classificação. Existem algumas formas famosas possíveis de avaliar o seu modelo. Eles podem ser listados como a seguinte:
- matriz de confusão-ele pode ser calculado facilmente usando a implementação da Biblioteca Scikit-Learn. Você apenas tem que alimentá-lo um vetor que contém as previsões de sua variável dependente y ^ e um vetor de valores reais de sua variável dependente y
Agora, depois de calculado o seu confusão matriz que, vai ser um 2*2 matriz para qualquer problema de classificação binária, a matriz resultante seria assim
A confusion matrix consists of 4 values which are very valuable to know for every data scientist:
- Falso-Positivos (FP) — instâncias que são incorretamente classificado como Positivo instâncias de Classe (0,1) = 5
- Falso negativo (FN) — instâncias que são incorretamente classificado como Negativo instâncias de Classe (1,0) = 10
- Verdadeiro Positivo (TP) — instâncias foram classificadas corretamente como Positivo instâncias de Classe (1,1) = 50
- Verdadeiro Negativo (TN) — instâncias foram classificadas corretamente como Negativo instâncias de Classe (0,0) = 35
Total de ocorrências do conjunto de dados de treinamento + instâncias de teste) = 5+10+50+35 = 100
Agora, podemos calcular 2 importante percentagens:
1 – taxa de Precisão = Correto/ total = (50+35)/ 100 = 85%
2 – taxa de Erro = Incorreto/ total = (5+10)/ 100 = 15%
Agora, eu deveria comemorar, após a construção de um classificador tem uma boa taxa de precisão, …ou devo ?!vejamos, por favor, siga-me no seguinte cenário: “Você é um cientista de dados que trabalha em um banco e construiu um modelo de classificação para classificar fraudes e transações não fraudulentas, você quer avaliar o seu modelo então você decidiu calcular a matriz de confusão e que foi o resultado:”
Analisando a matriz de confusão, podemos dizer que temos um bom classificador com Precisão = taxa de 9.800/ 10,000 = 98%
Mas O cientista de dados tem um muito estranha idéia de que ele quer tentar; A ideia é parar o classificador de classificação das operações como fraude (positiva classe ‘1’), então, calcular a nova matriz de confusão, e era como o seguinte:
O classificador taxa de Precisão = 9,850/ 10,000 = 98.5% o que significa que há uma comissão de 0,5% de aumento na taxa de precisão embora o classificador não está funcionando corretamente!
E isso é chamado Armadilha de precisão então definitivamente dizemos que a taxa de precisão de medição não é suficiente para responder à pergunta ‘ quão bom é o seu classificador?!”
a solução é tentar outro método de medição que seja
2. Curva de perfil de precisão cumulativa (CAP) – é um método mais robusto para ajudar o nosso modelo de máquina. Para entender a intuição por trás dela, você tem que me seguir nos seguintes cenários:Cenário#1-Imagine que você como cientista de dados trabalha em uma empresa que quer promover seu novo produto para que eles enviem um e-mail com sua oferta para todos os clientes e geralmente 10% das respostas do cliente e realmente compra o produto para que eles, embora isso será o caso para este tempo e esse cenário é chamado de cenário Aleatório.
Cenário#2 — Você ainda trabalha na mesma empresa, mas desta vez que você decidiu fazê-lo de forma mais sistemática:
- Inspecionar seus dados históricos e levar um grupo de clientes que efetivamente compraram a oferta e tentar extrair essas informações
- Medir aqueles fatores e tentar descobrir qual deles afeta o número de produtos Comprados, ou, em outras palavras ajustar os dados para um modelo de Regressão Logística.fazer uma previsão de quais clientes são mais propensos a comprar o produto.em seguida, vise especialmente as pessoas que você previu são mais propensos a comprar o produto.em seguida, medindo a resposta dos grupos visados representados nessa curva “curva de casquilho”.definitivamente podemos notar a melhoria; quando você contatou 20.000 clientes-alvo você obteve cerca de 5.000 respostas positivas, onde no cenário#1, ao entrar em contato com o mesmo número de clientes, você obteve apenas 2.000 respostas positivas.
Então, a idéia aqui é comparar o seu modelo para o cenário aleatório e você pode levá-lo para o próximo nível através da construção de outro modelo, talvez, uma Máquina de Vetor de Suporte (SVM)/ Kernel SVM modelo para compará-lo com o seu atual modelo de regressão logística.
Mas, Como analisar o gráfico resultante ?
quanto melhor o seu modelo, maior será a área entre a sua curva da tampa e a linha reta do cenário Aleatório.
, Hipoteticamente, podemos desenhar o assim chamado Modelo Perfeito, que representa um modelo que é impossível construir a menos que você tenha algum tipo de uma Bola de Cristal . Ele mostra que ao enviar a oferta para 10 mil possíveis clientes você teve uma resposta positiva perfeita onde todas as pessoas contatadas compraram o produto.
Plotting such hipotetic model will help us as a reference to evaluate your models CAP curves.
Existem 2 abordagens para analisar o gráfico anterior:
Primeiro
- Calcular a área sob o Modelo Perfeito de Curva (aP)
- Calcular a área sob o Modelo Perfeito de Curva (r)
- Calcular a taxa de Precisão(R) = aR/ aP; como (AR)~1 (O melhor é o seu modelo) e como (AR)~0 (O pior é o seu modelo)
Segunda
- Desenhar uma linha de 50% (ponto de 50.000) no Total Contactado eixo até o Modelo CAP Curva
- , em Seguida, a partir de que ponto de intersecção, um Projeto para a compra do eixo
- X% de valor representa o quão bom o seu modelo é:
- Se X < 60% /(6000), então você tem um lixo de modelo
- Se 60% < X < 70% /(7000), então você tem um mau modelo
- Se 70% < X < 80% /(8000), então você tem um bom modelo
- Se 80% < X < 90%/ (9000), então você tem um modelo muito bom
- Se 90% < X < 100% / (10,000), em seguida, seu modelo é muito bom para ser verdade! o que eu quero dizer é que, isso geralmente acontece devido Overfitting que definitivamente não é uma coisa boa como o seu modelo será bom na classificação apenas os dados que é treinado, mas muito pobre com novas instâncias invisíveis.