Avez-vous été surpris par la capacité d’une interface de conversation telle que ChatGPT à gérer le langage naturel ? L’un des secrets d’une telle aptitude réside dans le Multi Head Attention…
Le NLP (natural langage processing – traitement du langage naturel) a évolué de façon magistrale au cours des dernières années. Ce que l’on sait moins, c’est qu’une innovation particulière a révolutionné cette capacité à décoder notre langage : le Multi Head Attention.
Le Multi Head Attention s’inscrit au sein d’un modèle d’analyse particulier, les Transformers…
Un avant et un après
Avant l’avènement des Transformers, deux types de modèles dominaient le traitement du langage : les RNN et les CNN. Tous deux pêchaient dans leur approche du problème.
Les RNN (Réseaux de Neurones Récurrents) traitent les informations séquentiellement, ce qui est certes utile pour un texte. Pourtant, ils sont à la peine avec les longues séquences.
Avant tout utilisés pour la reconnaissance d’images, les CNN (Réseaux de Neurones Convolutifs) sont également appliqués au texte. Leur efficacité est moindre que celle des RNN.
Les Transformers
Le 12 juin 2017, un article écrit par Ashish Vaswani, Noam Shazeer, Niki Parmar et 5 autres chercheurs a fait sensation. Intitulé “Attention Is All You Need”, il a présenté une nouvelle architecture appelée Transformers. Ce concept a permis des avancées significatives dans la compréhension et la génération du langage naturel. Il est à la base de modèles avancés tels que GPT de OpenAI ou Bert de Google.
Les points clés des Transformers
Voici les caractéristiques clés des Transformers :
- À la différence des RNN et CNN, les Transformers n’analysent pas les mots de façon isolée mais diverses parties d’un texte en vue afin de déterminer quelles relations elles entretiennent entre elles, et quelles sont leurs importances relatives. C’est ce que l’on appelle le Mécanisme d’Attention.
- Cette approche amène l’algorithme du Transformer à aborder les éléments d’un texte en mode parallèle plutôt qu’en séquence. Il en résulte un traitement plus rapide.
Multi Head Attention
Le Multi Head Attention est l’une des caractéristiques phare d’un Transformer. Telle quelle, cette expression pourrait être traduite comme « plusieurs têtes d’attention« . Elle fait référence à la capacité du mécanisme d’attention de se concentrer simultanément sur plusieurs parties d’un texte.
Tout se passe comme si nous avions plusieurs unités qui lisent des portions d’une même phrase (l’action principale, l’action secondaire, les adjectifs, les éléments indiquant le temps de l’action…). Chacune va tenter d’améliorer la compréhension du sens global.
Le Multi Head Attention aide ainsi à saisir le contexte complet d’une phrase, quand bien même elle peut être longue et complexe. Il en résulte des textes qui semblent avoir été écrits par un humain, comme dans ChatGPT ou Bard.
Comment fonctionne le Multi Head Attention ?
Comment se passe l’analyse d’un texte selon le Multi Head Attention ? Pour mieux le comprendre, considérons une phrase telle que la suivante : « Ridley Scott vient de sortir un film sur Napoléon, qui a fait dresser les poils de nombreux historiens. »
- Chaque mot de la phrase est converti en un vecteur, soit un ensemble de nombres représentant diverses caractéristiques. Ces vecteurs sont issus de modèles d’apprentissage automatique qui ont été appliqués à de grands ensembles de données textuelles. Un vecteur englobe plusieurs dimensions, chacune synthétisant une caractéristique d’un mot : son rôle dans une phrase, son sens, sa relation avec d’autres mots.
- La phrase est divisée en plusieurs « têtes », chacune se concentrant sur une partie différente.
- Un score d’attention est attribué à chaque mot de la phrase. Son attribution est issue d’un calcul complexe. Ainsi, une tête pourrait évaluer quelle est l’importance de « Ridley Scott » par rapport à « sorti », à « film », à « Napoléon », etc. Un score élevé signifie qu’un mot est très important pour comprendre la partie correspondante.
- Une fois que chaque tête a attribué ses scores, le modèle combine ces informations en vue d’obtenir une vue complète de la phrase. Il en résulte une compréhension riche et nuancée. Dans le cas évoqué ci-dessus, le modèle estimerait que « Ridley Scott » est le sujet principal de la phrase avec comme action « sort un film », etc.
En considérant ainsi une phrase sous plusieurs angles simultanés, Multi Head Attention aide à mieux saisir son sens complet et les éventuelles subtilités du texte.
Qui utilise le Multi Head Attention ?
Si le Multi Head Attention a notamment été mis à profit par GPT de OpenAI et Bert de Google, il est aussi partie intégrante d’autres modèles représentant l’avant-garde de la recherche en traitement du langage naturel :
- DistilBERT, une initiative de Hugging Face, réalisée en collaboration avec l’Université de New York. Cette version optimisée de BERT s’avère plus légère et rapide.
- RoBERTa, une variante de BERT développée par Facebook AI, qui a été entraînée sur un plus vaste volume de données, mais aussi des ensembles plus grands, ce qui a permis d’affiner ses capacités d’analyse.
- Transformer XL, issu d’une entité appelée Google Brain, un projet de recherche avancé lancé par Google en 2011. Ce modèle s’est montré fort efficace pour gérer des séquences particulièrement longues.
- XLNet, un modèle de traitement du langage naturel créé par l’université Carnegie Mellon en partenariat avec Google Brain.