¿Qué es un Transformador de Visión (ViT)?
Un transformador de visión es un modelo en el campo del procesamiento de imágenes que se utiliza principalmente en el reconocimiento de imágenes de la aprendizaje automático se utiliza. Es en el sector científico de la Visión por ordenador área que analiza y procesa fotos e imágenes de modo que la información que contienen también pueda ser entendida y "vista" por los ordenadores. Así se crea la base para el tratamiento posterior de las fotos e imágenes.
En 2020, el método de reconocimiento de imágenes del Transformador de Visión se hizo muy conocido gracias al artículo "An Image is Worth 16×16 Words: Transformers for Image Recognition at Scale". Ya antes, los denominados transformadores se habían utilizado principalmente en el reconocimiento de voz y texto en el Procesamiento del lenguaje natural (PLN) en el ámbito de redes neuronales utilizado. Desde la aparición de este artículo, esta idea también se ha utilizado de forma ligeramente modificada para el procesamiento y el reconocimiento de imágenes.
Los transformadores de visión también se incluyen en algunas bibliotecas de programas como PyTorch o Keras implementado. Ambas son bibliotecas de código abierto que se utilizan en aprendizaje automático y Aprendizaje profundo y para una implementación para el lenguaje de programación Python o C++.
¿Cómo se construye un Transformador de Visión?
Un transformador de visión utiliza el mismo modelo computacional o algoritmo que se emplea en el software de reconocimiento y tratamiento de textos, como por ejemplo BERT de Google.
El El corazón del Transformer es el llamado "Atención" dar. La atención denota una relación de una parte de una variable de entrada (palabra, píxel o similar) con las otras partes de la variable de entrada. Tales variables de entrada, que posteriormente son aptas para su posterior procesamiento, se denominan tokens. En el reconocimiento de texto, puede tratarse de una palabra o de una sílaba de una palabra; en el reconocimiento de imágenes, por ejemplo, de un solo píxel. Sin embargo, dado que una imagen consta de un gran número de píxeles, aplicar el algoritmo a cada píxel individual difícilmente sería eficaz desde el punto de vista de la memoria o el tiempo necesarios. Por lo tanto, la imagen se divide en pequeñas secciones/parches individuales (por ejemplo, 14×14 o 16×16 píxeles).
El siguiente paso es vectorizar las secciones ("Aplanamiento") y lo transforma por transformación lineal en "incrustaciones lineales" um. Por último, los parches reciben incrustaciones de posición aprendibles, que permiten al modelo computacional obtener información sobre la estructura de la imagen.
A continuación, los datos se procesan en un codificador transformador. Aquí, los datos se procesan sobre la base de los Datos de formación Los modelos ViT se (pre)clasifican con ayuda de capas de atención y los llamados perceptrones multicapa (MLP). Los modelos ViT-Base, ViT-Large y ViT-Huge tienen entre 12 y 32 capas y trabajan con entre 86 y 632 millones de parámetros. Por último, una cabeza MLP se encarga de la clasificación final. A diferencia de los transformadores utilizados, por ejemplo, por BERT, el transformador Vision no dispone de descodificador.
¿Cuál es la diferencia con una red neuronal convolucional?
Redes neuronales convolucionales (CNN; en alemán: "folding neural network") se utilizan desde hace tiempo en el campo de la visión por ordenador. La "convolución" describe un operador matemático que se utiliza en la ejecución del algoritmo.
En Las diferencias entre una red neuronal convolucional y un transformador de visión radican principalmente en la estructura arquitectónicaaunque existan ciertas similitudes entre las zonas. Mientras que las CNN suelen constar de varias capas que se procesan secuencialmente, un Transformador de Visión funciona en gran medida en paralelo. En el caso de las CNN, desempeñan un papel especialmente importante la capa convolucional y la capa de agrupamiento, que pueden ejecutarse varias veces seguidas y se concluyen con una o varias capas totalmente conectadas. Según Google su ViT supera a una CNN de última generación con cuatro veces menos recursos informáticos.