Ultralytics YOLO27: Únete a la lista de espera.
Licencia YOLO
Volver al glosario de Ultralytics

Overfitting

El sobreajuste se produce cuando un modelo memoriza los datos de entrenamiento, incluido el ruido, y falla con datos nuevos. Descubre cómo detectarlo y qué métodos lo evitan.

El sobreajuste se produce cuando un modelo de aprendizaje automático se ajusta tanto a sus datos de entrenamiento que aprende el ruido y las particularidades de esos ejemplos específicos, además de los patrones reales. Un modelo sobreajustado obtiene buenos resultados con los datos de entrenamiento y resultados sensiblemente peores con datos nuevos; la magnitud de esa diferencia mide el grado de sobreajuste. En términos de sesgo-varianza, el sobreajuste implica una varianza alta: las predicciones del modelo dependen demasiado de las muestras concretas que ha visto.

Cómo reconocer el sobreajuste#

La señal más clara es que aumenta la diferencia entre los resultados con los datos de entrenamiento y los datos de validación. En las curvas de aprendizaje trazadas por época, la pérdida de entrenamiento sigue bajando mientras que la pérdida de validación se estabiliza y después aumenta; las métricas de validación, como la precisión media promedio (mAP), se estancan o empeoran. La demostración clásica a pequeña escala ajusta polinomios de dos grados distintos a 12 puntos ruidosos muestreados de una onda sinusoidal:

import numpy as np
from numpy.polynomial import Polynomial

rng = np.random.default_rng(0)

# 12 noisy training points from a sine wave, plus clean test points
x_train = rng.uniform(0, 1, 12)
y_train = np.sin(2 * np.pi * x_train) + rng.normal(0, 0.2, 12)
x_test = np.linspace(0, 1, 200)
y_test = np.sin(2 * np.pi * x_test)

for degree in (3, 9):
    fit = Polynomial.fit(x_train, y_train, degree)
    train_mse = np.mean((fit(x_train) - y_train) ** 2)
    test_mse = np.mean((fit(x_test) - y_test) ** 2)
    print(f"Degree {degree:2d}: train MSE {train_mse:.4f}, test MSE {test_mse:.4f}")

El polinomio de grado 9 tiene flexibilidad suficiente para ajustarse al ruido; reduce así el error de entrenamiento de 0.0356 a 0.0148, pero multiplica por diez el error de prueba, que pasa de 0.0182 a 0.1859.

Sobreajuste y subajuste#

El infraajuste es el problema opuesto: el modelo es demasiado sencillo o se entrena demasiado poco para captar los patrones de los datos, por lo que obtiene malos resultados tanto con los datos de entrenamiento como con los de validación. Comparar los dos errores permite distinguir ambos casos e identificar soluciones distintas.

Causas habituales#

  • Capacidad excesiva para los datos: Una red neuronal con millones de parámetros puede memorizar sin dificultad unos pocos cientos de imágenes.
  • Datos ruidosos o mal etiquetados: La ausencia de cajas, las clases incorrectas y los valores atípicos dan al modelo errores que puede aprender, aunque no existan en el mundo real.
  • Entrenamiento demasiado largo: Una vez aprendidos los patrones útiles, las épocas adicionales suelen limitarse a ajustar el ruido restante.
  • Datos de entrenamiento poco variados: Un detector entrenado solo con imágenes diurnas de una cámara puede aprender el fondo y la iluminación de esa cámara y no detectar objetos en una ubicación nueva.

Cómo evitar el sobreajuste#

  • Más datos y más variados: Añadir ejemplos reales es la solución más directa, y el aumento de datos multiplica la variedad al voltear, escalar, cambiar el color y combinar imágenes existentes.
  • Regularización: El decaimiento de pesos penaliza los pesos grandes, y el dropout desactiva unidades aleatoriamente durante el entrenamiento para evitar que una sola característica se vuelva imprescindible.
  • Modelos más pequeños o preentrenados: Un modelo más pequeño tiene menos margen para memorizar, y el aprendizaje por transferencia con las primeras capas congeladas reduce el número de pesos que deben aprenderse a partir de un conjunto de datos pequeño.
  • Parada temprana: Evaluar el modelo con datos de validación después de cada época y detener el entrenamiento cuando la puntuación deje de mejorar evita que el modelo llegue a aprender el ruido.
  • Evaluación rigurosa: La validación cruzada ofrece una estimación más fiable del error de generalización en conjuntos de datos pequeños, y un conjunto de prueba independiente detecta el sobreajuste a los datos de validación durante el ajuste de hiperparámetros.

El entrenamiento de Ultralytics YOLO aplica la parada temprana mediante el argumento patience, que finaliza el entrenamiento tras ese número de épocas sin mejoras en la aptitud de validación (mAP50-95 para detección), y guarda los pesos de la mejor época como best.pt aunque el entrenamiento llegue hasta el final.

from ultralytics import YOLO

# Carga un modelo YOLO26n preentrenado
model = YOLO("yolo26n.pt")

# # Permite hasta 100 épocas, pero detén el entrenamiento tras 20 épocas sin mejoras en la validación
results = model.train(data="coco8.yaml", epochs=100, patience=20)

El valor predeterminado es patience=100 y, para conjuntos de datos con menos de 1000 imágenes, la YOLO26 guía de ajuste fino sugiere epochs=50 con patience=20.

  • Fuga de datos: solapamiento entre los datos de entrenamiento y los de evaluación que oculta el sobreajuste. Si fotogramas casi idénticos del mismo vídeo aparecen tanto en la partición de entrenamiento como en la de validación, un modelo que ha memorizado el conjunto de entrenamiento sigue obteniendo buenos resultados en validación, y el problema no aparece hasta la puesta en producción. Dividir por vídeo o escena lo evita.
  • Aprendizaje de atajos: El modelo depende de una señal espuria, como una marca de agua o el fondo, presente tanto en los datos de entrenamiento como en los de validación. Las puntuaciones de validación parecen buenas, pero el modelo falla con datos nuevos cuando esa señal no está.

Explora las soluciones

Visión artificial en el deporte

Visión artificial en el deporte

Descubre cómo Ultralytics YOLO impulsa la visión artificial en el deporte con el seguimiento de jugadores y balones, analíticas de rendimiento, información útil para entrenadores y rehabilitación de deportistas.
Más información
Visión artificial para imágenes aéreas

Visión artificial para imágenes aéreas

Convierte imágenes aéreas y de drones en información útil en tiempo real para la agricultura, la acuicultura, la conservación y el análisis geoespacial con Ultralytics YOLO.
Más información
Visión artificial en el sector aeroespacial

Visión artificial en el sector aeroespacial

Aplica la visión artificial en el sector aeroespacial con Ultralytics YOLO para inspeccionar aeronaves, detectar objetos extraños en pistas, gestionar operaciones en tierra y detectar defectos en materiales compuestos.
Más información
Visión artificial en seguridad

Visión artificial en seguridad

Protege todas tus instalaciones con los modelos Ultralytics YOLO. La IA visual permite supervisar perímetros, detectar amenazas, reconocer matrículas y mejorar la seguridad laboral.
Más información
Visión artificial en robótica

Visión artificial en robótica

Potencia máquinas más inteligentes con los modelos Ultralytics YOLO. La IA visual en robótica impulsa la navegación autónoma, la percepción, el seguimiento de objetos y el control en tiempo real.
Más información
Visión artificial en logística

Visión artificial en logística

Agiliza la logística con modelos Ultralytics YOLO. La IA visual permite inspeccionar paquetes, clasificarlos, realizar el seguimiento de vehículos y supervisar la seguridad del almacén en tiempo real.
Más información
Visión artificial en el comercio minorista

Visión artificial en el comercio minorista

Reinventa el comercio minorista con modelos Ultralytics YOLO. La IA visual permite realizar el seguimiento del inventario, supervisar estanterías, gestionar colas y obtener información más útil sobre los clientes.
Más información
Visión artificial en el sector sanitario

Visión artificial en el sector sanitario

Desarrolla soluciones sanitarias con modelos Ultralytics YOLO. La IA visual en el sector sanitario permite acelerar el diagnóstico por imagen, mejorar los diagnósticos y supervisar a los pacientes.
Más información
Visión artificial en la fabricación

Visión artificial en la fabricación

Optimiza la fabricación con modelos Ultralytics YOLO. La IA visual mejora el control de calidad, la detección de defectos, el cumplimiento de las normas de uso de EPI y la automatización de las líneas de montaje.
Más información
Visión artificial en la automoción

Visión artificial en la automoción

Aplica la visión artificial al sector de la automoción con modelos Ultralytics YOLO. La IA visual mejora la seguridad vial, la asistencia al conductor y la automatización de vehículos para lograr carreteras más inteligentes.
Más información
Visión artificial en la agricultura

Visión artificial en la agricultura

Incorpora la IA de visión a la agricultura inteligente con modelos Ultralytics YOLO. Impulsa la monitorización de cultivos, el seguimiento del ganado y la agricultura de precisión para obtener cosechas más abundantes e inteligentes.
Más información

¡Construyamos juntos el futuro de la IA!

Inicia tu recorrido hacia el futuro del aprendizaje automático