Explora el aprendizaje de una sola toma en IA. Aprende a classify a partir de una sola imagen utilizando Ultralytics y redes siamesas para una visión artificial eficiente.
El aprendizaje de un solo intento es una técnica de clasificación especializada en aprendizaje automático (ML) diseñada para aprender información sobre categorías de objetos a partir de un único ejemplo de entrenamiento. A diferencia de los algoritmos tradicionales de aprendizaje profundo (DL), que requieren enormes conjuntos de datos que contienen miles de imágenes anotadas para generalizar de manera eficaz, el aprendizaje de un solo intento imita la capacidad cognitiva humana para comprender un nuevo concepto al instante. Por ejemplo, una persona suele reconocer un ave exótica específica después de verla solo una vez; esta metodología intenta replicar esa eficiencia en los sistemas de inteligencia artificial (IA). Es especialmente valiosa en situaciones en las que el etiquetado de datos es costoso, los datos son escasos o se deben añadir nuevas categorías de forma dinámica sin volver a entrenar todo el modelo.
El principio básico del aprendizaje de un solo paso consiste en cambiar el objetivo de la clasificación estándar a la evaluación de similitudes . En lugar de entrenar una red neuronal (NN) para que genere una etiqueta de clase específica (por ejemplo, «perro» o «gato»), el modelo aprende una función de distancia. Una arquitectura común empleada para ello es la red neuronal siamesa, que consiste en dos subredes idénticas que comparten los mismos pesos del modelo.
Durante el funcionamiento, la red realiza una extracción de características para convertir las imágenes de entrada en vectores numéricos compactos conocidos como incrustaciones. A continuación, el sistema compara la incrustación de una nueva imagen de consulta con la incrustación de la única referencia «disparo» único. Si la distancia matemática —a menudo calculada utilizando la distancia euclidiana o la similitud coseno— está por debajo de un umbral determinado, se determina que las imágenes pertenecen a la misma clase. Esto permite al modelo verificar la identidad o classify en función de su proximidad en el espacio de características aprendido.
El siguiente Python muestra cómo extraer incrustaciones y calcular la similitud utilizando un
YOLO26 modelo de clasificación del
ultralytics paquete.
import numpy as np
from ultralytics import YOLO
# Load a pre-trained YOLO26 classification model for feature extraction
model = YOLO("yolo26n-cls.pt")
# Extract embeddings for a reference 'shot' and a query image
# The embed() method returns the feature vector directly
shot_vec = model.embed("reference_img.jpg")[0]
query_vec = model.embed("query_img.jpg")[0]
# Calculate similarity (higher dot product implies greater similarity)
similarity = np.dot(shot_vec, query_vec) / (np.linalg.norm(shot_vec) * np.linalg.norm(query_vec))
print(f"Similarity Score: {similarity:.4f}")
Es importante diferenciar el aprendizaje One-Shot de otras técnicas de aprendizaje eficientes en datos, ya que resuelven problemas similares a través de diferentes restricciones:
El aprendizaje One-Shot ha desbloqueado capacidades en sectores en los que la recopilación de grandes cantidades de datos de entrenamiento no es práctica.
La aplicación más omnipresente del aprendizaje de una sola toma es la seguridad biométrica. Al configurar Face ID en un smartphone o registrarse en un sistema de acceso para empleados, el dispositivo captura una única representación matemática del rostro del usuario . Durante el uso diario, el sistema de reconocimiento facial compara la imagen en directo de la cámara con esta «toma única» almacenada para verificar la identidad. Esto se basa en técnicas de incrustación robustas, como las que se discuten en la investigación fundamental de FaceNet, para garantizar que los cambios en la iluminación o el ángulo no rompan la coincidencia de similitud.
En la IA aplicada a la fabricación, crear un conjunto de datos equilibrado de piezas «defectuosas» es difícil porque los defectos son poco frecuentes e inconsistentes. El aprendizaje One-Shot permite a los sistemas de visión artificial (CV) aprender la representación de una única pieza de referencia «perfecta». Cualquier elemento de la línea de montaje que produzca una incrustación significativamente distante de esta referencia se marca para la detección de anomalías. Esto permite un control de calidad inmediato sin necesidad de miles de imágenes de piezas defectuosas, que se pueden gestionar e implementar a través de Ultralytics .
Aunque potente, el aprendizaje de una sola toma es susceptible al ruido; si la única imagen de referencia es borrosa, está obstruida o no es representativa, la capacidad del modelo para reconocer esa clase se degrada significativamente. Los investigadores suelen emplear el metaaprendizaje, o «aprender a aprender», para mejorar la estabilidad y la generalización del modelo. A medida que evolucionan las arquitecturas, los modelos más nuevos, como YOLO26, incorporan extractores de características más robustos que hacen que la inferencia de un solo disparo sea más rápida y precisa, allanando el camino para dispositivos de IA de vanguardia más adaptables e inteligentes .