Aprenda a identificar y resolver el subajuste en el aprendizaje automático. Explore las causas, los indicadores y cómo optimizar los modelos Ultralytics para obtener una mayor precisión.
El subajuste se produce cuando un modelo de aprendizaje automático es demasiado simple o carece de la capacidad para captar las tendencias y patrones subyacentes en los datos de entrenamiento. Conceptualmente, es análogo a intentar ajustar una línea recta a través de puntos de datos que forman una curva distinta; el modelo no logra captar la complejidad de la relación entre las entradas y las salidas. Debido a que el modelo no ha aprendido los datos de manera efectiva, muestra un un rendimiento deficiente no solo en el conjunto de entrenamiento, sino también en los datos de validación no vistos , lo que conduce a una baja precisión predictiva . Este fenómeno es a menudo el resultado de un alto sesgo en la IA, donde el algoritmo hace suposiciones demasiado simplistas sobre la función objetivo.
Hay varios factores que pueden dar lugar a un modelo subajustado. La causa más común es utilizar una arquitectura de modelo que no es lo suficientemente compleja para la tarea en cuestión, como aplicar regresión lineal a datos no lineales. Una duración insuficiente del entrenamiento, en la que no se le dan al modelo suficientes épocas para converger, también impide un aprendizaje adecuado. Además, una regularizaciónexcesiva —una técnica que se suele utilizar para evitar el problema contrario— puede limitar en exceso el modelo, impidiéndole captar características importantes .
Los ingenieros pueden identificar el subajuste mediante la supervisión de las funciones de pérdida durante el entrenamiento. Si tanto el error de entrenamiento como el error de validación siguen siendo altos y no disminuyen significativamente, es probable que el modelo esté subajustado. En contraste con la ingeniería de características eficaz, que ayuda a los modelos a comprender los datos, proporcionar muy pocas características también puede privar al modelo de la información necesaria.
Es fundamental distinguir el subajuste de su contraparte, el sobreajuste. Estos dos conceptos representan los extremos opuestos de la compensación entre sesgo y varianza.
Encontrar el «punto óptimo» entre estos dos extremos es el objetivo principal de la optimización de modelos.
Comprender el subajuste es fundamental para desarrollar sistemas de IA fiables en diversos sectores.
En visión por ordenador, el subajuste suele producirse
cuando se utiliza una variante de modelo demasiado pequeña para la dificultad de la tarea (p. ej., la detección de objetos pequeños en
imágenes de drones de alta resolución). Lo siguiente Python El ejemplo muestra cómo
cambiar de un modelo más pequeño a uno más grande y con mayor capacidad utilizando el ultralytics biblioteca para resolver
el posible subajuste.
from ultralytics import YOLO
# If 'yolo26n.pt' (Nano) is underfitting and yielding low accuracy,
# upgrade to a model with higher capacity like 'yolo26l.pt' (Large).
model = YOLO("yolo26l.pt")
# Train the larger model.
# Increasing epochs also helps the model converge if it was previously underfitting.
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
Al pasar a un modelo Ultralytics más grande y garantizar una duración adecuada del entrenamiento, el sistema obtiene los parámetros necesarios para aprender patrones complejos, lo que mitiga eficazmente el subajuste. Para verificar que su modelo ya no está subajustado, evalúelo siempre con un conjunto de datos de prueba robusto . Para gestionar conjuntos de datos y realizar un seguimiento de los experimentos con el fin de detectar el subajuste de forma temprana, la Ultralytics ofrece herramientas completas de visualización y análisis.