Qu’est-ce que l’Attention ?

Actualités de de l'Intelligence Artificielle - Machine Learning - Objets connectés

Qu’est-ce que l’Attention ?


Dernière mise à jour le 15 septembre 2021

L’attention devient de plus en plus populaire dans l’apprentissage automatique, mais qu’est-ce qui en fait un concept si attrayant ? Quelle est la relation entre l’attention telle qu’elle est appliquée dans les réseaux de neurones artificiels et sa contrepartie biologique ? Quels sont les composants que l’on pourrait attendre pour former un système basé sur l’attention dans l’apprentissage automatique ?

Dans ce tutoriel, vous découvrirez un aperçu de l’attention et de son application en machine learning.

Après avoir terminé ce tutoriel, vous saurez :

  • Un bref aperçu de la façon dont l’attention peut se manifester dans le cerveau humain.
  • Les composants qui composent un système basé sur l’attention, et comment ils sont inspirés de l’attention biologique.

Commençons.

Qu’est-ce que l’Attention ?
Photo de Rod Long, certains droits réservés.

Présentation du didacticiel

Ce tutoriel est divisé en deux parties ; elles sont:

    • Attention
    • Attention dans l’apprentissage automatique

Attention

L’attention est un concept largement étudié qui a souvent été étudié en conjonction avec l’éveil, la vigilance et l’engagement avec son environnement.

Dans sa forme la plus générique, l’attention pourrait être décrite comme simplement un niveau global de vigilance ou de capacité à s’engager avec l’environnement.

Attention en psychologie, neurosciences et apprentissage automatique, 2020.

Visuel l’attention est l’un des domaines qui est le plus souvent étudié du point de vue neuroscientifique et psychologique.

Lorsqu’un sujet est présenté avec des images différentes, les mouvements oculaires que le sujet effectue peuvent révéler le saillant parties de l’image sur lesquelles l’attention du sujet est principalement attirée. Dans leur revue des modèles informatiques pour l’attention visuelle, Itti et Koch (2001) mentionnent que ces parties d’image saillantes sont souvent caractérisées par des attributs visuels qui incluent le contraste d’intensité, les bords orientés, les coins et les jonctions et le mouvement. Le cerveau humain s’occupe de ces caractéristiques visuelles saillantes à différents stades neuronaux.

Les neurones aux premiers stades sont réglés sur des attributs visuels simples tels que le contraste d’intensité, l’opposition des couleurs, l’orientation, la direction et la vitesse du mouvement, ou la disparité stéréo à plusieurs échelles spatiales. Le réglage neuronal devient de plus en plus spécialisé avec la progression des zones visuelles de bas niveau vers les zones visuelles de haut niveau, de sorte que les zones visuelles de niveau supérieur incluent des neurones qui ne répondent qu’aux coins ou aux jonctions, aux signaux de forme à partir de l’ombrage ou à des vues spécifiques du monde réel. objets.

– Modélisation informatique de l’attention visuelle, 2001.

Fait intéressant, la recherche a également observé que différents sujets ont tendance à être attirés par les mêmes repères visuels saillants.

La recherche a également découvert plusieurs formes d’interaction entre la mémoire et l’attention. Étant donné que le cerveau humain a une capacité de mémoire limitée, la sélection des informations à stocker devient cruciale pour tirer le meilleur parti des ressources limitées. Le cerveau humain le fait en s’appuyant sur l’attention, de sorte qu’il stocke dynamiquement en mémoire les informations auxquelles le sujet humain prête principalement attention.

Attention dans l’apprentissage automatique

La mise en œuvre du mécanisme d’attention dans les réseaux de neurones artificiels ne suit pas nécessairement les mécanismes biologiques et psychologiques du cerveau humain. Il s’agit plutôt de la capacité de mettre en évidence et d’utiliser dynamiquement les saillant parties de l’information à portée de main, de la même manière que dans le cerveau humain, qui fait de l’attention un concept si attrayant dans l’apprentissage automatique.

On pense qu’un système basé sur l’attention se compose de trois éléments :

  1. Un processus qui « lit » les données brutes (telles que les mots sources dans une phrase source) et les convertit en représentations distribuées, avec un vecteur caractéristique associé à chaque position de mot.
  1. Une liste de vecteurs de caractéristiques stockant la sortie du lecteur. Cela peut être compris comme une « mémoire » contenant une séquence de faits, qui peuvent être récupérés plus tard, pas nécessairement dans le même ordre, sans avoir à tous les visiter.
  1. Un processus qui « exploite » le contenu de la mémoire pour effectuer une tâche de manière séquentielle, à chaque pas de temps ayant la capacité d’attirer l’attention sur le contenu d’un élément de mémoire (ou de quelques-uns, avec un poids différent).

– Page 491, Apprentissage en profondeur, 2017.

Prenons l’exemple du cadre encodeur-décodeur, puisque c’est dans un tel cadre que le mécanisme d’attention a été introduit pour la première fois.

Si nous traitons une séquence de mots d’entrée, celle-ci sera d’abord introduite dans un encodeur, qui produira un vecteur pour chaque élément de la séquence. Cela correspond à la première composante de notre système basé sur l’attention, comme expliqué ci-dessus.

Une liste de ces vecteurs (le deuxième composant du système basé sur l’attention ci-dessus), ainsi que les états cachés précédents du décodeur, seront exploités par le mécanisme d’attention pour mettre en évidence de manière dynamique laquelle des informations d’entrée sera utilisée pour générer la sortie.

A chaque pas de temps, le mécanisme d’attention prend alors l’état caché précédent du décodeur et la liste des vecteurs codés, et les utilise pour générer But valeurs qui indiquent dans quelle mesure les éléments de la séquence d’entrée s’alignent avec la sortie actuelle. Étant donné que les valeurs de score générées doivent avoir un sens relatif en termes d’importance, elles sont normalisées en les passant par une fonction softmax pour générer le poids. Après la normalisation softmax, toutes les valeurs de poids se situeront dans l’intervalle [0, 1] et additionneront jusqu’à 1, ce qui signifie qu’ils peuvent être interprétés comme des probabilités. Enfin, les vecteurs codés sont mis à l’échelle par les poids calculés pour générer un vecteur de contexte. Ce processus d’attention constitue la troisième composante du système basé sur l’attention ci-dessus. C’est ce vecteur de contexte qui est ensuite introduit dans le décodeur pour générer une sortie traduite.

Ce type d’attention artificielle est donc une forme de repondération itérative. Plus précisément, il met en évidence de manière dynamique différents composants d’une entrée prétraitée car ils sont nécessaires pour la génération de sortie. Cela le rend flexible et dépendant du contexte, comme l’attention biologique.

Attention en psychologie, neurosciences et apprentissage automatique, 2020.

Le processus mis en œuvre par un système qui intègre un mécanisme d’attention contraste avec celui qui n’en intègre pas. Dans ce dernier cas, le codeur générerait un vecteur de longueur fixe quelle que soit la longueur ou la complexité de l’entrée. En l’absence d’un mécanisme mettant en évidence les informations saillantes sur l’intégralité de l’entrée, le décodeur n’aurait accès qu’aux informations limitées qui seraient codées dans le vecteur de longueur fixe. Cela pourrait potentiellement faire en sorte que le décodeur manque des informations importantes.

Le mécanisme d’attention a été initialement proposé pour traiter des séquences de mots en traduction automatique, qui ont un aspect temporel implicite. Cependant, elle peut être généralisée pour traiter des informations qui peuvent être statiques, et pas nécessairement liées de façon séquentielle, comme dans le cadre du traitement d’images. Nous verrons comment cette généralisation peut être réalisée dans un tutoriel séparé.

Lectures complémentaires

Cette section fournit plus de ressources sur le sujet si vous cherchez à approfondir.

Livres

Papiers

Sommaire

Dans ce tutoriel, vous avez découvert un aperçu de l’attention et de son application dans l’apprentissage automatique.

Concrètement, vous avez appris :

  • Un bref aperçu de la façon dont l’attention peut se manifester dans le cerveau humain.
  • Les composants qui composent un système basé sur l’attention, et comment ils sont inspirés de l’attention biologique.

Avez-vous des questions?
Posez vos questions dans les commentaires ci-dessous et je ferai de mon mieux pour y répondre.