Reto de ingeniería
Operaciones de NexoRetail necesita saber cuántos envíos habrá mañana para decidir cuántas instancias de procesamiento reservar. Antes de eso hay que preparar los datos correctamente, evitar fugas de información, comparar el modelo contra una referencia simple, y solo entonces convertir una predicción en una decisión de capacidad justificada.
Objetivos de la sesión
- Cargar e inspeccionar datos reales con DuckDB-Wasm: perfilado, calidad y preparación mediante SQL real.
- Separar variables de entrada (X) de la variable objetivo (y) sin fuga de información.
- Entrenar y evaluar un modelo de regresión lineal múltiple sin librerías externas.
- Interpretar MAE y RMSE, y contrastarlos contra líneas base simples.
- Convertir una predicción de demanda en una decisión de capacidad justificada.
Modelo didáctico: este laboratorio utiliza un modelo simplificado para estudiar el flujo de analítica predictiva. Un sistema real requeriría validación adicional, monitoreo, versionado, tratamiento avanzado de datos y revisión del contexto operacional.
1 · Laboratorio de datos: preparación real (DuckDB-Wasm)
DuckDB-Wasm carga, inspecciona, limpia, filtra y prepara REALMENTE el dataset mediante SQL, y extrae la partición train/test. El modelo predictivo (regresión, métricas, predicción, decisión) siempre se calcula después, en Vanilla JS — ver secciones 4 en adelante.
Los datos que selecciones o generes aquí se procesan en este navegador y no se envían al servidor del curso ni a ninguna API externa.
Inicializando motor local de datos…
Genera un dataset reproducible: la misma semilla produce siempre el mismo dataset (sección 4 del encargo).
Fuente: —
1a · Esquema (DESCRIBE)
1d · Variables de entrada (X) y variable objetivo (y)
Selecciona el objetivo (y) y las variables de entrada (X). Solo columnas numéricas/binarias son seleccionables como X en este laboratorio (las categóricas como región no se codifican aquí). Si seleccionas una variable que revela directamente el objetivo (fuga de información), el sistema la señala y bloquea el entrenamiento.
2 · Hipótesis
Completa las tres preguntas y pulsa «Registrar hipótesis y comenzar» para desbloquear el entrenamiento.
4 · Variables usadas por el modelo
Cada variable puede aportar información asociada a la demanda (no necesariamente causal): por ejemplo, la demanda del día anterior captura inercia de corto plazo, y las promociones o feriados capturan eventos conocidos de antemano.
5 · Real vs. predicho (conjunto de prueba)
El detalle numérico de cada día de prueba está en la tabla de residuales; este gráfico es un apoyo visual.
6 · Métricas: modelo vs. líneas base
MODELO DIDÁCTICO: regresión lineal múltiple resuelta con eliminación Gauss-Jordan (sin librerías). Un MAE bajo en términos absolutos no significa nada por sí solo; se compara contra líneas base simples.
| Modelo | MAE | RMSE |
|---|
Coeficientes entrenados
Indican asociación dentro de este modelo y este dataset, no causalidad. Por ejemplo, un coeficiente positivo en "promoción" no prueba que la promoción provoque exactamente esa cantidad de demanda adicional.
7 · Residuales (real − predicción)
Los errores no son todos iguales: revisa si hay días donde el modelo falla sistemáticamente más (p. ej. promociones o feriados).
8 · Muestra del dataset (train/test)
9 · Gemelo de decisión: predicción → capacidad
Configura un escenario futuro para obtener una estimación del modelo, no una certeza.
10 · Decisión de ingeniería
11 · Evidencia de aprendizaje
Continuidad curricular: esta semana recupera todo el laboratorio
Semana 2: el dataset de demanda podría almacenarse en el ecosistema NoSQL diseñado allí.
Semanas 3–4: con más datos, tanto el almacenamiento del histórico como el entrenamiento se distribuirían entre nodos y workers.
Semana 5: en producción, los pedidos reales llegarían por streaming para reentrenar o recalibrar el modelo.
Semana 6: el servicio de predicción necesitaría los mismos controles de confidencialidad, integridad y disponibilidad.
Semana 7: las instancias sugeridas aquí usan la misma conversión demanda→capacidad que el autoescalado multicloud.