Explora el poder de Vision Transformers (ViT). Descubre cómo la autoatención y la tokenización de parches revolucionan la visión artificial más allá de las CNN con Ultralytics.
Un Vision Transformer (ViT) es una arquitectura de aprendizaje profundo que adapta los mecanismos de autoatención diseñados originalmente para el procesamiento del lenguaje natural (NLP) para resolver tareas visuales. A diferencia de una red neuronal convolucional (CNN) tradicional, que procesa imágenes a través de una jerarquía de cuadrículas de píxeles locales, un ViT trata una imagen como una secuencia de parches discretos . Este enfoque se popularizó gracias al histórico artículo de investigación «An Image is Worth 16x16 Words» (Una imagen vale 16x16 palabras), que demostró que las arquitecturas transformadoras puras podían alcanzar un rendimiento de vanguardia en visión artificial (CV) sin depender de capas convolucionales. Al aprovechar la atención global, los ViT pueden capturar dependencias de largo alcance en toda una imagen desde la primera capa.
La innovación fundamental del ViT es la forma en que estructura los datos de entrada. Para que una imagen sea compatible con un Transformer estándar, el modelo descompone la información visual en una secuencia de vectores, imitando la forma en que un modelo de lenguaje procesa una frase de palabras.
Aunque ambas arquitecturas tienen como objetivo comprender los datos visuales, difieren significativamente en su filosofía operativa. Las CNN poseen un fuerte «sesgo inductivo» conocido como invariancia de traslación, lo que significa que asumen de forma inherente que las características locales (como los bordes y las texturas) son importantes independientemente de su posición. Esto hace que las CNN sean muy eficaces en cuanto a datos y eficaces en conjuntos de datos más pequeños.
Por el contrario, los transformadores de visión tienen menos sesgos específicos de las imágenes. Deben aprender las relaciones espaciales desde cero utilizando grandes cantidades de datos de entrenamiento, como el JFT-300M o el completo ImageNet . Si bien esto hace que el entrenamiento sea más intensivo desde el punto de vista computacional, permite a los ViT escalar notablemente bien; con datos y potencia de cálculo suficientes, pueden superar a las CNN al capturar estructuras globales complejas que las convoluciones locales podrían pasar por alto.
La capacidad de comprender el contexto global hace que las ViT sean especialmente útiles en entornos complejos y de alto riesgo.
En ultralytics La biblioteca es compatible con arquitecturas basadas en transformadores, entre las que destaca la
RT-DETR Transformador de detección en tiempo real). Mientras que el
buque insignia YOLO26 A menudo se prefiere por su equilibrio entre velocidad
y precisión en dispositivos periféricos, RT-DETR una potente alternativa para escenarios que priorizan el contexto global.
Lo siguiente Python muestra cómo cargar un modelo preentrenado basado en Transformer y ejecutar la inferencia:
from ultralytics import RTDETR
# Load a pre-trained RT-DETR model (Vision Transformer-based)
model = RTDETR("rtdetr-l.pt")
# Run inference on an image source
# The model uses self-attention to detect objects globally
results = model("https://ultralytics.com/images/bus.jpg")
# Display the detection results
results[0].show()
La investigación está evolucionando rápidamente para abordar el alto coste computacional de las ViT. Técnicas como FlashAttention están haciendo que estos modelos sean más rápidos y eficientes en cuanto a memoria. Además, las arquitecturas híbridas que combinan la eficiencia de las CNN con la atención de los transformadores se están volviendo comunes. Para los equipos que buscan gestionar estos flujos de trabajo avanzados, la Ultralytics ofrece un entorno unificado para anotar datos, entrenar modelos complejos a través de la nube e implementarlos en diversos puntos finales.