Descubra cómo el aprendizaje activo optimiza el entrenamiento de la IA. Aprenda a utilizar Ultralytics para identificar datos informativos, reducir los costes de etiquetado y aumentar la precisión.
El aprendizaje activo es un enfoque estratégico en el aprendizaje automático (ML) en el que el algoritmo selecciona de forma proactiva los puntos de datos más informativos para etiquetarlos, en lugar de aceptar pasivamente un conjunto de datos preetiquetado . En el aprendizaje supervisado tradicional, los modelos suelen requerir grandes cantidades de datos anotados, cuya creación puede resultar costosa y llevar mucho tiempo. El aprendizaje activo optimiza este proceso identificando ejemplos «inciertos» o «difíciles» —aquellos cercanos al límite de decisión o en los que el modelo carece de confianza— y solicitando a los anotadores humanos que etiqueten solo esas instancias específicas . Este bucle iterativo permite a los modelos alcanzar una alta precisión con un número significativamente menor de muestras etiquetadas, lo que lo hace muy eficiente para proyectos con presupuestos limitados o restricciones de tiempo.
El núcleo del aprendizaje activo es un bucle de retroalimentación al que a menudo se hace referencia como human-in-the-loop. En lugar de entrenar una sola vez con un conjunto de datos estático, el modelo evoluciona a través de ciclos de consulta y actualización.
El aprendizaje activo es indispensable en industrias donde los datos son abundantes, pero el etiquetado requiere conocimientos especializados o costes elevados.
El siguiente ejemplo muestra una lógica sencilla de «muestreo de incertidumbre» utilizando Ultralytics . Cargamos un modelo, ejecutamos la inferencia en las imágenes y marcamos aquellas cuya puntuación de confianza está por debajo de un umbral determinado para su revisión manual.
from ultralytics import YOLO
# Load the latest YOLO26 model
model = YOLO("yolo26n.pt")
# List of unlabeled image paths
unlabeled_images = ["https://ultralytics.com/images/bus.jpg", "https://ultralytics.com/images/zidane.jpg"]
# Run inference
results = model(unlabeled_images)
# Identify samples with low confidence for active learning
uncertain_threshold = 0.6
for result in results:
# Check if any detection confidence is below the threshold
if result.boxes.conf.numel() > 0 and result.boxes.conf.min() < uncertain_threshold:
print(f"Active Learning Query: {result.path} needs human labeling.")
Es importante diferenciar el aprendizaje activo de otros paradigmas de formación similares:
La implementación eficaz del aprendizaje activo requiere un sólido proceso de operaciones de aprendizaje automático (MLOps) . Se necesita una infraestructura para gestionar las versiones de los datos, activar trabajos de reentrenamiento y proporcionar la interfaz de anotación a los usuarios. Las herramientas que se integran con Ultralytics permiten a los usuarios pasar fácilmente de la inferencia a la curación de datos y al entrenamiento. Por ejemplo, el uso de scripts de entrenamiento personalizados permite a los desarrolladores incorporar rápidamente nuevos lotes de datos de aprendizaje activo a sus YOLO .
Para obtener más información sobre las estrategias de muestreo, los investigadores suelen remitirse a estudios exhaustivos sobre literatura de aprendizaje activo. Además, comprender las métricas de evaluación de modelos es fundamental para verificar que el bucle de aprendizaje activo está mejorando realmente el rendimiento.