lección 6
Jueves: escalar bien con un Pipeline
Escalar dentro de un Pipeline con ColumnTransformer: la silueta baja de 0,550 a 0,319, y esa bajada es la paradoja: el número peor es el modelo mejor.
⏱ 60 min
## Jueves, 12:00. Montar el modelo como debe estar
Ya tienes el diagnóstico y la causa: los grupos salían por volumen porque el consumo, al no estar escalado, aplastaba a los ratios en la distancia. Y tienes el reparto de columnas: siete numéricas a escalar, dos categóricas a codificar. Lo que falta es montarlo, y montarlo de la forma que no se te pueda olvidar nunca. Aquí es donde Baltasar insiste con una herramienta: el Pipeline. En vez de escalar las features en una línea suelta y luego, aparte, pasarlas a K-Means —donde es facilísimo olvidarse del escalado, o escalar mal, o escalar unas columnas sí y otras no—, se encadena todo en un solo objeto: primero el preprocesado, después el modelo. Un Pipeline es una tubería donde los datos entran crudos por un extremo y salen agrupados por el otro, pasando por cada paso en orden.
Y como no todas las columnas reciben el mismo trato —las numéricas se escalan, las de texto se codifican—, el primer paso del Pipeline es un ColumnTransformer: un repartidor que aplica StandardScaler a la lista de columnas numéricas y OneHotEncoder a la lista de categóricas, cada una por su lado, y vuelve a juntar el resultado. Esa es la frase de Baltasar hecha código: "el escalado y la codificación son parte del modelo; móntalos en un Pipeline para no colártelos". No es una comodidad: es la garantía de que el preprocesado se aplica siempre, igual, y a las columnas que toca.
## La paradoja: la silueta baja y eso está bien
Cuando reentrenes con el escalado dentro del Pipeline va a pasar algo que, si no estás preparado, parece un paso atrás: la silueta baja. De 0,550 sin escalar a 0,319 con el escalado. Tu primer instinto —el de cualquiera— sería pensar "lo he empeorado, vuelvo a lo de antes". Es exactamente el error que Baltasar quiere que no cometas. La silueta mide la geometría: cómo de separados están los grupos. Sin escalar, los grupos estaban separadísimos... en una sola dimensión, el consumo, porque era la única que contaba. Con escalado, el modelo reparte el peso entre siete features y los grupos se separan en un espacio de verdad multidimensional, donde ninguna partición queda tan limpia como una banda de volumen. La silueta baja porque mide una separación más honesta y más difícil. El número peor describe el modelo mejor.
Esta es la trampa que da nombre al caso, y es sutil: una silueta más alta NO es un modelo mejor si está midiendo la dimensión equivocada. La silueta de 0,550 era real, pero medía lo compactos que quedaban cuatro escalones de recibo. La de 0,319 mide lo compactos que quedan cuatro patrones de consumo, que es lo que de verdad quieres. Fiarte del número más alto sin preguntarte QUÉ está midiendo es cómo se cuela este error en producción. La métrica no sabe para qué quieres el modelo; eso lo sabes tú.
Y una vez el modelo está bien montado, por fin puedes hacer con rigor lo que el miércoles no podías: elegir el número de grupos con el codo y la silueta, ahora con el mismo preprocesado que el modelo. El miércoles te avisé de que hacerlo sin escalar engañaba (la silueta máxima caía en k=2, dos bandas de volumen). Con los datos bien preparados la cosa cambia: la silueta sube hasta k=4 y la inercia dibuja su codo también en 4. Un apunte honesto: k=4 y k=5 salen casi iguales en silueta (un plateau), así que la decisión de quedarse en cuatro no se apoya en que k=5 esté muy por debajo, sino en que k=4 ya mejora claramente a k=3 y en que el cuarto grupo tiene sentido de negocio. O sea que Rosalía se quedaba corta con tres: son cuatro patrones de consumo. Ese cuarto grupo, el que ella no había pensado —el de la curva plana sin picos—, va a resultar valioso para entender la cartera.
## comentarios
Reporta erratas, ayuda a otros o comparte tu opinión. Sé constructivo.
Inicia sesión para comentar y responder.
cargando comentarios...
Regístrate para guardar tu progreso.