Problema #95
Autor:Ana Maria Simion
Dificuldade
A tua melhor pontuação
N/D
O churn de clientes representa a renúncia voluntária destes aos serviços de uma operadora de telecomunicações. Compreender os fatores que influenciam o churn é essencial para desenvolver estratégias de retenção e para otimizar ofertas e serviços.
A Inteligência Artificial permite análise complexa de dados sobre clientes para:
Para resolver este problema você terá à disposição dois arquivos:
train.csv – contém todas as variáveis, incluindo Churn, para treinamento dos modelostest.csv – contém as mesmas variáveis, sem a coluna Churn, e os dados deste arquivo são usados para gerar as predições| Column | DType | Descrição |
|---|---|---|
| SampleID | int | Identificador único do cliente |
| Age | int | Idade do cliente |
| Avg Monthly GB Download | int | Média mensal de dados baixados (GB) |
| Avg Monthly Long Distance Charges | float | Custo médio mensal para chamadas de longa distância |
| City | object | Cidade do cliente |
| CLTV | int | Customer Lifetime Value estimado |
| Contract | object | Tipo de contrato (mensal, anual etc.) |
| Country | object | País do cliente |
| Customer ID | object | Identificador único interno do cliente |
| Dependents | int | Número de pessoas dependentes |
| Device Protection Plan | int | 1 se existe, 0 se não |
| Gender | object | Gênero do cliente |
| Internet Service | int | Indicador de serviço de internet |
| Internet Type | object | Tipo de conexão de internet |
| Lat Long | object | Coordenadas latitude e longitude |
| Latitude | float | Latitude |
| Longitude | float | Longitude |
| Married | int | 1 se o cliente é casado, 0 caso contrário |
| Monthly Charge | float | Custo mensal dos serviços |
| Multiple Lines | int | 1 se existem múltiplas linhas, 0 caso contrário |
| Number of Dependents | int | Número total de pessoas dependentes |
| Number of Referrals | int | Número de recomendações feitas a outros clientes |
| Offer | object | Tipo de oferta recebida (se existe) |
| Online Backup | int | 1 se existe, 0 caso contrário |
| Online Security | int | 1 se existe, 0 caso contrário |
| Paperless Billing | int | 1 se existe faturamento eletrônico |
| Partner | int | 1 se o cliente tem parceiro, 0 caso contrário |
| Payment Method | object | Método de pagamento das faturas |
| Phone Service | int | 1 se existe serviço de telefone, 0 caso contrário |
| Population | int | População da cidade |
| Premium Tech Support | int | 1 se existe suporte premium, 0 caso contrário |
| Quarter | object | Trimestre em que os dados são registrados |
| Referred a Friend | int | 1 se o cliente recomendou um amigo |
| Satisfaction Score | int | Pontuação de satisfação do cliente |
| Senior Citizen | int | 1 se o cliente é idoso, 0 caso contrário |
| State | object | Estado/província do cliente |
| Streaming Movies | int | 1 se existe serviço de streaming de filmes |
| Streaming Music | int | 1 se existe serviço de streaming de música |
| Streaming TV | int | 1 se existe serviço de streaming de TV |
| Tenure in Months | int | Número de meses desde o início do contrato |
| Total Charges | float | Soma total paga pelo cliente |
| Total Extra Data Charges | int | Custos adicionais para dados |
| Total Long Distance Charges | float | Soma total paga por chamadas de longa distância |
| Total Refunds | float | Soma total devolvida ao cliente |
| Total Revenue | float | Receita total gerada pelo cliente |
| Under 30 | int | 1 se o cliente tem menos de 30 anos |
| Unlimited Data | int | 1 se o plano tem dados ilimitados |
| Zip Code | int | Código postal do cliente |
| Ping Score | float | Pontuação de desempenho da rede |
| Avg Speed | float | Velocidade média da conexão de internet |
| TV Type | object | Tipo de receptor de TV |
| Link Quality Index | float | Índice de qualidade do link |
| Total Short Distance Charges | float | Custos para chamadas locais |
| Churn | int | 1 se o cliente desistiu, 0 caso contrário |
Para este problema você deve resolver 3 tarefas.
Calcule para cada cliente do conjunto de teste uma pontuação simplificada de risco financeiro baseada nos valores Monthly Charge e Total Extra Data Charges.
FinancialRiskScore = (Monthly Charge > 70) + (Total Extra Data Charges > 10)Cada componente adiciona 1 ponto à pontuação se:
A pontuação final está entre 0 e 2.
Calcule para cada cliente do conjunto de teste uma pontuação que reflita a qualidade dos serviços baseada nas colunas Avg Speed, Ping Score e Link Quality Index.
ServiceQualityScore = (Avg Speed < 50) + (Ping Score > 80) + (Link Quality Index < 30)Cada componente contribui com 1 ponto para a pontuação.
A pontuação final está entre 0 (experiência boa) e 3 (experiência ruim).
Mais precisamente, se a primeira condição (Avg Speed < 50) for atendida, é adicionado 1 ponto. O mesmo para o restante.
Construa um modelo de classificação que prediga Churn (0 = cliente ativo, 1 = cliente que desistiu) baseado em todas as informações disponíveis em train.csv.
test.csv devem ser 0 ou 1.Answer no arquivo de submissão será 0 ou 1 para cada cliente.O arquivo submission.csv deve conter:
id - ID extraído de test.csv (coluna SampleID)subtaskID
1 para Tarefa 12 para Tarefa 23 para Tarefa 3`answer - valor calculado ou predito para o cliente na tarefa indicadaPara a Tarefa 3, a pontuação é atribuída de acordo com as seguintes regras: