Estamos preparando el PDF de «Pipeline de scikit-learn». Se descargará automáticamente en cuanto esté listo.
← Lumbre

Fundamentos de Machine Learning · 5.º Pipeline de scikit-learn

Portada de Pipeline de scikit-learn

Pipeline de scikit-learn

✦ El noventa por ciento del trabajo es preprocesar, y ahí se cuelan las fugas · Fundamentos de Machine Learning · Machine Learning · 9 minutos que valen la pena

Roadwise Consulting

Firmado y verificado · Biblioteca UNIV

Objetivo: Encadenar preprocesado y modelo en un único objeto con la interfaz de scikit-learn, evitando fugas de datos y haciendo el flujo reproducible y ajustable.

9 min Fundamentos de Machine Learning · Machine Learning 18–30 años
Más
Pipeline de scikit-learn

Herramientas de la lección

◉ Entrar a La Matrix Sorpréndeme

Sobre este contenido

Ir a

Volver a Fundamentos de Machine Learning · 5.º semestre Cursos Explorar Mi cuenta Salir del modo estudio

Pipeline de scikit-learn

Pipelines de scikit-learn en machine learning
Vídeo en español que muestra cómo encadenar preprocesado y modelo en un único pipeline y por qué eso evita fugas de datos.

Una interfaz común

Scikit-learn unifica casi todo detrás de los mismos métodos: fit para aprender, predict para aplicar, transform para los preprocesadores que devuelven datos. Esa regularidad permite intercambiar componentes y construir flujos complejos con piezas que encajan igual.

Estimadores y transformadores

Un transformador —imputador, escalador, codificador— se ajusta y transforma; un estimador —regresor, clasificador— además predice. Todos comparten fit. Los pasos de preprocesado se ajustan en entrenamiento y luego solo se aplican, sin volver a mirar etiquetas.

Encadenar en un pipeline

Un pipeline lista pasos en orden: imputar, escalar, modelo. Al hacer fit sobre datos, cada paso alimenta al siguiente automáticamente. El objeto resultante se comporta como un único estimador: se puede pasar a validación cruzada o a una rejilla como si fuera una pieza.

Por qué evita fugas

La clave: al validar cruzada sobre un pipeline, el escalado se reajusta desde cero en cada pliegue, usando solo el entrenamiento de ese pliegue. Hacerlo a mano sobre todo el conjunto antes de dividir filtraría información de validación al modelo. El pipeline lo impide por construcción.

Columnas distintas, tratamiento distinto

Un conjunto típico mezcla numéricas y categóricas. El transformador de columnas permite escalar las primeras y codificar las segundas dentro del mismo pipeline, y aunar el resultado. Preprocesado heterogéneo sin perder la garantía anti-fuga.

Una línea de ensamblaje: fragmentos dispersos de datos entran por la izquierda, atraviesan una malla filtradora y unos engranajes, y salen como un cubo ordenado por la derecha.
El pipeline como cadena única: la misma secuencia de limpiar, transformar y modelar que se diseña es literalmente la que se entrena, se valida y se despliega.

Ajuste en rejilla

Al exponer cada paso como un hiperparámetro nombrable, la rejilla busca simultáneamente por el preprocesado y el modelo: qué imputador, cuántas componentes, qué regularización. Un solo ajuste conjunto, en vez de optimizar a mano pieza a pieza.

Reproducibilidad y empaquetado

Un pipeline es un único artefacto serializable: se guarda, se versiona y se despliega entero, con el preprocesado pegado al modelo. Así no hay desajuste entre el escalado usado al entrenar y el que se aplica al predecir, una de las fuentes clásicas de errores silenciosos.

Errores frecuentes

  • Escalar o imputar sobre todo el conjunto antes de dividir, contaminando la validación.
  • Olvidar que predict debe aplicar los parámetros aprendidos en entrenamiento, no recalcularlos.

Ejemplo resuelto: un pipeline sin fugas

Datos con columnas numéricas y categóricas, y una validación cruzada sospechosamente optimista. El protocolo:

  1. Dividir antes de nada: apartar prueba sin tocarla, y solo entonces mirar estadísticos.
  2. Montar la cadena: imputar, escalar las numéricas, codificar las categóricas y modelar, en un solo objeto.
  3. Separar por columnas: un transformador de columnas da a cada tipo el tratamiento que le toca.
  4. Validar cruzado sobre el todo: cada pliegue reaprende su escalado sin ver su validación.
  5. Buscar en rejilla por igual en preprocesado y modelo, y guardar el pipeline entero como artefacto.

¿Para qué sirve en la realidad?

En producción, el escalado usado al entrenar debe ser exactamente el aplicado al predecir: un desajuste ahí es un error silencioso que degrada el modelo sin avisar. El pipeline empaqueta todo junto y hace que la versión experimentada sea la versión desplegada.

¿Cuál es la ventaja central de usar un pipeline de scikit-learn al validar con validación cruzada?

Un pipeline de scikit-learn se puede tratar como un único estimador al pasarlo a una rejilla.

Del notebook a producción

El desorden de celdas sueltas —una transformación aquí, un modelo allá— es terreno fértil para fugas y para reproducir mal. Un pipeline captura el flujo completo como objeto: lo que se probó en la experimentación es, literalmente, lo mismo que se despliega.

Pipeline

Método que aprende parámetros
fit
Método que aplica y devuelve transformaciones
transform
Encadena preprocesado y modelo
pipeline
Trata distinto columnas numéricas y categóricas
transformador de columnas
Busca por hiperparámetros de todos los pasos
rejilla

Toca una tarjeta para ver la respuesta.

Ordena los pasos de un pipeline típico de principio a fin:

Arrastra cada ficha a su categoría (o tócala y luego toca la categoría). También puedes usar el teclado.

Une cada pieza de scikit-learn con lo que hace en el flujo.

      scikit-learn

      • Pipeline
        • Interfaz
          • fit
            • transform
              • predict
              • Pasos
                • imputar
                  • escalar
                    • codificar
                      • modelar
                      • Garantías
                        • anti-fuga por pliegues
                          • un solo artefacto
                          • Extras
                            • transformador de columnas
                              • rejilla conjunta

                            Tu validación cruzada da un resultado sospechosamente perfecto. ¿Podrías estar escalando antes de dividir, y cómo lo arreglaría un pipeline?

                            Tu texto se guarda sólo en este dispositivo.

                            Las respuestas y tu progreso se guardan sólo en este dispositivo. Contenido firmado por su autoría mediante Lumbre.
                            Más sobre esta lección
                            Explora temas relacionados

                            Conceptos

                            Comentarios

                            Inicia sesión para comentar.

                            Todavía no hay comentarios. Sé la primera persona en opinar.