Glosario

Sobreajuste

Aprenda a identificar, prevenir y abordar el sobreajuste en el aprendizaje automático. Descubra técnicas para mejorar la generalización de modelos y el rendimiento en el mundo real.

El sobreajuste en el aprendizaje automático (AM) se produce cuando un modelo aprende demasiado bien los datos de entrenamiento, capturando el ruido y las fluctuaciones aleatorias en lugar del patrón subyacente. Esto da lugar a un rendimiento excelente en el conjunto de datos de entrenamiento, pero a una generalización deficiente en datos nuevos y desconocidos. Esencialmente, el modelo se vuelve demasiado complejo y se adapta específicamente a los ejemplos de entrenamiento, algo parecido a memorizar respuestas en lugar de comprender conceptos. Se trata de un problema habitual a la hora de entrenar modelos de IA, especialmente con algoritmos complejos como las redes neuronales utilizadas en Ultralytics YOLO para tareas como la detección de objetos y la segmentación de imágenes.

Comprender el sobreajuste

El sobreajuste surge porque los modelos de ML pretenden minimizar los errores en los datos de entrenamiento. Si un modelo posee una complejidad excesiva (por ejemplo, demasiados parámetros o capas en un modelo de aprendizaje profundo ), puede ajustarse incluso al ruido aleatorio presente en el conjunto de entrenamiento. Este ruido no representa verdaderos patrones subyacentes y es poco probable que esté presente en nuevos conjuntos de datos. Imagínese adaptar un traje perfectamente a las medidas exactas de una persona en un día concreto: podría no quedarle bien si su peso fluctúa ligeramente o si otra persona se lo prueba. En ML, este "ajuste perfecto" en los datos de entrenamiento se traduce en inflexibilidad y un rendimiento deficiente en los datos del mundo real, lo que suele denominarse "generalización deficiente".

El problema opuesto es la inadaptación, cuando un modelo es demasiado simple para captar la estructura subyacente de los datos. Un modelo infraajustado funciona mal tanto con los datos de entrenamiento como con los nuevos, porque no ha aprendido lo suficiente. El objetivo es encontrar un equilibrio óptimo, que a menudo se discute en el contexto del equilibrio entre sesgo y varianza, creando un modelo que generalice bien los datos no vistos. Una varianza elevada es característica de un ajuste excesivo, mientras que un sesgo elevado es característico de un ajuste insuficiente. Entender este concepto de compensación es crucial para el desarrollo de modelos.

Ejemplos reales de sobreajuste

  • Análisis de imágenes médicas: Pensemos en un modelo entrenado para el análisis de imágenes médicas, como la detección de tumores en resonancias magnéticas. Si los datos de entrenamiento proceden principalmente de un único modelo de escáner de IRM, la IA podría adaptarse en exceso a las características específicas de la imagen (como los patrones de ruido o la resolución) de esa máquina. Cuando se le presentan exploraciones de un escáner diferente o imágenes de menor calidad, su rendimiento puede disminuir significativamente porque aprendió artefactos específicos de la máquina en lugar de características generales del tumor. El sesgo del conjunto de datos puede agravar este problema.
  • Vehículos autónomos: Un modelo de detección de objetos utilizado en un vehículo autónomo podría entrenarse en gran medida con imágenes captadas en días despejados y soleados. Este modelo podría alcanzar una gran precisión en datos de prueba similares, pero no detectar con fiabilidad peatones, ciclistas u otros vehículos en condiciones adversas como lluvia intensa, niebla o de noche. Se adapta en exceso a las señales visuales específicas del entorno de entrenamiento (por ejemplo, sombras intensas, luz brillante) en lugar de aprender las características generales y sólidas de los objetos en diferentes condiciones. Garantizar la diversidad de los datos de entrenamiento, utilizando potencialmente conjuntos de datos como COCO o Argoverse, ayuda a mitigar este problema.

Identificar el sobreajuste

La sobreadaptación suele identificarse comparando el rendimiento de un modelo en el conjunto de datos de entrenamiento frente a un conjunto de datos de validación independiente.

  • Métricas de rendimiento: Controle métricas como la exactitud, la precisión, la recuperación y la puntuación F1. Si las métricas de entrenamiento siguen mejorando mientras que las métricas de validación se estancan o empeoran, es probable que el modelo esté sobreajustado. El valor de la función de pérdida suele disminuir significativamente en el conjunto de entrenamiento, pero aumenta o se estanca en el conjunto de validación. Puede explorar varias métricas de rendimiento YOLO para su evaluación.
  • Curvas de aprendizaje: Trazar el rendimiento del modelo (por ejemplo, la pérdida o la precisión) a lo largo de las épocas para los conjuntos de entrenamiento y validación proporciona una perspectiva visual. Una diferencia cada vez mayor entre la curva de entrenamiento (mejora) y la curva de validación (estancamiento o degradación) es un signo clásico de sobreajuste. Visualizar las curvas de aprendizaje ayuda a diagnosticarlo.

Prevenir el sobreajuste

Varias técnicas pueden ayudar a mitigar el sobreajuste y mejorar la generalización del modelo:

  • Validación cruzada: Técnicas como la validación cruzada K-Fold utilizan diferentes subconjuntos de datos para el entrenamiento y la validación, lo que proporciona una estimación más sólida del rendimiento del modelo en datos no vistos.
  • Aumento de datos: Aumento artificial del tamaño y la diversidad del conjunto de datos de entrenamiento mediante la aplicación de transformaciones como rotación, escalado, recorte y cambios de color. Las técnicas de aumento de datos de Ultralytics YOLO están integradas para ayudar a mejorar la robustez.
  • Regularización: Adición de penalizaciones a la función de pérdida en función de la complejidad del modelo (por ejemplo, la magnitud de las ponderaciones). Entre los métodos más comunes se encuentran la regularización L1 y L2, que desincentivan los pesos grandes. Más información sobre los métodos de regularización L1 y L2.
  • Detención temprana: Supervisar el rendimiento del modelo en el conjunto de datos de validación durante el entrenamiento y detener el proceso de entrenamiento cuando el rendimiento de validación comienza a degradarse, evitando que el modelo aprenda ruido en épocas posteriores. Ver una explicación de la parada temprana en Keras.
  • Abandono: Poner a cero aleatoriamente una fracción de las activaciones neuronales durante el entrenamiento. Esto obliga a la red a aprender características más robustas que no dependen de una sola neurona. El concepto de Dropout se explica en detalle aquí.
  • Poda de modelos: Eliminación de parámetros o conexiones menos importantes dentro de una red neuronal entrenada para reducir su complejidad sin afectar significativamente al rendimiento. Neural Magic ofrece herramientas para la poda.
  • Simplificar la arquitectura del modelo: Utilizar un modelo menos complejo (por ejemplo, menos capas o parámetros) puede evitar el sobreajuste, especialmente si el conjunto de datos es pequeño. Esto puede implicar elegir una variante del modelo más pequeña, como comparar YOLOv8n frente a YOLOv8x.
  • Obtenga más datos: Aumentar la cantidad de datos de entrenamiento de alta calidad suele ser una de las formas más eficaces de mejorar la generalización y reducir el sobreajuste. Explore varios conjuntos de datos de Ultralytics.

Al comprender y abordar la sobreadaptación, los desarrolladores pueden crear modelos de IA más fiables y eficaces. Herramientas como Ultralytics HUB pueden ayudar en el seguimiento de experimentos y la evaluación de modelos, contribuyendo a la detección y mitigación del sobreajuste durante el ciclo de vida de desarrollo de modelos.

Únase a la comunidad Ultralytics

Únase al futuro de la IA. Conecta, colabora y crece con innovadores de todo el mundo.

Únete ahora
Enlace copiado en el portapapeles