AI 101: Introduction à l'IA

Pourquoi les Transformers sont-ils en train de remplacer les réseaux récurrents sur les données textuelles ?

Théo Viel

Deep Learning Scientist chez DAMAE Medical

En termes de traitement automatique de texte (NLP), les méthodes de Deep Learning se sont depuis une dizaine d’année maintenant imposées dans tous les benchmarks. Il y a 2 ans encore, les meilleures performances étaient souvent atteintes par des RNNs. Ceci a radicalement changé récemment, avec l’arrivée des Transformers. J’évoque ici quelques raisons expliquant cette transition.

Quelques mots sur les réseaux récurrents

Les réseaux récurrents (RNN) sont des modèles adaptés aux données ayant un aspect temporel : L’exemple souvent utilisé est la prédiction de stock-options. Nous nous intéressons ici aux phrases, pour lesquelles chaque mot (ou chaque caractère) correspond à l’unité de temps. Dans le cadre du NLP, la première étape est toujours d’encoder les phrases sous formes de matrices, que les réseaux de neurones peuvent utiliser.

Dans un réseau récurrent, chaque mot est vu un par un dans l’ordre de la phrase et interagit avec les mots le précédant. Les RNNs les plus utilisés sont les LSTMs [1], mais il en existe plusieurs variantes qui se fondent sur ces mêmes principes (our quelques explications plus détaillées, se référer aux liens en références).

Quelques mots sur les Transformers

Les Transformers sont un type d’architecture qui utilise des mécanismes d’attention pour modéliser les interactions entre les mots. Popularisé par Attention Is All You Need [2] qui les utilise pour de la traduction, leur utilisation est devenue plus générale avec l’arrivée des architectures Bert [3] et GPT [4].

Contrairement aux RNNs, les mécanismes d’attention n’ont pas connaissance de la position des mots. Les Transformers y remédient en encodant les positions, cette information est combinée avec l’information sémantique (de même, consulter les références pour plus de détails).

Les mécanismes d’attention peuvent se résumer sous la forme , où sont les requêtes (queries), les clés (keys) et les valeurs (values). Chaque valeur de est associée à une clé de , et le mécanisme d’attention va calculer une pondération de cette valeur en utilisant une mesure de similarité entre la clé et la requête.

Dans le cadre des transformers sur un texte, chaque mot va être utilisé comme requête sur la totalité de la phrase, d’où la complexité quadratique en nombre de mots !

Avantages des Transformers

- Taille du modèle & pré-entraînement

Les Transformers sont des architectures de taille conséquente — 110 Millions de paramètres pour le plus petit Bert — ce qui implique qu’il est nécessaire d’avoir beaucoup de données pour les entraîner. Or, la grande majorité des cas d’utilisation des Transformers repartent des poids pré-entraînés. Ces poids sont appris avec des tâches de modèle de langue (Language Model), de manière non supervisée (c’est-à-dire ne nécessitant pas d’étiquette ), en utilisant l’énorme quantité de données disponible sur internet. Un exemple est la prédiction du mot suivant un début de phrase, où les phrases d’entrainement ont été « scrappées » sur Wikipedia.

Ce pré-entraînement permet d’utiliser la puissance des Transformers sur diverses sous-tâches sans trop « d’overfitting ». Le même principe est utilisé en Computer Vision avec le pré-entraînement des réseaux convolutifs (CNNs) sur ImageNet.

- A priori et dépendances

L’idée derrière les RNNs est que chaque mot va communiquer de l’information avec son voisinage proche.Leur fonctionnement ressemble ainsi à celui d’un humain lisant un texte. A contrario, les Transformers font interagir l’ensemble des mots d’un texte avec tous les autres, au travers de mécanismes d’attention. Cet a priori est beaucoup moins contraignant et permet de modéliser des dépendances « plus longues », c’est-à-dire entre mots plus éloignés. Cette modélisation est rendue possible au travers de modèles ayant plusieurs centaines de millions de paramètres, et ceci grâce à la quantité de données accessible pour le pré-entrainement ainsi qu’à la puissance de calcul disponible.

La face cachée…

Si la taille des Transformers, la robustesse de leur pré-entraînement, ainsi que leur a priori moins restrictif font leur force, ils sont également le reflet d’une triste réalité derrière le Deep Learning : entraîner un modèle de langue tel que Bert coûte environ 50k€, et requiert d’avoir accès à énormément de GPUs. Le plus large des modèles GPT-3 d’OpenAI fait 175 milliards de paramètres, soit 350 GB. Il faut donc 11 Tesla V100 (à 10k€ l’unité) rien que pour charger le modèle en mémoire. Les Transformers sont ainsi beaucoup moins accessibles que les RNNs et finalement les architectures les plus puissantes (i.e. les plus grosses) sont entraînables par très peu d’acteurs, par exemple :

  • La puissance de calcul possédée par Google leur permet d’utiliser les Transformers pour améliorer leur moteur de recherche [7]
  • OpenAI n’a pas rendu Open Source GTP-3 et vend l’accès au modèle à travers d’une API [8]

Niveau de lecture

Aidez-nous à déterminer le niveau de lecture:

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Lire des articles similaires: