Este repositorio es parte de un portafolio de proyectos para presentar habilidades en Machine Learning, especificamente en un problema que muchas empresas poseen que es la fuga de clientes. Para ello, se utiliza data disponible en Kaggle de Telco-Customer-Churn
Identificar clientes con riesgo de irse de nuestra compañía (Churn). Para ello, se construirá una solución que prediga correctamente si un cliente abandona o no basado en información histórica de:
- Patrones de uso
- Datos del cliente
- Uso del servicio
- Otros factores relevantes
Se importan las librerías necesarias y se carga el dataset.
Se realiza la limpieza de datos, transformación de tipos de datos y codificación de variables categóricas.
Se generan gráficos para entender la distribución de las variables y su relación con el churn:
- Distribución de cargos mensuales por churn
- Distribución del tenure por churn
- Matriz de correlación de las variables numéricas
- Tasa de churn para variables demográficas y categóricas
Se separan las variables predictoras y objetivo, se escalan las variables y se dividen en conjuntos de entrenamiento y prueba.
Se entrenan y evalúan varios modelos de clasificación para predecir el churn de clientes:
- Random Forest
- Gradient Boosting
- XGBoost
- LightGBM
Se analizan las métricas de desempeño de cada modelo, destacando la importancia de la métrica de recall para identificar correctamente los casos de churn.
Se utilizan valores SHAP para explicar cómo cada característica del modelo influye en las predicciones.
- LightGBM muestra el mejor desempeño en términos de recall (0.743), siendo el más efectivo en identificar clientes que abandonarán el servicio.
- Gradient Boosting tiene la mejor precisión (0.628) y ROC AUC (0.840), pero menor recall.
- Existe un trade-off entre precision y recall en todos los modelos.
- Para el objetivo de identificar churn, LightGBM es el modelo más adecuado por su alto recall.
- Ofrecer o renovar soporte técnico (TechSupport) para que el cliente se sienta respaldado.
- Proponer contratos de mayor duración (one year o two year) con beneficios o descuentos.
- Ajustar las tarifas mensuales (MonthlyCharges) con planes personalizados o promociones especiales.
- Gráficos de visualización de datos y resultados de modelos guardados en
../reports/figures/
. - Puedes ver slides que resumen este proyecto en
../reports/slides/