Skip to content

Kr1st1an-cl/challenge-TelecomX_parte-2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

🤖 Telecom X – Predicción de Churn (Parte 2 · Machine Learning)

Open in Colab

Segunda etapa del Challenge: pasamos del EDA a modelos predictivos de churn.
Se entrenan y comparan Regresión Logística, Random Forest y XGBoost sobre el dataset de Telecom X, manteniendo el criterio de negocio: reducir clientes “churn” no detectados (FN).


📌 Repositorio

👉 https://github.com/Kr1st1an-cl/challenge-TelecomX_parte-2

El diccionario de datos se mantiene desde la Parte 1:
TelecomX_diccionario.md


🧭 Metodología (resumen)

  1. Preparación y limpieza (one-hot encoding, remoción de redundancias, normalización cuando aplica).
  2. Separación Train/Test estratificada (26.5% churn en ambos).
  3. Modelado
    • Regresión Logística (con class_weight), datos escalados.
    • Random Forest (con class_weight), datos sin escalar.
    • XGBoost (con scale_pos_weight=1.5), datos sin escalar.
  4. Validación con StratifiedKFold (K=5).
  5. Evaluación en Train y Test con: Accuracy, Precision, Recall, F1, ROC-AUC, Balanced Accuracy.
  6. Curvas ROC y Precision-Recall para comparación visual.

📊 Resultados en Test (métricas reales del notebook)

Modelo Accuracy Precision Recall F1-Score ROC-AUC Balanced Acc.
Logistic Regression 0.779 0.575 0.647 0.609 0.843 0.737
Random Forest 0.786 0.597 0.599 0.598 0.845 0.727
XGBoost 0.780 0.580 0.620 0.599 0.838 0.729

Lectura clave:

  • Random Forest tiene el ROC-AUC más alto en Test (0.845), con precision ligeramente superior.
  • Regresión Logística logra el mejor Recall (0.647) y Balanced Accuracy (0.737), con la brecha más baja entre Train y Test → mejor generalización.
  • XGBoost queda muy cerca en métricas globales, pero muestra la brecha Train→Test más amplia (signos de overfitting).

👉 Criterio de negocio (detectar churn): si priorizamos Recall y equilibrio entre clases, Regresión Logística es la opción base.
Si buscamos AUC global y precision algo mayor, Random Forest tiene una ventaja marginal.


🧮 Matrices de Confusión (Test)

Modelo Pred. No Churn Pred. Churn
Logistic Regression Real No Churn 856 179
Real Churn 132 242
Random Forest Real No Churn 884 151
Real Churn 150 224
XGBoost Real No Churn 867 168
Real Churn 142 232

Recordatorio: en churn, FN (churns no detectados) son más costosos que FP.


📈 Curvas ROC y Precision-Recall

  • Curvas ROC muy cercanas; Random Forest obtiene el AUC más alto en Test.
  • En Precision-Recall, las curvas son competitivas; el ranking visual es consistente con las métricas de la tabla.

Se realizó ajuste de umbral para el modelo seleccionado, con foco en Recall y costos de negocio.


💡 Recomendaciones

  1. Usar Regresión Logística como baseline operacional (mejor Recall + generalización).
  2. Implmentar estrategias de negocio por factor crítico:
  • Antigüedad: Programa "Primeros 100 Días": Onboarding intensivo nuevos clientes
  • Tipo Contrato: Campaña migración masiva: Mes a Mes → contratos largos
  • Clientes Premium: Programa VIP: Atención especializada alto valor y mejor SLA
  • Servicios Avanzados: Ofrecer servicios avanzados y monitoreo de uptime fibra óptica
  • Servicios Adicionales: Ofrecer venta cruzada de servicios de seguridad, paquetes y servicios de prueba como ancla
  1. Ajustar umbrales de decisión del modelo elegido para reducir FN según tolerancia de negocio.
  2. Hacer seguimiento al rendimiento del modelo predictivo.
  3. Medir efectividad de retención y Calidad del Servicio a través de NPS (Net Promoter Score)

🔬 Valor Técnico:

Un modelo con 76.5% recall que identifica 3 de cada 4 clientes en riesgo, con variables interpretables que permiten acción directa.

💼 Valor de Negocio:

Estrategias específicas por factor de riesgo que transforman predicciones en acciones concretas de retención.


🛠 Tecnologías

  • Python (Pandas, NumPy, Scikit-Learn, XGBoost)
  • Matplotlib / Seaborn / Plotly
  • Google Colab / Jupyter Notebook
  • GitHub para control de versiones

👤 Autor

Cristian Velásquez Ríos
📘 Data Science – G8 ONE Alura LATAM 2025
✉️ e-mail
🔗 LinkedIn


🚀 Cómo ejecutar este proyecto

  1. Clona este repositorio
    git clone https://github.com/Kr1st1an-cl/challenge-TelecomX_parte-2.git
  2. Abre el archivo .ipynb en Google Colab o Jupyter Notebook
  3. Ejecuta cada celda siguiendo el flujo del análisis
  4. Observa los gráficos, resultados y conclusiones al final del notebook

📂 Estructura del repositorio

📁 data/                                                      # Dataset original del desafío
📁 img/                                                       # Capturas o visuales opcionales
📄 Challenge_Telecom_X_Parte_2_Cristian_Velasquez_Rios.ipynb  # Notebook principal
📄 README.md                                                  # Este archivo

About

Análisis de Churn para TelecomX con Machine Learning

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published