Saltar al contenido

lección 1

Bienvenida a LuzClara

Tu quinto encargo: ahora no hay número ni etiqueta que predecir. Los grupos no existen, los descubre el algoritmo: aprendizaje no supervisado.

⏱ 50 min

## Lunes, 9:30. Tu quinto encargo, el segundo de dificultad media

Llevas cuatro encargos a la espalda y ya no te tiembla el pulso al abrir un CSV que no has visto nunca. En una operadora de telefonía ordenaste a los clientes por riesgo de baja y aprendiste a desconfiar de las métricas demasiado buenas. En una empresa de agricultura de precisión predijiste un rendimiento y aprendiste a mirar la forma real de los datos antes de creerte una recta. En una ONG trabajaste con una clase rarísima y aprendiste a medir donde de verdad duele. Y en una central de asistencia en carretera predijiste cuántas llamadas entrarían hora a hora y aprendiste que cómo partes los datos decide si tu evaluación es honesta. Hoy empiezas en una comercializadora eléctrica, y el problema que te espera es de una familia que no habías tocado todavía. Esta lección no lleva una sola línea de código, y es a propósito: antes de agrupar nada conviene entender dónde has aterrizado, quién te pide las cosas y por qué este encargo no se parece a los anteriores.

LuzClara es una comercializadora eléctrica: no genera la luz ni tiene los cables, sino que compra la energía en el mercado mayorista y se la vende al cliente final, cobrándole una cuota por la potencia contratada más lo que consume. Nació en 2017 en Sevilla, en plena apertura del mercado a las comercializadoras independientes, con la idea de ofrecer tarifas claras sin la letra pequeña de las grandes (de ahí el nombre). En ocho años ha pasado de un puñado de personas a unos 340 empleados y casi 400.000 puntos de suministro. El negocio se juega en dos cosas: comprar la energía al mejor precio y colocar a cada cliente en la tarifa que le encaja. Un cliente que consume casi todo de noche —porque carga el coche eléctrico o pone la lavadora en el valle— le saca partido a una tarifa con discriminación horaria; en una tarifa plana paga de más y, tarde o temprano, se va a la competencia que le ofrece justo eso.

LuzClara tiene las curvas de consumo horario de todos sus clientes —los contadores inteligentes mandan una lectura por hora—, pero hasta ahora esos datos solo se han usado para facturar: sumar los kWh del mes y pasar el recibo. Nadie ha mirado cómo consume cada cliente a lo largo del día. El equipo de marketing y tarifas sospecha que hay grupos muy distintos por el momento del día en que gastan la luz (gente que consume sobre todo de noche, gente con un pico de tarde al llegar a casa, gente de uso diurno, gente de curva plana sin picos) y que a cada grupo le encaja una tarifa y una campaña distinta. Fíjate en que la sospecha es por el PATRÓN —el cuándo—, no por el tamaño del recibo: dos clientes que gastan lo mismo al mes pueden pedir tarifas opuestas si uno gasta de noche y el otro de día. Pero no tienen esos grupos: los imaginan, no los conocen. Tu encargo es dárselos de verdad.

## El cambio que te va a cambiar la cabeza: esta vez no hay nada que predecir

Aquí está la idea que ordena toda la semana, y conviene entenderla despacio porque rompe con todo lo que has hecho hasta ahora. En tus cuatro encargos anteriores siempre había un target: una columna que querías adivinar. Quién se iba (una etiqueta), cuánto rinde una parcela (un número), si un socio responde a una campaña (una etiqueta), cuántas llamadas entran (un número). Tenías ejemplos resueltos —clientes que ya se habían ido, parcelas con su rendimiento medido— y el modelo aprendía de ellos a estimar la respuesta en los casos nuevos. Eso es aprendizaje supervisado: hay un profesor, que son las respuestas conocidas.

Aquí no hay profesor. Nadie te ha dicho a qué grupo pertenece ningún cliente, porque los grupos no existen todavía. No hay una columna "segmento" que rellenar ni ejemplos resueltos de los que aprender. Tienes que descubrir los grupos tú, dejando que el algoritmo encuentre qué clientes se parecen entre sí. Eso es aprendizaje no supervisado, y la herramienta que vas a usar es K-Means: tú le dices cuántos grupos quieres, y él coloca a cada cliente en el grupo cuyo "centro" le queda más cerca. Sin target, dos cosas cambian de raíz: cómo mides si los grupos son buenos (no hay un "acierto" contra el que comparar) y dónde está la trampa. En este caso la trampa no es una columna del futuro ni una métrica inflada: está en un paso que parece de limpieza y en realidad es parte del modelo. Lo verás el jueves.

La diferencia de fondo con tus cuatro encargos anteriores: antes cada fila ya traía su respuesta (su color) y el modelo aprendía de ellas; ahora no hay ninguna respuesta, y el algoritmo tiene que descubrir qué clientes se parecen. Sin colores de partida, no hay un "acierto" que medir.

Consejo de senior: cuando pases de un problema con target a uno de agrupar, lo primero que tienes que soltar es la pregunta "¿cuánto acierto?". Sin respuestas conocidas no hay acierto. La calidad de unos grupos se mide de otra forma (lo verás el miércoles con el método del codo y la silueta), y el peligro también cambia de sitio. Guárdalo: lo vas a necesitar el jueves, cuando un número que parece buenísimo resulte ser el malo.

## Por qué agrupar bien a los clientes vale dinero

Para entender por qué este encargo importa, ponte en el lugar de quien decide las tarifas. LuzClara trata hoy a todos los clientes casi igual: manda las campañas "a todos" y la conversión es baja, porque a mucha gente le ofrece una tarifa que no le encaja. Si pudiera partir a sus clientes en grupos con un patrón de consumo claro, podría ofrecerle a cada grupo la tarifa que de verdad le conviene: la nocturna a quien carga el coche de noche, la plana barata a quien consume poco y a cualquier hora. Acertar la tarifa es retener al cliente; errarla es regalárselo a la competencia que le ofrece justo lo que necesita.

El problema es que esos grupos no existen como un dato: viven dentro de las curvas de consumo, y nadie los ha sacado. Lo vas a hacer tú, y —esto es lo que de verdad importa— vas a aprender a no fiarte del primer resultado bonito. Porque en el no supervisado es facilísimo obtener unos grupos preciosos sobre el papel que, mirados de cerca, no sirven para nada. Un número alto no garantiza unos grupos útiles, igual que en tus casos anteriores un acierto alto no garantizaba un buen modelo. La diferencia es que esta vez el número alto va a venir del sitio donde menos lo esperas.

El viaje del dato en LuzClara. La empresa sabe facturar lo que consumió cada cliente; tú vas a enseñarle a agruparlos por cómo consumen. Qué tarifa va a cada grupo lo decide marketing, pero necesita tus grupos para dejar de mandar la misma campaña a todo el mundo.

## El equipo: quién te pide qué

En un equipo pequeño, saber a quién acudir para cada cosa ahorra horas. Estos son los cuatro nombres que vas a oír toda la semana, y no todos quieren lo mismo de ti.

  • Baltasar Quintana — Data Lead, tu mentor. Estadístico de formación, trece años haciendo modelos en una eléctrica grande antes de montar este equipo. Enseña con preguntas en vez de dar respuestas, y es obsesivo con una sola cosa: que entiendas que el escalado (y el preprocesado en general) es parte del modelo, no un paso de limpieza previo. Su frase: «K-Means mide distancias. Si una variable va en centenas y otra de 0 a 1, la grande manda y la pequeña no pinta nada. Escalar no es cosmético: decide qué separa a tus grupos.» En cuanto ve un K-Means sin escalar, pregunta: «¿y qué variable te está separando los grupos de verdad?».
  • Rosalía Cuéllar — Responsable de Tarifas y Campañas, tu stakeholder. Nueve años en marketing de productos energéticos. Conoce el catálogo de tarifas al dedillo y ya tiene su conclusión antes de ver un dato: «yo sé que hay tres tipos de cliente, el de día, el de tarde y el de noche; dame esos tres grupos y lanzo la campaña». No es cerrada: es que cada semana sin segmentos es una campaña genérica que convierte poco. Te pasa los datos y mete prisa para el viernes.
  • Nico Berenguer — Ingeniero de Datos, tu compañero. Informático y cuatro años montando el data lake de curvas de carga. Conoce todas las marranadas de las lecturas de los contadores: unidades mezcladas según el modelo de contador, el CUPS escrito de mil formas, consumos negativos cuando el contador se reinicia. Es tu apoyo del día a día, aunque a veces te suelta un atajo sin explicarlo. Repite una frasecita a la que nadie hace mucho caso: «ojo con tratar el escalado como si fuera limpieza; eso aprende de los datos, y según cuándo lo ajustes te cambia el resultado».
  • Fátima Olmedo — Directora de Marketing y Clientes, la audiencia de la demo del viernes. Veinticuatro años en el sector energético. No quiere ver tu código ni tus gráficas de silueta: quiere saber cuántos grupos hay de verdad, cómo es cada uno en una frase, y si puede fiarse de ellos para repartir las tarifas. Si le enseñas algo que no se entiende en cinco segundos, desconecta. Prefiere una segmentación honesta e incómoda a una bonita que luego no funcione en campaña.

Hay una tensión sana entre Baltasar y Rosalía que vas a vivir toda la semana, y conviene entenderla en vez de sufrirla. Rosalía quiere los segmentos ya y da por hecho que «son tres, de cajón»; Baltasar quiere que los segmentos sean honestos y que el modelo esté bien montado, no uno inflado por un preprocesado tramposo. Las dos posturas tienen parte de razón, y tú estás en medio. La lección que te llevas no es «hazle caso a una»: es que darle a alguien unos grupos que no significan nada, solo porque son los que quería oír, es la forma más fácil de que una empresa gaste su presupuesto de campañas repartiendo tarifas por una dimensión que no decide ninguna tarifa.

## Dónde vive cada dato: el stack de LuzClara

LuzClara usa Power BI para los paneles que ve dirección: cuántos kWh se vendieron, cuántos clientes por tarifa. Eso describe lo que ya pasó, y está bien para eso. Pero Power BI no descubre grupos que nadie ha definido: para eso hay que coger las curvas de consumo, resumir el patrón de cada cliente en unas pocas features y dejar que un algoritmo encuentre los grupos solo. Eso vive en Python —pandas para preparar los datos, scikit-learn para el clustering—, y es donde vas a trabajar tú esta semana. Nadie espera que toques Power BI; aparece solo como el sitio donde dirección mira sus números.

  • Facturación y CRM (SAP + base de clientes): las altas, las tarifas contratadas, la potencia y los datos del punto de suministro (el CUPS). De aquí sale el maestro de clientes.
  • Curvas de carga (data lake de lecturas horarias): un registro por CUPS y hora con los kWh de esa hora. Es el oro del caso, pero son muchísimas filas por cliente.
  • Power BI: los cuadros de mando de dirección y marketing. Decorado, no tu herramienta.
  • Python (pandas, scikit-learn): lo que usas TÚ para explorar, agregar las curvas y segmentar.
  • SQL sobre extractos (DuckDB en local): para agregar y cruzar rápido los CSV que te pasan.

## Qué vas a construir esta semana

A lo largo de los cinco días vas a montar, sin apenas darte cuenta, un proyecto de código completo con estructura de repositorio. Cada bloque de código que escribas es un trozo de un fichero concreto: el lunes montas el esqueleto y cargas los datos (src/01_explorar.py), el martes limpias las curvas y las resumes en una fila por cliente (src/02_features.py), el miércoles agrupas con K-Means y eliges cuántos grupos (src/03_segmentar.py), el jueves descubres que esos grupos no sirven y lo arreglas (src/04_evaluar.py), y el viernes asignas el segmento a cada cliente y escribes las fichas y el informe (src/05_perfiles.py y el README). Al cerrar la semana tendrás un proyecto de segmentación de clientes que puedes subir a GitHub como pieza de portfolio.

Pero antes de nada, hoy no se escribe código. Hoy se encuadra el problema, porque un encargo mal entendido se arregla mal por mucho que programes. Los tres ejercicios de esta lección son para asegurarte de que entiendes qué clase de problema es este, qué va a pasar con cada columna y cómo le explicarías a Baltasar lo que te ha pedido. Es el trabajo de verdad del primer día.

Consejo de senior: la frase que más vas a oír esta semana es «el escalado es parte del modelo». Suena a tecnicismo y es justo lo contrario: es la idea que separa unos grupos que sirven de unos que no. Guárdala tal cual, aunque todavía no la entiendas del todo. El jueves vas a ver en una sola cifra por qué Baltasar la repite tanto.

Regístrate para guardar tu progreso.