Ir al contenido

Casos de estudio de principio a fin

Cada tema del curso tiene sentido dentro de un flujo: plantear → preparar → elegir modelo → validar → interpretar → decidir. Estos cinco casos recorren el flujo completo y muestran qué tema entra en cada paso. Los números son ilustrativos (salvo los de datasets de scikit-learn que ya aparecen en las slides).

Plantear. T = alquiler mensual (regresión); P = RMSE en soles sobre departamentos nuevos; E = 5 000 anuncios. → fundamentos

Preparar.

  • Partición 70/15/15 antes de cualquier transformación. Distrito (categórica) → one-hot. Área y antigüedad → estandarizar con estadísticas de train.
  • Outliers: anuncios de S/ 50 000 (errores de tipeo) inflan el RMSE y tuercen la recta: inspeccionar y limpiar. → outliers

Elegir modelo.

  1. Baseline: predecir la mediana del distrito (RMSE val ≈ S/ 520).
  2. Regresión lineal: RMSE val ≈ S/ 310. Residuales vs área con forma de U ⇒ agregar aˊrea2\text{área}^2.
  3. Con 60 columnas (one-hot + interacciones) se usa ridge con λ por 5-fold CV: RMSE val ≈ S/ 280. → ridge, CV

Interpretar. Peso de área (estandarizada) = +410 ⇒ una desviación estándar más de área (~25 m²) sube el alquiler ~S/ 410, con distrito y cuartos fijos. Asociación, no causalidad.

Reportar. Test una vez: RMSE ≈ S/ 290, R2≈0.78R^2 \approx 0.78.

from sklearn.compose import ColumnTransformer
from sklearn.preprocessing import OneHotEncoder, StandardScaler, PolynomialFeatures
from sklearn.pipeline import make_pipeline
from sklearn.linear_model import RidgeCV
import numpy as np
prep = ColumnTransformer([
('num', make_pipeline(PolynomialFeatures(2, include_bias=False), StandardScaler()), ['area', 'antiguedad', 'cuartos']),
('cat', OneHotEncoder(handle_unknown='ignore'), ['distrito']),
])
model = make_pipeline(prep, RidgeCV(alphas=np.logspace(-3, 3, 30), cv=5)).fit(X_tr, y_tr)
PasoPreguntaTema del curso
Plantear¿T, P, E? ¿regresión o clasificación? ¿qué error es más caro?fundamentos, métricas
Preparar¿partición sin fugas? ¿escalar? ¿codificar?train/val/test, CV
Baseline¿qué tan bien lo hace algo trivial?R2R^2 vs la media, «siempre negativo»
Modelo¿lineal basta? ¿pocos datos? ¿explicable?guía de modelos
Hiperparámetrosλ, C, γ, α, profundidadvalidación cruzada
Diagnóstico¿sesgo o varianza?sesgo–varianza, curvas de aprendizaje
Decisión¿qué umbral? ¿qué métrica reporto?matriz de confusión, ROC/PR
Reportetest una sola vezmaldición del ganador