¿Qué es la ‘atención’ en el contexto del aprendizaje profundo?

En las redes profundas de alimentación directa, toda la entrada se presenta a la red, que calcula una salida en una pasada.

En las redes recurrentes, se pueden presentar nuevas entradas en cada paso de tiempo, y la salida del paso de tiempo anterior se puede utilizar como una entrada a la red. Esto puede ser útil para modelar secuencias.

Una dificultad con las redes de avance es que tienen que computar todo a la vez. No es así como funcionan la mayoría de los programas, la mayoría de los programas involucran bucles y flujos de control. Del mismo modo, esto no es así como funciona la visión. Si bien los humanos tienen cierta capacidad para reconocer una imagen sin mover su mirada, son mucho mejores cuando pueden usar sacadas para escanear la imagen, saltando de una pista a otra.

Un modelo de atención en una red neuronal recurrente permite que la red se enfoque secuencialmente en un subconjunto de la entrada, la procese y luego cambie su enfoque a alguna otra parte de la entrada. Esto hace que sea más fácil razonar secuencialmente sobre los datos, incluso si los datos no son de naturaleza secuencial. Se puede aprender un modelo de atención mediante el aprendizaje por refuerzo, o mediante la devolución de personal si la política es diferenciable.

El DIBUJO en papel es una excelente lectura sobre el tema Una red neuronal recurrente para la generación de imágenes

De acuerdo con Scholaropedia (Attention – Scholarpedia): “Atención se refiere al proceso mediante el cual los organismos seleccionan un subconjunto de información disponible en la cual enfocarse para un procesamiento mejorado (a menudo en un sentido de relación señal-ruido) e integración”.

Este subconjunto se puede encontrar ya sea limitando la extensión espacial sobre la cual se calculan las características, o a lo largo de las propias dimensiones de la característica. Además, al observar la definición, se puede decir que la estrategia de filtrado está muy relacionada con la tarea en cuestión. Por ejemplo, digamos que estamos en una fiesta y nuestro amigo nos desafía a realizar una tarea de “encontrar el que está fuera en una imagen”. En este contexto, normalmente hay varias instancias de objetos con apariencia cercana pero con características ligeramente diferentes. Dependiendo del contexto, cambiamos dinámicamente las características en las que dependemos para emitir un juicio. Este tipo de cambios dinámicos en las características son muy evidentes cuando la tarea de detección es compleja y nos obliga a considerar un conjunto de características complejas y nos obliga a realizar una búsqueda exhaustiva que a menudo nos obliga a reducir la velocidad. Por lo general, las redes de feedforward no tienen este tipo de cambios dinámicos que dependen del contexto en la selectividad de las características (aunque si considera una red grande y la capacita adecuadamente, podría desarrollar algún tipo de activación de características). Las redes recurrentes pueden mostrar este tipo de comportamiento, pero son muy difíciles de entrenar.

En resumen, la atención en el contexto del aprendizaje profundo podría ser incorporar en la red una capacidad para cambiar / seleccionar dinámicamente los atributos en los que se basa de tal manera que, dado un contexto (entrada y par de tareas), la toma de decisiones en general sea más confiable.

Citado de un artículo reciente, “La atención es todo lo que necesita”, que introduce una arquitectura de mapeo de secuencia a secuencia que solo usa el mecanismo de atención sin recurrencia, y que logra el rendimiento de vanguardia en algunas tareas de traducción automática:

“Una función de atención puede describirse como la asignación de una consulta y un conjunto de pares clave-valor a una salida, donde la consulta, las claves, los valores y la salida son todos vectores. La salida se calcula como una suma ponderada de los valores, donde el peso asignado a cada valor se calcula mediante una función de compatibilidad de la consulta con la clave correspondiente “.

En el caso de seq2seq, una consulta es el estado oculto del decodificador [math] h_ {t, n-1}, ~ n = 1,…, N [/ math], una tecla es el estado oculto del codificador [ math] h_ {t-1, m}, ~ m = 1,…, M [/ math], y el valor correspondiente es el peso normalizado [math] w_ {n, m} [/ math], que representa hasta qué punto La clave está siendo atendida. La forma en que se combinan una consulta y una clave para obtener un valor es mediante una suma ponderada. Por otro lado, el documento “Secuencia convolucional para secuenciar el aprendizaje” y “Atención es todo lo que necesita”, que logró un rendimiento de vanguardia en la traducción automática utiliza un mecanismo de atención donde el producto puntual de una consulta y un Se toma clave para obtener un valor.

Acabo de leer un artículo Atención y memoria en Deep Learning y NLP. Dijo que “Como mencioné anteriormente, creo que la atención es algo así como un nombre inapropiado …”.

Creo que, como análogo a un modelo de regresión, las partes atentas tienen un coeficiente más alto, eso es todo. No se relaciona con un controlador superior como el marco de los campos de modelado neural.

En una “corriente de pensamiento”, el enfoque se logra mediante la combinación de atención a un objetivo y evitar distracciones alejadas del objetivo. Pero el pensamiento no es un proceso tan simple y el enfoque es un problema bastante complejo.

Es difícil establecer una analogía adecuada entre esto y el mero aprendizaje de patrones y jerarquías de patrones como en el “aprendizaje profundo”. una ANN no tiene realmente una corriente de pensamiento como tal; Funciona de una manera bastante diferente.