Descubra cómo el aprendizaje semisupervisado combina datos etiquetados y sin etiquetar para aumentar la precisión del modelo. Aprenda a implementar flujos de trabajo SSL con Ultralytics .
El aprendizaje semisupervisado (SSL) es un paradigma estratégico en el aprendizaje automático (ML) que actúa como puente entre dos métodos de entrenamiento tradicionales. Mientras que el aprendizaje supervisado se basa completamente en conjuntos de datos totalmente anotados y el aprendizaje no supervisado intenta encontrar patrones en los datos sin ninguna etiqueta, el SSL funciona combinando una pequeña cantidad de datos etiquetados con un conjunto significativamente mayor de datos sin etiquetar. Este enfoque es especialmente valioso en escenarios reales de visión artificial (CV), en los que la recopilación de imágenes sin procesar, como las grabaciones de vídeo de cámaras de seguridad o satélites, es relativamente barata, pero el proceso de etiquetado de datos por parte de expertos humanos es costoso, lento y requiere mucha mano de obra. Al utilizar eficazmente la estructura oculta en los ejemplos sin etiquetar, SSL puede mejorar significativamente la precisión y la generalización del modelo sin necesitar un presupuesto de anotación exhaustivo.
El objetivo principal del SSL es propagar la información que se encuentra en el pequeño conjunto de ejemplos etiquetados al conjunto más grande sin etiquetar. Esto permite a la red neuronal aprender los límites de decisión que pasan por regiones de baja densidad de los datos, lo que da como resultado una clasificación o detección más sólida.
Dos técnicas populares impulsan la mayoría de los flujos de trabajo semisupervisados:
El siguiente Python muestra un flujo de trabajo sencillo de pseudoetiquetado utilizando ultralytics . Aquí, entrenamos un modelo YOLO26 en un pequeño conjunto de datos y luego lo utilizamos para generar etiquetas para un directorio de imágenes sin etiquetar.
from ultralytics import YOLO
# Load the latest YOLO26 model
model = YOLO("yolo26n.pt")
# Train initially on a small available labeled dataset
model.train(data="coco8.yaml", epochs=10)
# Run inference on unlabeled data to generate pseudo-labels
# Setting save_txt=True saves the detections as text files for future training
results = model.predict(source="./unlabeled_images", save_txt=True, conf=0.85)
El aprendizaje semisupervisado está transformando sectores en los que abundan los datos, pero escasea la experiencia.
Para implementar soluciones de IA de manera eficaz, es fundamental comprender en qué se diferencia SSL de otras estrategias similares:
A medida que los modelos de aprendizaje profundo (DL) crecen en tamaño, la eficiencia en el uso de los datos se vuelve primordial. Los marcos modernos como PyTorch y TensorFlow proporcionan el backend computacional para estos bucles de entrenamiento avanzados . Además, herramientas como la Ultralytics están simplificando el ciclo de vida de la gestión de conjuntos de datos. Al utilizar funciones como la autoanotación, los equipos pueden implementar flujos de trabajo semisupervisados más fácilmente, convirtiendo rápidamente los datos sin procesar en pesos de modelos listos para la producción . Esta evolución en MLOps garantiza que la barrera de entrada para crear sistemas de visión de alta precisión siga disminuyendo.