¿Cuál es la diferencia o relación entre el mecanismo de atención y las puertas en LSTM?

Esa es una muy buena pregunta. Los diferentes mecanismos de activación de un LSTM están diseñados para permitirle recordar información a largas distancias, aprendiendo qué partes de la secuencia de entrada son más importantes, por lo que esta distinción es confusa. Sin embargo, en una tarea de predicción compleja en la que está tratando de generar algo complejo (como en un problema de aprendizaje estructurado), como una oración, debe poder atender diferentes partes de las entradas (ya sea una oración e imagen o lo que sea) a medida que comienza a generar esa salida compleja. Los RNN de cualquier tipo, incluidos los LSTM, son modelos paramétricos, tienen una cantidad fija de memoria con la que codificar las entradas. Por ejemplo, para traducir una oración en inglés a otro idioma, digamos francés, primero deben procesar toda la oración en inglés y codificar todo lo importante sobre esa oración en una o más capas ocultas de tamaño fijo. Cuando queremos traducir una oración, las diferentes partes de la oración en inglés son más importantes en diferentes puntos de la traducción cuando se genera. Por lo tanto, nos gustaría tener la capacidad de revisar la oración en inglés y “atender” las partes que son relevantes para la parte actual de la traducción. Por ejemplo, queremos mirar hacia atrás a la palabra “I” al generar el trabajo francés “Je”, y la palabra inglesa “am” al producir la palabra francesa “suis”. El mecanismo de atención neuronal nos permite hacer esto, con un RNN o LSTM regular, todo lo que tenemos es uno o más vectores que codifican toda la oración de una vez. Típicamente (pero no exclusivamente), los mecanismos de atención se han utilizado para generar resultados complejos: subtítulos para una imagen, traducciones para una oración y otras tareas generativas complejas que se crean al ejecutar una serie de pasos de predicción de salida en lugar de simplemente predecir una sola etiqueta o clase. Nos permiten tomar una secuencia de decisiones, como qué palabra predecir a continuación, mientras atendemos a diferentes partes de la entrada a medida que lo hacemos, en lugar de un resumen de toda la entrada (como obtendríamos con un LSTM regular) . Este enfoque se puede adaptar a una amplia gama de tareas complejas de predicción estructurada y, por lo tanto, es una herramienta mucho más flexible y poderosa que un modelo que solo puede producir una sola etiqueta de salida dada una entrada. Puede hacerlo usando un modelo de codificador / decodificador RNN sin atención, pero agregar atención empíricamente a estos modelos los hace mucho más precisos.