PROJETO: Previsão de Churn

churn

Um dos maiores problemas enfrentados pelas companhias é quando há uma perda de clientes e/ou receitas, este tipo de cancelamento pode ser medido através de uma métrica denominada churn rate.

Especialmente com o crescimento de modelos de negócios por assinatura, o Churn (ou índice de cancelamento de clientes) passou a ser mais conhecido.

Churn, numa definição mais generalista, é uma métrica que indica o número de clientes que cancelam em determinado período de tempo. Para calcular o churn, o que você precisa fazer é somar o número de clientes que cancelou seu produto/serviço no período analisado.

Para que uma empresa consiga fazer a expansão da sua base de clientes, é preciso que o número de novos clientes exceda o seu churn rate – a taxa de clientes cancelados.

Qual a taxa ideal de Churn?

A melhor resposta é: o mais baixo possível. Mas é claro que entender qual a taxa ideal de churn para um negócio depende de muitos fatores. É quase impossível estimar um valor que seja verdadeiro para todo tipo de negócio. Em segmentos específicos temos alguns benchmarks. Para SaaS, por exemplo, o sugerido é algo entre 5% a 7% ao ano.

Mas por que os clientes cancelam?

Alguns dos motivos que podem motivar seu cliente a cancelar, com base na nossa experiência, podem ser:

Identificar os principais motivos pelos quais os clientes cancelam, permite conhecer indicativos de uso do produto, qualidade do serviço, preço, competição de mercado, etc.

Sobre a base de dados

Esse conjunto de dados foi retirado do kaggle, podendo ser acessado por este link, Customer Churn Prediction 2020 tem o objetivo de prever se um cliente mudará de provedor de telecomunicações.

Há dois conjuntos de dados, um para treino com 4250 linhas e 20 colunas e outro para teste com 750 linhas e 19 colunas, os dados de treino já vem com o histórico de clientes que cancelaram e não cancelaram o contrato com o provedor atual, enquanto que os dados de teste não vem com esse resultado.

Depois de ter criado o modelo, treinado e validado eu o utilizei para realizar as predições nos dados de teste e submeti ao site para obter o resultado.

Sumário e Principais Resultados

Algoritmo Final Selecionado

Random Forest

Métricas de Avaliação

Acurária
Precision
Recall
f1-Score
Curva ROC
Curva PR
Matriz de confusão

Index

1. Importes
    1.1 Bibliotecas
    1.2 Conjunto de dados
2. Análise Exploratória dos dados
    2.1 Descrição dos dados
    2.2 Análise das Variáveis categóricas
    2.3 Análise das Variáveis numéricas
    2.4 Analisando os outliers
    2.5 Análise de correlação
3. Machine Learning
    3.1 Definindo a baseline
    3.2 Escolha do Modelo
    3.3 Ajustando o modelo
    3.4 Avaliando o modelo
    3.5 Variáveis importantes
4. Treinamento com todos os dados
5. Salvando o modelo
6. Prevendo nos dados de teste
7. Salvando os dados com as previsões
8. Conclusões
9. Referências


Conclusões e Resultados

BASELINE:
    Acurácia: 75.78%

MODELO FINAL:
    Acurácia com dados de validação:      95.06%
    Acurácia com dados de teste (Kaggle): 92.95%

1. Importes

1.1 Bibliotecas

1.2 Conjunto de dados

Dicionário das variáveis

2. Análise Exploratória dos dados

2.1 Descrição dos dados

Nesta seção conheceremos um pouco mais sobre os dados, suas dimensões e analisando algumas estatísticas descritivas.

Vamos dar uma olhada nas principais estatísticas descritivas do conjunto de treino, tanto para os conjuntos numéricos quanto nos categóricos, respectivamente:

2.2 Análise das Variáveis categóricas

Vamos criar uma função para extrair a proporção para churn, em cada variável, uma vez que os números absolutos individualmente não nos dizem muita coisa, mas relacionando com total de cada, você obtém a informação mais otimizada.

Na sequencia avaliaremos com um mapa os estados com maior churn, depois plotaremos os gráficos para análises.