Overfitting
Explora las causas y los síntomas del sobreajuste en el aprendizaje automático. Aprende a evitar una varianza alta y mejorar la generalización usando Ultralytics YOLO26.
El sobreajuste se produce en el aprendizaje automático cuando un modelo aprende demasiado bien los datos de entrenamiento y captura el ruido y las fluctuaciones aleatorias en lugar de la distribución subyacente de los datos. En vez de aprender patrones generales aplicables a datos nuevos que no ha visto, un modelo sobreajustado memoriza eficazmente los ejemplos concretos del conjunto de entrenamiento. Esto da lugar a un rendimiento excelente con los datos de entrenamiento, pero a una mala generalización en situaciones del mundo real. A menudo se describe como «alta varianza», lo que significa que las predicciones del modelo varían significativamente en función del conjunto de datos concreto utilizado para el entrenamiento.
Por qué se produce el sobreajuste#
La causa principal del sobreajuste es una complejidad excesiva del modelo en relación con la cantidad de datos disponibles. Si una red neuronal es demasiado grande —es decir, tiene demasiadas capas o parámetros—, puede memorizar fácilmente los ejemplos de entrenamiento. Otros factores contribuyentes son:
- Datos de entrenamiento insuficientes: Los conjuntos de datos pequeños pueden contener correlaciones espurias que no existen en la población general. Los modelos entrenados con datos limitados tienden a aprender estos patrones accidentales.
- Ruido y valores atípicos en los datos: Un alto nivel de ruido o la presencia de valores atípicos no representativos en los datos de entrenamiento pueden inducir a error al modelo y hacer que ajuste sus parámetros internos para adaptarse a anomalías en lugar de a la señal real.
- Duración prolongada del entrenamiento: Entrenar durante demasiadas épocas permite que el modelo siga refinando sus pesos hasta que se ajusta al ruido del conjunto de entrenamiento. Esto suele supervisarse mediante los datos de validación.
Sobreajuste frente a subajuste#
Es importante distinguir el sobreajuste del subajuste. Mientras que el sobreajuste implica aprender demasiados detalles, incluido el ruido, el subajuste se produce cuando un modelo es demasiado sencillo para capturar la estructura subyacente de los datos. Un modelo subajustado tiene un rendimiento deficiente tanto con los datos de entrenamiento como con los datos nuevos, lo que suele dar lugar a un sesgo alto. El equilibrio entre estos dos extremos se conoce como compromiso sesgo-varianza.
Cómo evitar el sobreajuste#
Los ingenieros utilizan varias técnicas para mitigar el sobreajuste y mejorar la robustez del modelo:
- Regularización: Técnicas como la regularización L1/L2 o la adición de capas de dropout introducen penalizaciones o aleatoriedad durante el entrenamiento, lo que evita que el modelo dependa demasiado de características concretas.
- Parada temprana: Supervisar la función de pérdida en un conjunto de validación permite detener el entrenamiento cuando el rendimiento con datos que no ha visto deja de mejorar, aunque la precisión del entrenamiento siga aumentando.
- Aumento de datos: Aumentar artificialmente el tamaño y la diversidad del conjunto de entrenamiento mediante el aumento de datos dificulta que el modelo memorice imágenes exactas.
- Validación cruzada: El uso de técnicas como la validación cruzada k-fold garantiza que el modelo se evalúe con distintos subconjuntos de datos, lo que proporciona una estimación más fiable de su rendimiento.
Ejemplos del mundo real#
El sobreajuste puede tener consecuencias graves al implementar IA en entornos de producción:
- Diagnóstico médico: En la IA en el ámbito sanitario, un modelo entrenado para detectar cáncer de piel podría sobreajustarse a las condiciones de iluminación o a las marcas de la regla presentes en las imágenes de entrenamiento. Al implementarlo en una clínica con una iluminación o un equipo diferentes, el modelo podría no identificar correctamente las lesiones malignas porque se basaba en indicios irrelevantes del fondo.
- Previsión financiera: Un modelo de predicción del precio de las acciones podría sobreajustarse a tendencias históricas del mercado impulsadas por un acontecimiento concreto y no repetible, como una crisis económica puntual. Es probable que un modelo así no prediga con precisión los movimientos futuros de las acciones, porque habría memorizado anomalías del pasado en lugar de aprender la dinámica fundamental del mercado.
Ejemplo de código: parada temprana con Ultralytics YOLO26#
Mediante la Ultralytics Platform o scripts de entrenamiento locales, puedes evitar el sobreajuste estableciendo una paciencia para la parada temprana. El entrenamiento se detiene si la aptitud de validación no mejora durante un número determinado de épocas.
from ultralytics import YOLO
# Load the YOLO26 model (latest generation)
model = YOLO("yolo26n.pt")
# Train with early stopping enabled (patience=50 epochs)
# If validation metrics don't improve for 50 epochs, training stops.
results = model.train(data="coco8.yaml", epochs=100, patience=50)Conceptos relacionados#
- Generalización: Capacidad de un modelo para adaptarse y rendir bien con datos nuevos que no ha visto anteriormente, lo contrario del sobreajuste.
- Validación cruzada: Técnica para evaluar cómo se generalizarán los resultados de un análisis estadístico a un conjunto de datos independiente.
- Regularización: Métodos utilizados para reducir los errores ajustando adecuadamente una función al conjunto de entrenamiento proporcionado y evitar el sobreajuste.









