El salto de "sé cómo una red calcula" a "sé construir una que sirva". El objetivo real no es acertar con los datos de entrenamiento, sino con datos que la red nunca vio.
1. Por qué XOR no nos sirve aquí
Durante todo el curso entrenamos XOR con 4 ejemplos. Pero esos 4 ejemplos son todo
el universo posible de XOR: no existen entradas "nuevas" que la red no haya visto. Memorizar los 4
casos es resolver el problema.
En el mundo real es al revés: tienes un puñado de ejemplos y quieres que la red
funcione con millones que nunca verá durante el entrenamiento. A eso se le llama
generalizar, y es el verdadero reto del aprendizaje automático. Para estudiarlo
cambiamos de ejemplo: ahora ajustaremos una curva con datos ruidosos.
2. Memorizar ≠ aprender
Imagina que tienes unos puntos que vienen de una curva real (una onda) pero con ruido
(errores de medición). Tu red debe descubrir la tendencia, no perseguir cada punto:
Underfitting (subajuste): el modelo es demasiado simple y ni siquiera captura la tendencia. Falla en train y en test.
Buen ajuste: captura la forma general e ignora el ruido. Funciona bien con datos nuevos.
Overfitting (sobreajuste): el modelo es tan flexible que pasa por todos los puntos de entrenamiento, ruido incluido. Acierta perfecto en train… y falla en datos nuevos.
3. La regla de oro: separa los datos
Nunca evalúas con los mismos datos con los que entrenaste. Se parten en tres:
Conjunto
Para qué sirve
Entrenamiento (train)
Ajustar los pesos. La red lo ve y aprende de él.
Validación (validation)
Elegir hiperparámetros (cuántas capas, learning rate...). La red NO entrena con él.
Prueba (test)
La medida final, honesta. Datos que el modelo nunca tocó.
🔑 Si mides el éxito con los datos de entrenamiento, te engañas: un modelo que memoriza saca
10/10 en train y suspende en la realidad. El error de test es el que importa.
🎮 Demo: mueve la complejidad y observa el overfitting
Mismos puntos (11 de entrenamiento y 9 de
prueba), sacados de una onda sin(x) con ruido.
El deslizador controla la complejidad del modelo (qué tan "flexible" es la curva).
Observa: subir la complejidad siempre baja el error de train… pero el de test forma una U.
1
● entrenamiento● prueba- - onda real— modelo
error según la complejidad
— train— test
4. La curva en U (lo más importante que llevarte)
El error de entrenamiento siempre baja cuando aumentas la complejidad — un modelo
más flexible siempre puede acercarse más a los puntos que ya conoce. Pero el error de test
baja y luego SUBE: forma una U. El punto más bajo de esa U es la complejidad ideal. Pasarte
de ahí es overfitting: mejoras en lo que ya sabes y empeoras en lo que importa.
5. Cómo combatir el overfitting
Más datos: la cura más efectiva. Con más ejemplos, memorizar el ruido deja de funcionar.
Modelo más simple: menos capas/neuronas = menos capacidad de memorizar.
Regularización L2 (weight decay): penaliza los pesos grandes, forzando curvas más suaves.
Dropout: durante el entrenamiento, "apaga" neuronas al azar en cada paso, para que la red no dependa de ninguna en exceso.
Early stopping: deja de entrenar cuando el error de validación empieza a subir (justo en el fondo de la U).
Todas comparten la misma idea: limitar cuánto puede el modelo amoldarse al ruido,
obligándolo a quedarse con la tendencia general.
6. Resumen
Aprender no es memorizar: es generalizar. Mide siempre con datos que el modelo no
vio (test). El error de train engaña; el de test es la verdad. Demasiada poca capacidad →
underfitting; demasiada → overfitting; el equilibrio está en el fondo de la U. Con esto cierras
el último hueco grande de los fundamentos: ya no solo sabes cómo aprende una red, sino cómo lograr
que sirva.