YOLOS (modelo tamaño base)
El modelo YOLOS ajustado en detección de objetos COCO 2017 (118k imágenes anotadas). Fue introducido en el artículo 'You Only Look at One Sequence: Rethinking Transformer in Vision through Object Detection' por Fang et al. y liberado por primera vez en este repositorio. YOLOS es un Transformador de Visión (ViT) entrenado utilizando la pérdida DETR. A pesar de su simplicidad, un modelo YOLOS de tamaño base puede lograr 42 AP en la validación de COCO 2017 (similar a DETR y marcos más complejos como Faster R-CNN). El modelo se entrena utilizando una 'pérdida de emparejamiento bipartito': se comparan las clases previstas + los cuadros delimitadores de cada una de las consultas de N = 100 objetos con las anotaciones de verdad del terreno, rellenadas hasta la misma longitud N. El algoritmo de emparejamiento húngaro se utiliza para crear una asignación óptima uno a uno entre cada una de las N consultas y cada una de las N anotaciones. Luego, se utilizan entropía cruzada estándar (para las clases) y una combinación lineal de la pérdida L1 y IoU generalizada (para los cuadros delimitadores) para optimizar los parámetros del modelo.
Como usar
Aquí se muestra cómo usar este modelo:
from transformers import YolosFeatureExtractor, YolosForObjectDetection
from PIL import Image
import requests
url = 'http://images.cocodataset.org/val2017/000000039769.jpg'
image = Image.open(requests.get(url, stream=True).raw)
feature_extractor = YolosFeatureExtractor.from_pretrained('hustvl/yolos-base')
model = YolosForObjectDetection.from_pretrained('hustvl/yolos-base')
inputs = feature_extractor(images=image, return_tensors="pt")
outputs = model(**inputs)
# el modelo predice cuadros delimitadores y clases COCO correspondientes
logits = outputs.logits
bboxes = outputs.pred_boxes
Actualmente, tanto el extractor de características como el modelo son compatibles con PyTorch.
Funcionalidades
- Transformador de Visión (ViT)
- Entrenado utilizando la pérdida DETR
- 42 AP en la validación de COCO 2017
- Algoritmo de emparejamiento húngaro
Casos de uso
- Detección de objetos usando el modelo YOLOS en imágenes
- Validación del rendimiento del modelo en el conjunto de datos COCO
- Desarrollo de aplicaciones que requieren detección precisa de objetos