Laboratorio 8: Pipelines
Este repositorio contiene un notebook de Jupyter donde se implementa un pipeline de Machine Learning para resolver un problema de clasificación, utilizando el dataset de clientes de telecomunicaciones Telco Customer Churn.
El objetivo del laboratorio es aplicar el flujo completo de un proyecto de Machine Learning utilizando pipelines, incluyendo:
- Exploración de datos (EDA)
- Preprocesamiento
- Ingeniería de características
- Entrenamiento de modelos
- Optimización de hiperpárametros con GridSearch
- Evaluación del desempeño
- Exportación del pipeline entrenado
DataSet utilizado
Se utiliza el dataset:
-Telco Customer Churn
Este dataset contiene información de clientes de una empresa de telecomunicaciones y el objetivo es predecir si un cliente cancelará el servicio (Churn).
El conjunto de datos incluye:
- Variables categóricas (tipo de contrato, servicios, etc.)
- Variables numéricas (tenure, cargos mensuales, etc.)
- Valores faltantes que requieren preprocesamiento
Contenido del Repositorio
-
pipeline.ipynb:
Notebook principal donde se desarrolla todo el laboratorio:
- Carga del dataset
- Exploración de datos (EDA)
- Limpieza y preprocesamiento de datos
- Creación de pipelines con scikit-learn
- Transoformación de variables numéricas y categórias
- Entrenamiento de modelos de clasificación
- Optimización con GridSearchCV
- Evaluación del modelo
-
telco_churn_pipeline.pkl:
Archivo exportado que contiene el pipeline entrenado.
Este archivo permite reutilizar el modelo para realizar predicciones sin necesidad de volver a entrenarlo.
requirements.txt:
Archivo con las dependencias necesarias para ejecutar el notebook.
- pandas
- numpy
- scikit-learn
- matplotlib
- seaborn
- jupyter
Requisitos
Antes de ejecutar el notebook, asegúrate de tener instaladas las siguientes dependencias:
- Python 3.8 o superior
- Bibliotecas enumeradas en
requirements.txt
Tutorial para configurar el entorno
1. Crear un entorno virtual
Un entorno virtual te permite mantener aisladas las dependencias del proyecto. Sigue estos pasos:
En sistemas Windows:
python -m venv venv
En sistemas MacOS/Linux:
python3 -m venv venv
2. Activar el entorno virtual
En sistemas Windows:
venv\Scripts\activate
En sistemas MacOS/Linux:
source venv/bin/activate
Cuando el entorno virtual esté activado, verás un prefijo (venv) en tu terminal.
3. Instalar las dependencias
Este repositorio ya incluye un archivo requirements.txt con todas las dependencias necesarias. Una vez que el entorno virtual esté activado, instala las dependencias ejecutando:
pip install -r requirements.txt
Esto instalará automáticamente las librerías necesarias, como pandas, scikit-learn, seaborn, y otras.
Cómo usar los notebooks
- Asegúrate de tener el entorno virtual activado.
- Inicia Jupyter Lab desde la terminal:
jupyter lab
- Abre el notebook
pipeline.ipynb
- Ejecuta las celdas para reproducir el pipeline completo de entrenamiento y evaluación.
Resultados
El pipeline final realiza automáticamente:
- imputación de valores faltantes
- codificación de variables categóricas
- escalado de variables numéricas
- entrenamiendo del modelo
- evaluación de desempeño
El modelo entrenado se exporta como:
telco_churn_pipeline.pkl
para su uso posterior en aplicaciones o predicciones.