Analítica y dashboards

Overfitting: qué es el sobreajuste y cómo evitarlo

5 min de lectura
Overfitting o sobreajuste explicado con validación cruzada

El overfitting o sobreajuste ocurre cuando un modelo aprende tan al detalle los datos de entrenamiento que memoriza también su ruido, y por eso falla con datos nuevos. Se detecta comparando el rendimiento en entrenamiento contra el de un conjunto que el modelo no vio: si acierta mucho en el primero y poco en el segundo, hay sobreajuste. Lo contrario es el underfitting, cuando el modelo es demasiado simple y no captura ni siquiera el patrón real. Las formas de evitarlo son conseguir más datos, simplificar el modelo, aplicar regularización, detener el entrenamiento a tiempo y usar validación cruzada para medir de forma más confiable.

Tabla de contenidos

Respuesta rápida: El overfitting o sobreajuste ocurre cuando un modelo aprende tan al detalle los datos de entrenamiento que memoriza también su ruido, y por eso falla con datos nuevos. Se detecta comparando el rendimiento en entrenamiento contra el de un conjunto que el modelo no vio: si acierta mucho en el primero y poco en el segundo, hay sobreajuste. Lo contrario es el underfitting, cuando el modelo es demasiado simple y no captura ni siquiera el patrón real. Las formas de evitarlo son conseguir más datos, simplificar el modelo, aplicar regularización, detener el entrenamiento a tiempo y usar validación cruzada para medir de forma más confiable.

Memorizar no es aprender

Un alumno estudia para un examen memorizando las respuestas de exámenes anteriores. En un simulacro con esas mismas preguntas saca veinte. En el examen real, con preguntas distintas sobre el mismo tema, se hunde.

No aprendió: memorizó. Y eso es exactamente el overfitting.

Un modelo sobreajustado ha aprendido los datos de entrenamiento con tanto detalle que capturó también el ruido: las casualidades de esa muestra específica, que no se van a repetir. Cuando llegan datos nuevos, ese ruido memorizado no ayuda, estorba.

Cómo detectarlo

Es la parte fácil y la que muchos se saltan. Separas tus datos en dos y comparas:

EntrenamientoPruebaDiagnóstico
BienBienEl modelo generaliza. Es lo que buscas
Muy bienMalOverfitting: memorizó
MalMalUnderfitting: es demasiado simple
MalBienAlgo está mal en cómo dividiste los datos

La segunda fila es la señal clásica: 98 por ciento de acierto en entrenamiento y 62 en prueba. Esa brecha es el sobreajuste.

La cuarta fila casi siempre significa que el conjunto de prueba quedó más fácil por azar, o que hay fuga de información: alguna variable del entrenamiento contiene indirectamente la respuesta. Si un modelo te da resultados demasiado buenos, sospecha de esto antes de celebrar.

Underfitting: el problema contrario

El underfitting es un modelo demasiado simple para el patrón que hay en los datos. Ni siquiera aprende bien lo que debería, así que rinde mal en todos lados.

Es intentar ajustar una recta a datos que claramente forman una curva. Por más datos que le des, la recta no puede representarlos.

Los dos problemas son los extremos de un mismo eje, que se conoce como el compromiso entre sesgo y varianza:

  • Modelo muy simple: mucho sesgo, poca varianza. Se equivoca siempre parecido. Underfitting.
  • Modelo muy complejo: poco sesgo, mucha varianza. Cambia mucho según los datos que le toquen. Overfitting.
  • El punto justo: lo bastante complejo para el patrón real, no tanto como para el ruido.

Ese punto justo no se calcula: se busca probando y midiendo. Por eso el ajuste de hiperparámetros es una parte tan grande del trabajo real.

Validación cruzada

Dividir en entrenamiento y prueba una sola vez tiene un problema: el resultado depende de la suerte de esa división. Si por azar los casos difíciles cayeron todos en prueba, tu modelo se ve peor de lo que es.

La validación cruzada resuelve eso. La versión más usada, llamada k-fold, funciona así:

  1. Divides los datos en k partes iguales, normalmente 5 o 10.
  2. Entrenas con k menos 1 partes y evalúas con la que quedó fuera.
  3. Repites k veces, dejando fuera una parte distinta cada vez.
  4. Promedias los k resultados.

Ventajas: todos los datos se usan para entrenar y para evaluar en algún momento, y el promedio es mucho más estable que una sola medición. Además, la variación entre los k resultados te dice algo valioso: si van de 0.60 a 0.90, tu modelo es muy inestable aunque el promedio se vea bien.

El costo es que entrenas k veces, así que tarda k veces más. Con modelos pesados a veces no es viable y se usan menos particiones.

Una advertencia importante: con series de tiempo no se puede usar k-fold normal. Mezclar el orden significa entrenar con datos del futuro para predecir el pasado, que es una fuga de información garantizada. Para series existe la validación cruzada temporal, que siempre entrena con lo anterior y evalúa con lo posterior.

Las cinco formas de evitarlo

  1. Más datos. La solución más efectiva y la menos disponible. Con más ejemplos, el ruido pesa menos y el patrón real se impone.
  2. Simplificar el modelo. Menos variables, menos profundidad en un árbol, menos capas en una red. Si un modelo simple rinde parecido, quédate con él.
  3. Regularización. Penalizar la complejidad dentro del propio entrenamiento. Las dos variantes clásicas son L1, que además elimina variables poniéndoles coeficiente cero, y L2, que reduce todos los coeficientes sin eliminarlos.
  4. Detención temprana. Parar el entrenamiento cuando el rendimiento en validación deja de mejorar, aunque en entrenamiento siga bajando el error.
  5. Validación cruzada. No lo evita por sí sola, pero te lo muestra a tiempo, que es lo que permite corregir.

Y una que no está en las listas de manual pero es la que más veces resuelve el problema en la práctica: revisar las variables. Muchas veces el sobreajuste viene de haber incluido una variable que contiene información que en producción no vas a tener, o que se filtró del futuro. Antes de tocar el modelo, mira qué le estás dando de comer.

Preguntas frecuentes

¿Qué es el overfitting?

Es cuando un modelo aprende los datos de entrenamiento con tanto detalle que memoriza también su ruido, y por eso falla al enfrentarse a datos nuevos. Se traduce al español como sobreajuste.

¿Cómo se detecta el sobreajuste?

Comparando el rendimiento en los datos de entrenamiento contra el de un conjunto que el modelo no vio. Si acierta mucho en el primero y notablemente menos en el segundo, hay sobreajuste. Esa brecha entre ambos es la señal.

¿Cuál es la diferencia entre overfitting y underfitting?

El overfitting es un modelo demasiado complejo que memoriza el ruido y falla con datos nuevos. El underfitting es un modelo demasiado simple que no captura ni siquiera el patrón real, y por eso rinde mal tanto en entrenamiento como en prueba.

¿Qué es la validación cruzada?

Es dividir los datos en k partes, entrenar k veces dejando fuera una parte distinta cada vez y promediar los resultados. Da una medición mucho más estable que una sola división, y la variación entre las k mediciones revela si el modelo es inestable.

¿Cómo se evita el overfitting?

Consiguiendo más datos, simplificando el modelo, aplicando regularización, deteniendo el entrenamiento cuando la validación deja de mejorar y usando validación cruzada para detectarlo a tiempo. Antes de todo eso conviene revisar si alguna variable está filtrando información.

¿Qué es la regularización?

Es penalizar la complejidad del modelo durante el entrenamiento para que no se ajuste demasiado. La variante L1 reduce coeficientes hasta cero, eliminando variables, y la L2 los reduce todos sin eliminarlos.

Machine learning no se aprende memorizando fórmulas

La IA ya escribe el código del modelo. Lo que decide es saber qué técnica corresponde, si el resultado tiene sentido y cómo se lee. Eso es lo que enseño en el curso de SQL + Python, que incluye siete módulos de machine learning con proyectos y datasets reales. En vivo.

Formate con Gera

¿Quieres aprender datos?

Cursos en vivo de SQL, Python y Power BI con Gera. Clases por Zoom, datos reales y feedback directo. Tambien hacemos capacitacion in-company.

Ver cursos de datos
overfitting

Comparte este artículo:

Sigue a Miss Yera:
WhatsApp directo
¿Tienes alguna duda o consulta?