Giter Club home page Giter Club logo

challenge_data_science_alura_voz's Introduction

Alura Voz - Challenge de Data Science

Primeiro Challenge de Data Science da Alura

Índice

Objetivo

Na reunião inicial com as pessoas responsáveis pela área de vendas da empresa, foi explicada a importância de se reduzir a Taxa de Evasão de Clientes, conhecido como Churn Rate. Basicamente, o Churn Rate indica o quanto a empresa perdeu de receita ou clientes em um período de tempo.

Como cientista de dados da operadora de telecomunicações Alura Voz sugeri, como passo inicial, a identificação de clientes que teriam uma maior chance de deixar a empresa. Para isso, seria necessário investigar algumas características de clientes ou dos planos de clientes para tentar classificar estas pessoas como potenciais candidatas a deixar a empresa ou não.

Portanto soliciteu o conjunto de dados para começar a explorar, tratar e modelar a partir de agora. Em seguida, o foco será na otimização de cada um dos modelos com a finalidade de obter o melhor resultado para a tomada de decisão da Alura Voz.

Semana 1 do Challenge

Na primeira semana do Challenge foi feita a entrega da base de dados, obtidada por meio de API, dos clientes da AluraVoz. O dataset fornecido contém, em sua maioria, dados categóricos. Também há variáveis numéricas referentes aos gastos dos clientes e o tempo de contrato. Foram encontradas as seguintes inconsistência nos dados: preenchimento de dados números como string, células em branco e coluna referente a senioridade estava prenchida com valores numéricos enquanto deveria estar com valores de texto. Também havia registros sem a informaçã de churn do cliente. Tais incosistências foram removidas com: remoção dos registros sem informação de churn, conversão de valores do tipo string para float, padrozinação da coluna de senioridade. Também foi realizada a tradução dos dados que originalmente estavam em inglês. Fez-se ainda a estimativa do gasto médio diário dos clientes.

Semana 2 do Challenge

Nesta semana o objetivo era analisar a variável Churn. Foi verificada a distribuição da variável churn, e geradas visualizações que facilitem a intepretação do comportamento dos clientes. Traçou-se o perfil médio dos clientes que evadem da empresa, descobrindo-se que a maioria evade da empresa antes de completar 1 ano de contrato. Também é comum ao clientes evadidos o contrato de serviço de internet por fibra óptica e assinatura de pacotes de streaming. Várias visualizações foram geradas e um relatório construídos para descrever o perfil dos clientes da empresa para a equipe de Vendas.

Semana 3 do Challenge

Nesta semana foi feita a construção de um modelo de Machine Learning para identificação de clientes potenciais a saírem da empresa.
Foram testados os seguintes modelos: Random Forest, AdaBoost, Regressão Logística, Naive Bayes, KNN e Suport Vector Machine.

A análise exploratória dos dados, feita na etapa anterior, permitiu a redução de dimensionalidade e consequentemente a complexidade do mmodelo. Utilizando-se a técnica de undersampling consegui equilibrar as classes, assim diminuiu-se a probabilidade do modelo tornar-se tendencioso para uma determinada classe. Todos os modelos testador obtiveram resultados próximos de acurácia, apenas o KNN ficou mais distante dos demais. O modelo de AdaBoost destacouse por ser o de melhor desempenho tanto em recall (0,813) e Acurácia (0,766). Após aplicar-se técnicas de otimização pode-se obter um pequeno incremento no recall do AdaBoost (0,816). Talvez possa-se ter um incremento maior na performance do modelo mas limitações de hardware não permitiram testar esta hípotese. Ao utilizar os dados sem realizar técnica de balanceamento a acurácia foi bem elevada (0,803), porém, este resultado alto deve ao próprio desbalanceamento dos dados que faz o modelo tender a jogar mais valores para a classe dominante. Com a técnica de OverSampling, neste caso, foram obtidos resultados próximos aos do uso de Undersampling. Contudo, a técncia de oversampling deve ser utilizada com cuidado pois, quando o desbalanceamento entre as classes é muito grande, a quantidade de valores sintéticos pode comprometer as análises.

challenge_data_science_alura_voz's People

Contributors

duartejr avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

Forkers

gustavoramos82

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.