Uno de los problemas más importantes para cualquier banco (y cualquier empresa) es detectar qué clientes tienen más probabilidades de abandonar el servicio.
Como proyecto del Máster en Data Science e IA en Evolve, decidí desarrollar un sistema de predicción de churn utilizando Machine Learning y visualización de datos orientada a negocio.
El objetivo no era solo entrenar un modelo, sino construir un flujo completo de análisis más profesional, ya que nunca lo había hecho:
- Exploratory Data Analysis (EDA)
- Preprocesado y feature engineering
- Entrenamiento de modelos
- Evaluación de métricas
- Dashboards en Power BI
Dataset y problema
Bank Customer Churn Dataset en Kaggle
El proyecto utiliza un dataset bancario con información de clientes como:
- Edad
- País
- Salario estimado
- Actividad del cliente
- Tipo de tarjeta
El objetivo era resolver un problema de clasificación binaria:
-
1→ el cliente abandona -
0→ el cliente permanece
Análisis exploratorio de datos
Durante el EDA me di cuenta de patrones bastante interesantes.
Por ejemplo:
- Los clientes de mayor edad mostraban una tasa de churn más alta
- Algunos países tenían un porcentaje de abandono claramente superior
- Los clientes inactivos tenían más probabilidad de abandonar el banco
Preprocesado de datos
Para preparar el dataset trabajé principalmente en:
- Encoding de variables categóricas
- Escalado de variables numéricas
- División train/test
- Comparación entre datasets escalados y no escalados
También separé el proyecto en notebooks independientes para mantener un flujo más limpio y modular, básicamente porque no me apetecía tener una notebook de 3km.
Modelos utilizados
Probé varios algoritmos de clasificación:
- Logistic Regression
- Decision Tree
- Random Forest
- XGBoost
La idea era comparar distintos enfoques y entender cómo cambiaban métricas como:
- Accuracy
- Precision
- Recall
- F1 Score
- ROC-AUC
Resultados
Los mejores resultados se obtuvieron con XGBoost y Random Forest.
XGBoost consiguió el mejor equilibrio entre:
- Recall
- ROC-AUC
- F1 Score
Además, el análisis de feature importance permitió identificar variables especialmente relevantes para el churn, como:
- Age
- Balance
- IsActiveMember
- Number of Products
Dashboard en Power BI
Una de las partes que más entretenidas del proyecto fue transformar los resultados técnicos en visualizaciones mas amigables y fáciles de entender.
El dashboard incluye:
- KPIs de churn
- Segmentación de clientes
- Comparación de modelos
- Visualización de feature importance
- Patrones de abandono por país, edad y actividad
Lo que aprendí
Este proyecto me ayudó mucho a entender mejor el flujo de trabajo de estos proyectos.
Aspectos como:
- el preprocesado
- la interpretación de métricas
- la comunicación visual
- el enfoque de negocio
son igual de importantes que el propio modelo.
Repositorio
GitHub:
Customer Churn Prediction Evolve Alvaro Martinez
Machine Learning project focused on predicting customer churn in a banking environment using classification models and business-oriented analysis.
The project includes:
- Exploratory Data Analysis (EDA)
- Data preprocessing and feature engineering
- Model training and evaluation
- Power BI dashboard for business insights
Technologies Used
- Python
- Pandas
- NumPy
- Scikit-learn
- XGBoost
- Matplotlib
- Seaborn
- Jupyter Notebook
- Power BI
Project Structure
├── dashboard/ # Power BI dashboard files
├── data/
│ ├── raw/ # Original dataset
│ └── processed/ # Cleaned and processed datasets
├── models/ # Trained models (.pkl)
├── notebooks/
│ ├── 01_eda.ipynb
│ ├── 02_preprocessing.ipynb
│ └── 03_models.ipynb
├── README.md
└── requirements.txt
Machine Learning Models
The following models were trained and evaluated:
- Logistic Regression
- Decision Tree
- Random Forest
- XGBoost
The best overall performance was achieved with XGBoost and Random Forest.
Main evaluation metrics:
- Accuracy
- Precision
- Recall
- F1 Score
- ROC-AUC
Main Objectives
- Analyze customer behavior patterns
- Identify factors…
Proyecto desarrollado durante el Máster en Inteligencia Artificial y Big Data de Evolve.
- ¿Qué opinas?
- ¿Qué otra herramienta de visualización recomiendas para modelos de ML aparte de Power BI?, pensé en Tableau pero no tengo un duro
¡Espero tus comentarios abajo!






Top comments (0)