Ultralytics YOLO27: Únete a la lista de espera.
Licencia YOLO
Volver al glosario de Ultralytics

Semi-Supervised Learning

El aprendizaje semisupervisado entrena modelos con unos pocos ejemplos etiquetados y muchos sin etiquetar para reducir los costes de anotación. Incluye etiquetado con pseud etiquetas, consistencia y código.

El aprendizaje semisupervisado entrena un modelo con un pequeño conjunto de ejemplos etiquetados junto con otro mucho mayor sin etiquetar, y aprovecha los datos sin etiquetar para lograr una precisión superior a la que permiten las etiquetas por sí solas. Se sitúa entre el aprendizaje supervisado, en el que todos los ejemplos de entrenamiento tienen una etiqueta, y el aprendizaje no supervisado, en el que ninguno la tiene. Este enfoque es adecuado para la visión artificial, porque las cámaras recopilan imágenes a bajo coste, mientras que el etiquetado de datos, como dibujar cuadros o máscaras o registrar un diagnóstico, requiere tiempo humano y a menudo conocimientos especializados. FixMatch alcanzó una precisión del 88,61 % en el conjunto de referencia de imágenes CIFAR-10 con solo 4 imágenes etiquetadas por clase, y Noisy Student elevó la precisión top-1 de ImageNet al 88,4 % al añadir pseudoetiquetas para 300 millones de imágenes sin etiquetar.

Cómo funciona el aprendizaje semisupervisado#

Los datos sin etiquetar son útiles porque muestran la forma de la distribución de los datos. Los métodos suponen que los ejemplos próximos entre sí en una región densa comparten una etiqueta, por lo que el límite de decisión entre clases debería atravesar regiones dispersas en las que haya pocos ejemplos. Tres familias de métodos ponen en práctica esta idea.

El etiquetado con pseudoeetiquetas, también llamado autoentrenamiento, entrena un modelo con los datos etiquetados, lo ejecuta sobre los datos sin etiquetar y conserva las predicciones que superan un umbral de confianza como datos de entrenamiento adicionales. En las variantes profesor-estudiante, el modelo entrenado se convierte en un profesor que etiqueta el conjunto, y un estudiante, a menudo tan grande como el profesor o mayor, se entrena con los datos reales y las pseudoeetiquetas y se convierte en el siguiente profesor:

La regularización de consistencia exige que un modelo dé la misma predicción para distintas perturbaciones de una misma imagen sin etiquetar, como dos aumentos de datos distintos. FixMatch combina ambas ideas: genera una pseudoeetiqueta para una versión con aumentos leves, solo cuando el modelo tiene confianza, y entrena al modelo para que prediga esa etiqueta en una versión de la misma imagen con aumentos intensos. Los métodos basados en grafos conectan ejemplos similares y propagan las etiquetas conocidas por sus aristas. El principal riesgo en todos los casos es el sesgo de confirmación: se entrena con pseudoeetiquetas incorrectas y luego se predicen con aún más confianza. Por eso, los métodos utilizan umbrales altos, aumentos intensos o un profesor cuyos pesos son un promedio móvil lento de los del estudiante.

Este ejemplo de scikit-learn conserva las etiquetas de solo 2 imágenes por dígito y compara un clasificador supervisado entrenado con esas 20 imágenes con la propagación de etiquetas, un método basado en grafos que también utiliza las 1237 imágenes de entrenamiento sin etiquetar:

import numpy as np
from sklearn.datasets import load_digits
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
from sklearn.semi_supervised import LabelSpreading

X, y = load_digits(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X / 16, y, test_size=0.3, random_state=0, stratify=y)

# Keep the labels of only 2 training images per digit; -1 marks every other image as unlabeled
labeled = np.concatenate([np.flatnonzero(y_train == digit)[:2] for digit in range(10)])
y_partial = np.full_like(y_train, -1)
y_partial[labeled] = y_train[labeled]

# Supervised baseline trains on the 20 labeled images; label spreading also uses the unlabeled ones
supervised = LogisticRegression(max_iter=5000).fit(X_train[labeled], y_train[labeled])
semi_supervised = LabelSpreading(kernel="knn", n_neighbors=10).fit(X_train, y_partial)
print(f"Supervised, 20 labeled images: {supervised.score(X_test, y_test):.3f}")
print(f"Semi-supervised, 20 labeled + {(y_partial == -1).sum()} unlabeled: {semi_supervised.score(X_test, y_test):.3f}")

En 540 dígitos reservados para la evaluación, el clasificador supervisado obtiene 0,800 y la propagación de etiquetas, 0,919, con las mismas 20 etiquetas, porque las imágenes sin etiquetar conectan cada ejemplo etiquetado con muchas imágenes similares del mismo dígito.

Aprendizaje semisupervisado en visión artificial#

El seudoeetiquetado de profesor y alumno se amplía a tareas cuyas etiquetas son más costosas de dibujar, como las máscaras de segmentación de instancias y los mapas de profundidad. Los métodos semisupervisados de detección de objetos, como Unbiased Teacher, conservan los seudocuadros de confianza del modelo profesor, y Depth Anything entrenó un modelo de estimación monocular de profundidad con unos 62 millones de imágenes sin etiquetar, etiquetadas automáticamente por un modelo profesor. Los modelos de profundidad Ultralytics YOLO26 se preentrenaron del mismo modo: 1.281.167 imágenes de entrenamiento de ImageNet, que no tienen valores reales de referencia de profundidad, recibieron mapas de seudoprofundidad de modelos profesor Depth Anything 3 y representaron aproximadamente el 58 % de una mezcla de 2,19 millones de imágenes que también incluye conjuntos de datos reales con valores de profundidad de referencia. Los modelos de lenguaje y visión también pueden actuar como profesores y etiquetar objetos usando solo los nombres de las clases. La clasificación de VLM compara la precisión con la que anotan conjuntos de datos de detección del mundo real. Para la detección, un modelo YOLO26 grande puede actuar como profesor y guardar sus predicciones de confianza en archivos de etiquetas con formato YOLO, una forma sencilla de etiquetado automático:

from ultralytics import YOLO
from ultralytics.utils import ASSETS

# Un modelo YOLO26 grande y preentrenado actúa como profesor
teacher = YOLO("yolo26x.pt")

# Etiqueta una carpeta de imágenes sin etiquetar; solo las detecciones con una confianza superior a 0.5 se convierten en pseudoeetiquetas
# save_txt=True escribe un archivo de etiquetas .txt en formato YOLO por cada imagen, listo para entrenar un modelo estudiante
results = teacher.predict(source=ASSETS, conf=0.5, save_txt=True)
  • Aprendizaje activo: Selecciona las imágenes sin etiquetar más informativas y las envía a un anotador humano. El aprendizaje semisupervisado etiqueta automáticamente el conjunto, y muchas canalizaciones de etiquetado combinan ambos métodos.
  • Aprendizaje autosupervisado: Preentrena solo con datos sin etiquetar, con objetivos derivados de los datos, y utiliza las etiquetas únicamente después, durante el ajuste fino. El aprendizaje semisupervisado utiliza datos etiquetados y sin etiquetar en la misma ejecución de entrenamiento.
  • Aprendizaje por transferencia: Parte de un modelo preentrenado con otro conjunto de datos. Se combina con el aprendizaje semisupervisado, ya que un modelo preentrenado es un mejor profesor inicial.
  • Destilación de conocimiento: Entrena a un estudiante para que reproduzca los resultados de un profesor, normalmente con el fin de comprimir el modelo. El etiquetado con pseudoeetiquetas utiliza la misma estructura profesor-estudiante para añadir datos de entrenamiento, y Noisy Student entrenó estudiantes del mismo tamaño que sus profesores o mayores, añadiendo ruido durante el entrenamiento, y superó en un 2,0 % al mejor modelo anterior de ImageNet, preentrenado con 3500 millones de imágenes de Instagram etiquetadas débilmente.

Explora las soluciones

Visión artificial en el deporte

Visión artificial en el deporte

Descubre cómo Ultralytics YOLO impulsa la visión artificial en el deporte con el seguimiento de jugadores y balones, analíticas de rendimiento, información útil para entrenadores y rehabilitación de deportistas.
Más información
Visión artificial para imágenes aéreas

Visión artificial para imágenes aéreas

Convierte imágenes aéreas y de drones en información útil en tiempo real para la agricultura, la acuicultura, la conservación y el análisis geoespacial con Ultralytics YOLO.
Más información
Visión artificial en el sector aeroespacial

Visión artificial en el sector aeroespacial

Aplica la visión artificial en el sector aeroespacial con Ultralytics YOLO para inspeccionar aeronaves, detectar objetos extraños en pistas, gestionar operaciones en tierra y detectar defectos en materiales compuestos.
Más información
Visión artificial en seguridad

Visión artificial en seguridad

Protege todas tus instalaciones con los modelos Ultralytics YOLO. La IA visual permite supervisar perímetros, detectar amenazas, reconocer matrículas y mejorar la seguridad laboral.
Más información
Visión artificial en robótica

Visión artificial en robótica

Potencia máquinas más inteligentes con los modelos Ultralytics YOLO. La IA visual en robótica impulsa la navegación autónoma, la percepción, el seguimiento de objetos y el control en tiempo real.
Más información
Visión artificial en logística

Visión artificial en logística

Agiliza la logística con modelos Ultralytics YOLO. La IA visual permite inspeccionar paquetes, clasificarlos, realizar el seguimiento de vehículos y supervisar la seguridad del almacén en tiempo real.
Más información
Visión artificial en el comercio minorista

Visión artificial en el comercio minorista

Reinventa el comercio minorista con modelos Ultralytics YOLO. La IA visual permite realizar el seguimiento del inventario, supervisar estanterías, gestionar colas y obtener información más útil sobre los clientes.
Más información
Visión artificial en el sector sanitario

Visión artificial en el sector sanitario

Desarrolla soluciones sanitarias con modelos Ultralytics YOLO. La IA visual en el sector sanitario permite acelerar el diagnóstico por imagen, mejorar los diagnósticos y supervisar a los pacientes.
Más información
Visión artificial en la fabricación

Visión artificial en la fabricación

Optimiza la fabricación con modelos Ultralytics YOLO. La IA visual mejora el control de calidad, la detección de defectos, el cumplimiento de las normas de uso de EPI y la automatización de las líneas de montaje.
Más información
Visión artificial en la automoción

Visión artificial en la automoción

Aplica la visión artificial al sector de la automoción con modelos Ultralytics YOLO. La IA visual mejora la seguridad vial, la asistencia al conductor y la automatización de vehículos para lograr carreteras más inteligentes.
Más información
Visión artificial en la agricultura

Visión artificial en la agricultura

Incorpora la IA de visión a la agricultura inteligente con modelos Ultralytics YOLO. Impulsa la monitorización de cultivos, el seguimiento del ganado y la agricultura de precisión para obtener cosechas más abundantes e inteligentes.
Más información

¡Construyamos juntos el futuro de la IA!

Inicia tu recorrido hacia el futuro del aprendizaje automático