Descubra el aprendizaje activo, un método de machine learning rentable que aumenta la precisión con menos etiquetas. ¡Aprenda cómo transforma el entrenamiento de la IA!
Active Learning is a strategic approach in machine learning (ML) where the algorithm proactively selects the most informative data points for labeling, rather than passively accepting a pre-labeled dataset. In traditional supervised learning, models often require massive amounts of annotated data, which can be expensive and time-consuming to create. Active learning optimizes this process by identifying "uncertain" or "hard" examples—those near the decision boundary or where the model lacks confidence—and requesting human annotators to label only those specific instances. This iterative loop allows models to achieve high accuracy with significantly fewer labeled samples, making it highly efficient for projects with limited budgets or time constraints.
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.