Yolo Vision Shenzhen
Shenzhen
Únete ahora
Glosario

Vision Transformer (ViT)

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.

¿Cómo funcionan los Vision Transformers?

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.

  1. Tokenización de parches: La imagen de entrada se divide en una cuadrícula de cuadrados de tamaño fijo, normalmente de 16x16 píxeles. Cada cuadrado se aplana en un vector, convirtiéndose efectivamente en un token visual.
  2. Proyección lineal: Estos parches aplanados se pasan a través de una capa lineal entrenable para crear incrustaciones densas. Este paso mapea los valores de píxeles sin procesar en un espacio de alta dimensión que el modelo puede procesar.
  3. Codificación posicional: dado que la arquitectura procesa secuencias en paralelo y carece de una comprensión inherente del orden o el espacio, se añaden codificaciones posicionales aprendibles a las incrustaciones de parches. Esto permite al modelo conservar la información espacial sobre el lugar al que pertenece cada parche en la imagen original.
  4. Mecanismo de autoatención: La secuencia entra en el codificador Transformer, donde la autoatención permite que cada parche interactúe con todos los demás parches simultáneamente. Esto permite a la red aprender el contexto global, entendiendo cómo un píxel de la esquina superior izquierda se relaciona con uno de la esquina inferior derecha.
  5. Cabezal de clasificación: Para tareas como la clasificación de imágenes, a menudo se antepone un «token de clase» especial a la secuencia. El estado de salida final de este token sirve como representación agregada de la imagen, que luego se introduce en un clasificador, como un perceptrón multicapa (MLP).

Transformadores de visión frente a CNN

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.

Aplicaciones en el mundo real

La capacidad de comprender el contexto global hace que las ViT sean especialmente útiles en entornos complejos y de alto riesgo.

  • Análisis de imágenes médicas: En la IA aplicada a la asistencia sanitaria, las ViT se utilizan para analizar escáneres de alta resolución, como resonancias magnéticas o preparaciones histopatológicas. Por ejemplo, en la detección de tumores, una ViT puede correlacionar anomalías texturales sutiles en el tejido con cambios estructurales más amplios en toda la preparación, identificando patrones malignos que el procesamiento local podría pasar por alto.
  • Imágenes satelitales y teledetección: Las ViT destacan en el análisis de imágenes satelitales, donde las relaciones entre objetos abarcan grandes distancias. Por ejemplo, para conectar un lugar de deforestación con un camino forestal distante es necesario comprender el «panorama general» de un paisaje, una tarea en la que la atención global de una ViT supera al campo receptivo limitado de las CNN estándar.

Utilización de transformadores con Ultralytics

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()

Perspectivas de futuro

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.

Únase a la comunidad Ultralytics

Únete al futuro de la IA. Conecta, colabora y crece con innovadores de todo el mundo

Únete ahora