Mecanismo básico de aprendizaje-atención de aprendizaje profundo (en visión artificial)

Vi muchas explicaciones sobre el mecanismo de atención en Internet, y yo mismo lo resumiré a continuación. Desvío por el tipo grande
A continuación se encuentran los enlaces a algunos artículos Agregar
modelo de atención en aprendizaje profundo Mecanismo de atención en
visión por computadora Mecanismo de atención en
procesamiento de imágenes Mecanismo de atención de resumen de atención Mecanismo de atención detallado Resumen del mecanismo de atención
espacial y mecanismo de atención de canal Descripción detallada (muy completa) - mecanismo de atención en imagen Procesando


El mecanismo de atención es un esquema de asignación de recursos que asigna recursos informáticos a tareas más importantes y resuelve el problema de la sobrecarga de información en el caso de una potencia informática limitada. Generalmente, en las redes neuronales, cuantos más parámetros del modelo se entrenan, mayor es la cantidad almacenada. de información, provocará el problema de la sobrecarga de información. Al introducir un mecanismo de atención, podemos centrar más "atención" en información clave, reducir la atención a otra información o filtrar información irrelevante, de modo que el problema de sobrecarga mencionado anteriormente pueda resolverse, y también se puede mejorar la eficiencia y la precisión del procesamiento de tareas.
La esencia del mecanismo de atención es un conjunto de coeficientes de peso aprendidos de forma independiente por la red y un método de "ponderación dinámica" para enfatizar la región de nuestro interés mientras se suprime la región de fondo irrelevante. En los últimos años, ha habido aplicaciones de mecanismos de atención en procesamiento de imágenes, reconocimiento de voz o procesamiento de lenguaje natural. Este artículo se centra en la aplicación de los mecanismos de atención a las imágenes.

1. Comprensión popular del mecanismo de atención

El método de denominación del mecanismo de atención en realidad utiliza el método de denominación de la atención humana.

1.1 Ejemplo de imagen 1

inserte la descripción de la imagen aquí
Como se muestra en la figura, la parte roja de la figura es la parte a la que las personas habitualmente prestan más atención, como la cara de una persona, el título de un artículo y el comienzo de un párrafo.
La visión humana escanea rápidamente la imagen global para obtener el área objetivo en la que debe enfocarse, que generalmente se conoce como el foco de atención, y luego invierte más recursos de atención en esta área para obtener información más detallada sobre el objetivo que necesita para ser enfocado en Y suprimir otra información inútil.
El mecanismo de atención en el aprendizaje profundo es esencialmente similar al mecanismo de atención visual selectiva de los seres humanos. El objetivo central es seleccionar la información que es más crítica para el objetivo de la tarea actual de una gran cantidad de información.

1.2 Ejemplo de imagen 2

inserte la descripción de la imagen aquí
La atención (atención) es en realidad un hecho muy común, pero a menudo pasado por alto. Por ejemplo, cuando un pájaro pasa volando en el cielo, su atención a menudo seguirá al pájaro, y el cielo se convierte naturalmente en una información de fondo (de fondo) en su sistema visual.
inserte la descripción de la imagen aquí
Para la red neuronal, las funciones extraídas por la red neuronal no tienen ninguna diferencia con la red en sí, no prestará especial atención a una función específica, al igual que en esta imagen, no le dices que deseas prestar atención a la pájaro Bueno, entonces la información de toda la imagen es que el cielo representa una mayor proporción, por lo que pensará que esta es una foto sobre el cielo, no un pájaro.

1.3 Mecanismo de atención en visión artificial

La idea básica del mecanismo de atención en la visión por computadora es dejar que el sistema aprenda la atención, para poder ignorar la información irrelevante y enfocarse en la información clave.
Por ejemplo, en nuestra vida diaria, nos sentamos en una cafetería y jugamos con nuestros teléfonos móviles. Si nos enfocamos en nuestros teléfonos móviles, básicamente no sabemos de qué está hablando el mundo exterior. Empieza a enfocarte en la voz de la persona y podrás escuchar la conversación con claridad.

Lo mismo es cierto para la visión, es casi difícil notar alguna información cuando la miras, pero si te enfocas en el pasado, los detalles de las cosas formarán una impresión en tu mente.

El mecanismo de atención en la red neuronal es un esquema de asignación de recursos que asigna recursos informáticos a tareas más importantes y resuelve el problema de la sobrecarga de información en el caso de una potencia informática limitada. En el aprendizaje de redes neuronales, en términos generales, cuantos más parámetros tenga el modelo, mayor será la capacidad expresiva del modelo y mayor será la cantidad de información almacenada en el modelo, pero esto generará el problema de la sobrecarga de información. Luego, al introducir el mecanismo de atención, centrándose en la información que es más crítica para la tarea actual entre la numerosa información de entrada, reduciendo la atención a otra información e incluso filtrando información irrelevante, se puede resolver el problema de la sobrecarga de información y la eficiencia. de procesamiento de tareas se puede mejorar la eficiencia y la precisión.

Esto es similar al mecanismo de atención visual humana.Al escanear la imagen global, se obtiene el área objetivo en la que se debe enfocar, y luego se invierten más recursos de atención en esta área para obtener información más detallada relacionada con el objetivo, mientras se ignora otros información irrelevante. A través de este mecanismo, se pueden utilizar recursos de atención limitados para filtrar rápidamente información de alto valor de una gran cantidad de información.

Con el desarrollo del aprendizaje profundo en la actualidad, es más importante construir una red neuronal con un mecanismo de atención. Por un lado, este tipo de red neuronal puede aprender el mecanismo de atención de forma independiente y, por otro lado, el mecanismo de atención puede ayudar. nosotros a su vez Comprender el mundo como lo ven las redes neuronales

2. Clasificación del mecanismo de atención

Aquí hay una breve introducción a la clasificación básica del mecanismo de atención.
En los últimos años, la mayor parte del trabajo de investigación sobre la combinación del aprendizaje profundo y el mecanismo de atención visual se ha centrado en el uso de máscaras para formar mecanismos de atención. El principio de la máscara es identificar las características clave en los datos de la imagen a través de otra capa de nuevos pesos. A través del aprendizaje y el entrenamiento, la red neuronal profunda puede aprender las áreas a las que se debe prestar atención en cada nueva imagen, lo que forma el atención. .

Este tipo de pensamiento ha evolucionado en dos tipos diferentes de atención, uno es la atención suave (Soft-attention), y el otro es la atención dura (Hard-attention).Si clasificas los dominios
inserte la descripción de la imagen aquí
de la atención, a partir de diferentes dimensiones (como como canal, espacio, tiempo, categoría, etc.), se puede dividir en los siguientes tipos
inserte la descripción de la imagen aquí

Entre ellos,
el dominio de la atención de la atención blanda : dominio espacial, dominio del canal, dominio mixto, autoatención (autoatención) el
dominio de atención realizado por la atención dura : dominio del tiempo (dominio del tiempo)

Hablando específicamente, cada una de las siguientes categorías es en realidad una gran pieza Aquí solo doy una comprensión básica desde el nivel más superficial.

3. Atención dura y su correspondiente dominio atencional

Para decirlo sin rodeos, la atención dura es un problema 0/1, qué áreas se atienden y qué áreas no. La aplicación de atención dura en imágenes se conoce desde hace muchos años: recorte de imagen (image cropping) atención dura (atención fuerte
) La diferencia con la atención suave es que, en primer lugar, la atención fuerte está más enfocada, es decir, cada punto de la imagen puede extender la atención, y la atención fuerte es un proceso de predicción aleatorio, que enfatiza los cambios dinámicos. Por supuesto, lo más importante es que la atención fuerte es una atención no diferenciable, y el proceso de entrenamiento a menudo se realiza a través del aprendizaje por refuerzo.

En pocas palabras, el mecanismo de atención dura no es diferenciable y generalmente se implementa mediante el aprendizaje por refuerzo. A través del incentivo de la función de ingresos, el modelo puede prestar más atención a los detalles de ciertas partes.

3.1 Tiempo de atención (tiempo de atención)

Este concepto es en realidad relativamente grande, ya que si la visión por computadora solo reconoce una sola imagen, no existe el concepto de dominio del tiempo, pero en algunos artículos Modelo de atención recurrente, se propone un mecanismo de atención basado en Red neuronal recurrente (RNN) Identificar el modelo.

El escenario donde el modelo RNN es más adecuado es que los datos tienen características temporales, por ejemplo, usar el RNN para generar el mecanismo de atención es mejor en el procesamiento del lenguaje natural. Debido a que el procesamiento del lenguaje natural es análisis de texto, en realidad existe una correlación temporal detrás de la generación de texto. Por ejemplo, una palabra será seguida por otra palabra, que es una correlación de dependencia temporal.

Los datos de la imagen en sí mismos no tienen características de temporización natural, y una imagen suele ser una muestra en un punto de tiempo. Pero en datos de video, RNN es un mejor modelo de datos, por lo que RNN puede usarse para generar atención de reconocimiento.

El modelo RNN se llama deliberadamente la atención del dominio del tiempo, porque este modelo agrega una nueva dimensión de tiempo al dominio del espacio, el dominio del canal y el dominio mixto presentados anteriormente. La generación de esta dimensión se basa en realidad en las características temporales de los puntos de muestreo.

En el modelo de atención recurrente, el mecanismo de atención se considera como una muestra de un punto de área en una imagen, y este punto de muestra es el punto que necesita atención. Y la atención en este modelo ya no es una información de atención diferenciable, por lo que también es un modelo de atención dura. El entrenamiento de este modelo debe entrenarse mediante el aprendizaje por refuerzo, y el tiempo de entrenamiento es más largo.

4. Atención blanda y su correspondiente dominio atencional

El mecanismo de atención suave es simplemente un problema de distribución continua entre [0,1] El grado de atención a cada área está representado por una puntuación de 0~1.
El punto clave de la atención suave es que este tipo de atención presta más atención a áreas o canales, y la atención suave es atención determinista. Después del aprendizaje, se puede generar directamente a través de la red. El punto más crítico es que la atención suave es diferenciable. que es un lugar muy importante. La atención diferenciable puede calcular el gradiente a través de la red neuronal y aprender el peso de la atención a través de la propagación hacia adelante y la retroalimentación hacia atrás.

En términos simples, el mecanismo de atención blanda se implementa mediante el descenso de gradiente, que es diferenciable y continuo. En las redes neuronales, los pesos de la atención suave se pueden aprender y ajustar a través de la propagación hacia adelante y hacia atrás.

Atención de canal 4.1 (atención de canal)

La atención del canal tiene como objetivo mostrar la correlación entre diferentes canales (mapas de características), obtener automáticamente la importancia de cada canal de características a través del aprendizaje de la red y, finalmente, asignar diferentes coeficientes de peso a cada canal, para fortalecer las características importantes y suprimir las características sin importancia.

El principio del mecanismo de atención en el dominio del canal es muy simple y podemos entenderlo desde la perspectiva de la transformación básica de la señal. En el análisis del sistema de señales, cualquier señal puede escribirse como una combinación lineal de ondas sinusoidales.Después de la transformación de tiempo-frecuencia, la señal de onda sinusoidal continua en el dominio del tiempo puede reemplazarse por un valor de señal de frecuencia.
inserte la descripción de la imagen aquí
En la red neuronal convolucional, cada imagen está inicialmente representada por (R, G, B) tres canales, y después de pasar por diferentes núcleos de convolución, cada canal generará nuevas señales, como cada una de las características de la imagen Usando una convolución de 64 núcleos para cada canal generará una matriz de 64 nuevos canales (H, W, 64), donde H y W representan la altura y el ancho de las características de la imagen, respectivamente.

La característica de cada canal en realidad representa los componentes de la imagen en diferentes núcleos de convolución, similar a la transformación de tiempo-frecuencia, y la convolución del núcleo de convolución es similar a la transformada de Fourier de la señal, por lo que esta característica se puede transformar La información de un canal se descompone en componentes de señal en 64 núcleos de convolución.

inserte la descripción de la imagen aquí
Dado que cada señal se puede descomponer en componentes en la función kernel, los nuevos 64 canales deben contribuir más o menos a la información clave.Si agregamos un peso a la señal en cada canal para representar el En términos de la correlación entre el canal y la información clave, cuanto mayor sea el peso, mayor será la correlación, es decir, el canal al que debemos prestar más atención.

El trabajo representativo en esta área es SE-Net , que ajusta de forma adaptativa la respuesta de la característica entre canales a través de la recalibración de características. Además, también está el conocido SK-Net , que está inspirado en Inception-block y SE-block.Desde la perspectiva de la representación de características de múltiples escalas, aprende mapas de características a diferentes escalas mediante la introducción de múltiples ramas de kernel de convolución. La atención permite que la red se concentre más en características de escala importantes. Además, está ECA-Net , que utiliza operaciones de convolución dispersas unidimensionales para optimizar las operaciones de capa totalmente conectadas involucradas en el módulo SE para reducir en gran medida la cantidad de parámetros y mantener un rendimiento comparable. Para comprimir la cantidad de parámetros y mejorar la eficiencia computacional, SE-Net adopta la estrategia de "reducción de dimensión primero y luego aumento de dimensión", utilizando dos perceptrones multicapa para aprender la correlación entre diferentes canales, es decir, cada característica actual Los gráficos interactúan con otros mapas de características, lo cual es una conexión densa. ECA-Net simplifica este método de conexión, de modo que el canal actual solo intercambia información con sus k canales de dominio.
inserte la descripción de la imagen aquí

4.1.1 SEC

Entre ellos, SENet (Sequeeze and Excitation Net) es la red campeona de la competencia de clasificación ImageNet 2017. Es esencialmente un modelo de atención basado en canales. Modela la importancia de cada canal de características y luego mejora o suprime diferentes canales para diferentes tareas. ., el diagrama esquemático es el siguiente.
inserte la descripción de la imagen aquí

Primero, la más a la izquierda es la característica X de la imagen de entrada original, y luego, después de la transformación, como la transformación por convolución de la imagen, se genera una nueva señal de característica U. U tiene canales C, y esperamos aprender el peso de cada canal a través del módulo de atención, generando así la atención del dominio del canal.

El módulo medio es la parte innovadora de SENet, que es el módulo del mecanismo de atención. Este mecanismo de atención se divide en tres partes: compresión, excitación y atención.

  1. Squeeze (apretar)
    inserte la descripción de la imagen aquí
    Es obvio que esta función hace un promedio global, sumando y promediando todos los valores de las características en cada canal, que también es una expresión matemática de la agrupación promedio global.

  2. La
    inserte la descripción de la imagen aquí
    función delta de excitación es ReLU y σ es una función de activación sigmoidea. Las dimensiones de W1 y W2 son para
    imagen
    imagen
    aprender estos dos pesos a través del entrenamiento y obtener un peso de excitación unidimensional para activar cada capa de canales.

  3. Función de escalado
    inserte la descripción de la imagen aquí
    Este paso es en realidad un proceso de escalado, los valores de diferentes canales se multiplican por diferentes pesos, para mejorar la atención al dominio del canal clave.

4.2 Atención espacial

La atención espacial tiene como objetivo mejorar la expresión de las características de las regiones clave.Esencialmente, la información espacial en la imagen original se transforma en otro espacio y retiene la información clave a través del módulo de transformación espacial, y se genera una máscara de peso (máscara) para cada posición y La la salida se pondera de tal manera que las regiones de interés de objetos específicos se mejoran mientras que las regiones de fondo irrelevantes se debilitan.

No todas las regiones de la imagen contribuyen por igual a la tarea. Solo las regiones relacionadas con la tarea deben estar involucradas, como el cuerpo principal de la tarea de clasificación. El modelo de atención espacial es encontrar las partes más importantes en la red para el procesamiento.

El trabajo más destacado en esta área es CBAM, que se basa en el canal de atención original y conecta un módulo de atención espacial (SAM). SAM se basa en operaciones de agrupamiento promedio global basado en canales y agrupamiento máximo global para generar dos mapas de características que representan información diferente.Después de la fusión, se utiliza una convolución de 7 × 7 con un gran campo receptivo para la fusión de características y, finalmente, a través de la operación Sigmoid. Para generar un mapa de peso superpuesto al mapa de características de entrada original, de modo que se pueda mejorar el área objetivo. En general, para la atención espacial, dado que las características de cada canal se tratan por igual, la interacción de información entre canales se ignora; mientras que la atención de canal consiste en procesar directamente la información en un canal globalmente, es fácil ignorar la interacción de información en el espacio . El autor finalmente verificó a través de experimentos que el camino del primer canal y luego el espacio es mejor que el camino del primer espacio y luego el canal o el espacio del canal paralelo. Además, módulos mejorados similares incluyen el módulo Double Attention propuesto por A2-Net y la variante del módulo de atención scSE inspirado en SE-Net.
inserte la descripción de la imagen aquí

4.2.1 Red STN

La red STN (Spatial Transformer Network) propuesta por Google DeepMind , que completa la operación de preprocesamiento adecuada para la tarea mediante el aprendizaje de la deformación de la entrada, es un modelo de Atención basado en el espacio. La estructura de la red es la siguiente: Aquí, la red de localización se utiliza para generar
inserte la descripción de la imagen aquí
un coeficiente de transformación afín, la entrada es una imagen dimensional C×H×W y la salida es un coeficiente de transformación espacial. Su tamaño depende del tipo de transformación que se va a aprender. Si es una transformación afín, es un vector de 6 dimensiones.

El efecto de tal red a ser completada es el siguiente:
inserte la descripción de la imagen aquí

Es decir, ubique la posición del objetivo y luego realice operaciones como la rotación para que la muestra de entrada sea más fácil de aprender. Aquí hay una solución modificada de un solo paso

En comparación con Spatial Transformer Networks, que completa el posicionamiento de destino y el ajuste de transformación afín en un solo paso, Dynamic Capacity Networks utiliza dos subredes, a saber, una subred de bajo rendimiento (modelo grueso) y una subred de alto rendimiento (modelo fino). ).

La subred de bajo rendimiento (modelo grueso) se utiliza para procesar la imagen completa y localizar la región de interés, como en la operación fc de la figura siguiente.
La subred de alto rendimiento (modelo fino) refina la región de interés, como se muestra en la operación ff en la figura a continuación.
Ambos pueden usarse juntos para obtener un menor costo computacional y una mayor precisión.
inserte la descripción de la imagen aquí

Dado que el área de interés es solo una pequeña parte de la imagen en la mayoría de los casos, la esencia de la atención espacial es ubicar el objetivo y realizar algunas transformaciones u obtener pesos.

Para obtener explicaciones específicas, consulte el mecanismo de atención en la visión por computadora (Atención visual)

Resultados experimentales del modelo de transformador espacial
Por ejemplo, este diagrama de resultados del experimento del modelo de transformador espacial:

  • La columna (a) es la información de la imagen original, en la que el primer número 7 escrito a mano no tiene transformación, el segundo número 5 escrito a mano tiene un cierto cambio de rotación y el tercer número 6 escrito a mano ha agregado algunas señales de ruido;
  • (b) El borde coloreado en la columna es el cuadro delimitador del transformador espacial aprendido
    Cada cuadro es en realidad un transformador espacial aprendido de la imagen correspondiente;
  • La columna (c) es
    el mapa de características convertido por el transformador espacial. Se puede ver que el área clave de 7 está seleccionada, 5 se gira en una imagen positiva y la información de ruido de 6 no se reconoce.

Finalmente, estos mapas de características transformados se pueden usar para predecir el valor de los dígitos escritos a mano en la columna (d).

El transformador espacial es en realidad la realización del mecanismo de atención, porque el transformador espacial capacitado puede encontrar las áreas a las que se debe prestar atención en la información de la imagen y, al mismo tiempo, este transformador también puede tener las funciones de rotación y Transformación de zoom, para que la información importante de la parte local de la imagen se pueda transformar y se extraiga por el cuadro.

4.3 Atención mixta (atención mixta)

Después de comprender las ideas de diseño de los dos primeros dominios de atención, haga una comparación simple.
En primer lugar, la atención en el dominio espacial ignora la información en el dominio del canal y trata las características de la imagen en cada canal por igual. Este enfoque limitará el método de transformación del dominio espacial a la etapa de extracción de características de la imagen original y lo aplicará a otras capas de redes neuronales Las capas no son muy interpretables.

La atención del dominio del canal es agrupar directamente la información en un canal globalmente e ignorar la información local en cada canal.Este enfoque es en realidad un comportamiento relativamente violento. Por lo tanto, combinando las dos ideas, podemos diseñar el modelo de mecanismo de atención del dominio mixto.

El nombre completo de CBAM es Módulo de atención de bloque convolucional, que es una de las obras maestras del mecanismo de atención publicado en ECCV2018. En este artículo, los autores estudian la atención en arquitecturas de red, no solo para decirnos dónde enfocarnos, sino también para mejorar la representación de la atención. El objetivo es aumentar la expresividad mediante el uso de un mecanismo de atención, centrándose en las características importantes y suprimiendo las innecesarias. Para enfatizar las características significativas en las dimensiones espacial y de canal, aplicamos secuencialmente módulos de atención espacial y de canal para aprender en qué y dónde enfocarse en las dimensiones de canal y espacial, respectivamente. Además, el flujo de información dentro de la red también se ve favorecido por saber qué información enfatizar o suprimir. Rendimiento mejorado al tiempo que se reduce el número de parámetros.

La arquitectura de la red principal también es muy simple, uno es el módulo de atención de canales y el otro es el módulo de atención espacial, CBAM integra el módulo de atención de canales y el módulo de atención espacial sucesivamente.
inserte la descripción de la imagen aquí

4.4 Auto atención

El mecanismo de autoatención es una mejora del mecanismo de atención, que reduce la dependencia de la información externa y captura mejor la correlación interna de datos o características.

En la red neuronal, sabemos que la capa de convolución obtiene las características de salida a través de la combinación lineal del núcleo de convolución y las características originales. Dado que el núcleo de convolución suele ser local, para aumentar el campo receptivo, la forma de apilar las capas de convolución se adopta a menudo De hecho, este enfoque no es eficiente. Al mismo tiempo, muchas tareas en visión artificial se deben a una información semántica insuficiente, lo que afecta el rendimiento final. El mecanismo de autoatención obtiene un mayor campo receptivo e información de contexto al capturar información global.

El mecanismo de autoatención (self-attention) ha tenido un gran avance en el modelo de secuencia; por otro lado, la información de contexto (context information) es crítica para muchas tareas de visión, como la segmentación semántica y la detección de objetivos. El mecanismo de autoatención proporciona un método de modelado efectivo para capturar información de contexto global a través del triplete de (clave, consulta, valor).

Como forma eficaz de modelar el contexto, el mecanismo de autoatención ha logrado buenos resultados en muchas tareas visuales. Al mismo tiempo, las deficiencias de este método de modelado también son obvias, una es que no se considera la información del canal y la otra es que la complejidad computacional es aún muy grande. La estrategia de mejora correspondiente, por un lado, es cómo combinar de manera efectiva la información espacial y de canal, y por otro lado, cómo capturar escasamente la información. La ventaja de la dispersión es que puede ser más robusta manteniendo una menor cantidad de cálculo. y memoria de vídeo. Finalmente, la convolución de gráficos es una dirección de investigación candente en los últimos años. Cómo conectar el mecanismo de autoatención y la convolución de gráficos, y una comprensión más profunda del mecanismo de autoatención son direcciones muy importantes en el futuro.

Supongo que te gusta

Origin blog.csdn.net/m0_47146037/article/details/126260922
Recomendado
Clasificación