Regularización
Objetivo
Medir dropout, weight decay y batch normalization.
Dataset real
- Dataset:
fashion_mnist - Fuente: Torchvision / Zalando Research
- Referencia: https://github.com/zalandoresearch/fashion-mnist
- Licencia/condiciones: MIT
- Uso: los datos se descargan desde la fuente; no hay ejemplos sintéticos ni archivos inventados.
Prendas reales normalizadas en 28×28.
Fundamento matemático
Regularización explícita e implícita; brecha train-validation.
Protocolo experimental
- Descargar y verificar la procedencia.
- Conservar o crear una partición reproducible.
- Ajustar transformaciones únicamente con
train. - Seleccionar modelo e hiperparámetros usando
validation. - Evaluar
testuna sola vez tras congelar la decisión. - Comparar con la línea base: MLP sin regularización.
- Guardar configuración, entorno, métricas, predicciones, gráficos y modelo.
Ejecución
python labs/19_regularization_dropout_batchnorm/train.py --quick
python labs/19_regularization_dropout_batchnorm/train.py --config improved
Preparar únicamente el dataset:
python -m neural_labs.cli dataset --lab 19_regularization_dropout_batchnorm
Inferencia y exportación:
neural-labs predict --lab 19_regularization_dropout_batchnorm --run latest --input sample.json
neural-labs export --lab 19_regularization_dropout_batchnorm --run latest --format onnx --verify
Métricas
accuracy, macro_f1, generalization_gap.
Archivos
notebook.ipynb: recorrido completo y ejecutable.notebook_student.ipynb: actividades evaluables sin soluciones.notebook_solution.ipynb: resolución docente y pruebas de referencia.train.py: interfaz de terminal que usa el mismo código del cuaderno.configs/baseline.yaml: configuración base.configs/improved.yaml: configuración ampliada.data/dataset.yaml: procedencia, licencia y política de partición.
Ejercicios
- Cambiar una decisión experimental y justificarla.
- Analizar errores por clase o segmento.
- Comparar costo, precisión y latencia.
- Documentar sesgos, limitaciones y usos no recomendados.
Material formativo v3
theory.md: fundamento, protocolo y riesgos de interpretación.experiments.md: hipótesis, variables controladas y tabla multi-semilla.assessment.md: preguntas y rúbrica de evaluación.lesson.yaml: resultados de aprendizaje, prerrequisitos y entregables.
Comandos profesionales
neural-labs quality --lab 19_regularization_dropout_batchnorm --quick
neural-labs benchmark --lab 19_regularization_dropout_batchnorm --quick --split-seed 42 --training-seeds 41 42 43
neural-labs leaderboard
Sellado del experimento
La partición se controla con split_seed; la inicialización y el entrenamiento con training_seed. El conjunto test se abre solamente después de seleccionar el checkpoint mediante validación y escribir experiment.lock.json.
🧠 Teoría
Teoría — Regularización
Propósito
Medir dropout, weight decay y batch normalization.
Idea central
Este laboratorio estudia dropout, batch normalization y weight decay usando fashion_mnist, un dataset público real procedente de Torchvision / Zalando Research.
Una red con suficiente capacidad puede memorizar el conjunto de entrenamiento —incluido su ruido— sin aprender el patrón que generaliza. Esa brecha entre el rendimiento en train y en validation es la señal del sobreajuste. La regularización es el conjunto de técnicas que restringen o perturban el modelo para que prefiera soluciones más simples y estables, sacrificando algo de ajuste en train a cambio de un mejor comportamiento en datos no vistos. El laboratorio compara tres mecanismos complementarios sobre imágenes reales de prendas (fashion_mnist, 28×28 en escala de grises, 10 clases).
La idea que conecta las tres técnicas es que penalizar la complejidad o introducir ruido controlado durante el entrenamiento actúa como un prior hacia funciones suaves. Weight decay limita la magnitud de los pesos; dropout impide que las neuronas dependan de coadaptaciones frágiles; batch normalization estabiliza las distribuciones internas y añade un ruido de mini-lote con efecto regularizador. Medimos su impacto observando cómo cambia la brecha train–validation y la exactitud final.
Fundamento matemático
Regularización explícita e implícita; brecha train-validation.
Weight decay (regularización L2) añade a la pérdida un término proporcional al cuadrado de la norma de los pesos: ℒ_total = ℒ_datos + (λ/2)·‖θ‖². Su gradiente es λ·θ, de modo que en cada paso los pesos se contraen ligeramente hacia cero: θ ← θ − η(∇ℒ_datos + λ·θ). La intuición es que pesos grandes producen funciones con curvaturas abruptas que se ajustan al ruido; penalizar ‖θ‖² empuja hacia funciones más planas y suaves. El hiperparámetro λ gradúa el compromiso entre ajuste y simplicidad.
Dropout apaga aleatoriamente una fracción p de las activaciones en cada paso de entrenamiento. Formalmente, cada activación se multiplica por una máscara Bernoulli: h̃ = h ⊙ m, con mᵢ ~ Bernoulli(1−p), y se reescala por 1/(1−p) para mantener la esperanza. Al forzar a la red a producir la salida correcta con subconjuntos distintos de neuronas, impide que unas pocas unidades formen "conspiraciones" (coadaptaciones) y reparte la representación de forma redundante. Puede leerse como un promedio implícito sobre un número exponencial de subredes que comparten pesos: en inferencia se usa la red completa sin máscara, aproximando ese ensamble.
Batch normalization normaliza cada activación dentro del mini-lote antes de la no linealidad. Para una activación x calcula la media μ_B y varianza σ²_B del lote, normaliza x̂ = (x − μ_B)/√(σ²_B + ε), y luego reescala y desplaza con parámetros aprendidos: y = γ·x̂ + β. Al mantener las distribuciones internas con media y varianza estables reduce el internal covariate shift, permite tasas de aprendizaje mayores y hace el entrenamiento menos sensible a la inicialización; los parámetros γ, β devuelven a la red la libertad de recuperar cualquier escala útil. Además, como μ_B y σ²_B dependen del mini-lote, inyectan un ruido estocástico que actúa como regularizador implícito. En inferencia se sustituyen por estadísticas acumuladas durante el entrenamiento, para que la predicción de un ejemplo no dependa de sus compañeros de lote.
La lectura conjunta: weight decay actúa sobre la magnitud de los pesos, dropout sobre la estructura de las representaciones y batch norm sobre la escala de las activaciones. Ninguno elimina el sobreajuste por decreto; cada uno desplaza el equilibrio sesgo–varianza, y el laboratorio mide empíricamente cuál reduce la brecha train–validation sin caer en el subajuste.
Protocolo científico
- Ajustar transformaciones, vocabulario, normalización y selección de variables solo con
train. - Usar
validationpara arquitectura, hiperparámetros, checkpoint y umbrales. - Evaluar
testuna vez, después de congelar las decisiones. - Comparar contra MLP sin regularización.
- Reportar variación entre semillas e intervalos de confianza; una métrica puntual no expresa toda la incertidumbre.
Riesgos de interpretación
Prendas reales normalizadas en 28×28.
El dataset refleja su proceso de recolección y no representa automáticamente otros períodos, países o poblaciones. Una asociación predictiva no demuestra causalidad.
Pregunta crítica
¿Qué técnica reduce sobreajuste sin subajustar?
🔗 Referencias
Las referencias apuntan a las obras; no se reproduce su contenido, la redacción es original.
- Goodfellow, Bengio y Courville — Deep Learning (MIT Press, 2016), cap. 7 — marco general de la regularización en aprendizaje profundo: penalizaciones de norma, dropout y estrategias de generalización.
- Géron — Hands-On Machine Learning with Scikit-Learn, Keras & TensorFlow (3.ª ed., O'Reilly, 2022), cap. 11 — técnicas prácticas para entrenar redes profundas, incluidas normalización por lotes y regularización.
- Srivastava et al. (2014), Dropout: A Simple Way to Prevent Neural Networks from Overfitting, JMLR — formulación original de dropout y su interpretación como ensamble implícito.
- Ioffe y Szegedy (2015), Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift, ICML — definición de batch normalization y su efecto sobre la estabilidad del entrenamiento.
- Fuente del dataset: https://github.com/zalandoresearch/fashion-mnist
- Consulte
docs/experiment-protocol.md,docs/reproducibility.mdydocs/ethics-and-licenses.md.
🔬 Experimentos
Plan de experimentos — Regularización
Hipótesis principal
Medir dropout, weight decay y batch normalization. La hipótesis debe aceptarse o rechazarse comparando el modelo con MLP sin regularización y no solo observando que la pérdida disminuye.
Experimento mínimo
- Ejecutar
baseline.yamlcon tres semillas. - Ejecutar
improved.yamlcon las mismas semillas. - Mantener fija la partición de datos dentro de cada semilla.
- Elegir la variante con
validation. - Comparar la variante elegida contra la línea base en
test. - Revisar intervalos de confianza, errores y costo computacional.
Experimento específico
Medir brecha train-validation.
Variables controladas
- Dataset y política de partición.
- Semillas declaradas.
- Presupuesto de épocas y criterio de parada.
- Métrica de selección:
accuracyo la especificada en la configuración. - Hardware y versiones registradas en
environment.json.
Tabla que debe completarse
| Variante | Semilla | Métrica validation | Métrica test | Tiempo | Parámetros | Observación |
|---|---|---|---|---|---|---|
| baseline | 41 | |||||
| baseline | 42 | |||||
| baseline | 43 | |||||
| improved | 41 | |||||
| improved | 42 | |||||
| improved | 43 |
Criterio de conclusión
La conclusión debe declarar magnitud de la mejora, incertidumbre, costo adicional, errores relevantes y condiciones bajo las cuales el resultado podría no repetirse.
📝 Evaluación
Evaluación — Regularización
Evidencias obligatorias
- Dataset preparado y auditoría sin solapamientos.
- Notebook ejecutado sin celdas omitidas.
- Línea base y modelo neuronal comparados.
- Resultados de al menos tres semillas o justificación del costo.
- Análisis de errores y limitaciones.
- Model card actualizada.
Preguntas
- Explique con sus palabras: Regularización explícita e implícita; brecha train-validation.
- ¿Qué información del dataset solo puede utilizarse durante entrenamiento?
- ¿Por qué la línea base MLP sin regularización es una comparación razonable?
- ¿Qué técnica reduce sobreajuste sin subajustar?
- ¿Qué cambiaría antes de usar este modelo fuera del laboratorio?
Rúbrica
| Criterio | Insuficiente | Adecuado | Excelente | Peso |
|---|---|---|---|---|
| Integridad de datos | mezcla particiones | separación correcta | auditoría, hashes y justificación | 20% |
| Implementación | no ejecuta | entrena y evalúa | código claro, reusable y probado | 20% |
| Diseño experimental | resultado aislado | comparación controlada | multi-semilla e incertidumbre | 20% |
| Análisis | repite métricas | interpreta errores | identifica sesgos, límites y costo | 25% |
| Comunicación | incompleta | reporte entendible | model card y conclusiones verificables | 15% |
La aprobación exige al menos 70% y cero errores críticos de fuga de datos.