Arquivo de etiquetas: dataset

Machine Learning: Bank Marketing Campaign Dataset

A equipa de marketing quer lançar uma nova campanha cujo objectivo é convencer os clientes a abrir depósitos a prazo.

Até agora a estratégia era ligar ao máximo número de pessoas, de forma indiscriminada, e tentar vender-lhe o produto. No entanto essa abordagem, para além de gastar mais recursos porque implica ter várias pessoas a ligar a todos os clientes, também é incómoda para alguns clientes que não gostam de ser incomodados com esse tipo de chamadas. Feitas as contas, chegou-se à conclusão que:

- Por cada cliente identificado como um bom candidado, e é alvo da campanha mas não adere ao depósito a prazo, o banco tem um custo de 500 euros.
- Por cada cliente que é identificado como mau candidado, e como tal não é alvo da campanha mas na verdade era um bom candidado e iria aderir, o banco tem um custo de 2000 euros.

Com base nesta informação, conseguem ajudar a equipa de marketing criando um modelo que seleccione os melhores candidatos para serem alvos da campanha, de forma a reduzir custos?

O dataset contêm informação sobre todos os clientes que foram alvo da campanha:

1 - age 
2 - job : type of job 
3 - marital : marital status
4 - education
5 - default: has credit in default? 
6 - housing: has housing loan? 
7 - loan: has personal loan? 
8 - pdays: number of days that passed by after the client was last contacted from a previous campaign 
9 - previous: number of contacts performed before this campaign and for this client 
10 - poutcome: outcome of the previous marketing campaign 
11 - emp.var.rate: employment variation rate - quarterly indicator 
12 - cons.price.idx: consumer price index - monthly indicator
13 - cons.conf.idx: consumer confidence index - monthly indicator 
14 - euribor3m: euribor 3 month rate - daily indicator 
15 - nr.employed: number of employees - quarterly indicator 

Output:

y: has the client subscribed a term deposit? 

Perguntas:

1. Quantas features estão disponíveis? Quantos clientes?
2. Quantos clientes têm no dataset que efectivamente aderiram ao depósito a prazo? E quantos não o fizeram?
3. Quais são as features mais relevantes para decidir se um cliente tem mais propensão para aderir ao depósito a prazo?
4. Qual o algoritmo que levou aos melhores resultados?
5. Qual/Quais as métricas de avaliação que usaram para comparar a performance dos vários modelos? Porquê?
6. Qual é o custo que o banco tem sem nenhum modelo?
7. Qual o custo que o banco passa a ter com o vosso modelo?   

Aceder ao projecto realizado em python.

https://github.com/JorgeGomes72/DataScience/blob/master/JGomes_project_Bank.ipynb

O projecto divide-se praticamente em cinco partes com todos os componentes desejados num processo de Data Science:
1) Análise, tratamento e transformação dos dados: remoção de variáveis, outliers, transformação de variáveis categóricas em numéricas, etc
2) Criação de uma Baseline da campanha imaginando que todos as pessoas acederiam à mesma
3) Procura dos melhores hiper-parâmetros dos diversos modelos a testar (é aqui que o processamento pode demorar horas!)
4) Criação dos modelos de machine learning, com os hiper-parâmetros recolhidos anteriormente
5) Análise dos resultados de todos os modelos testados e selecção do melhor, o que dará menor custo à campanha. Verificação das melhores features a usar no modelo.


No repositório existe também o dataset em formato csv.

Sintam-se à vontade para utilizar o código, espero que vos seja útil!

JG