IA générative
Engendrer, c'est prédire
La phrase la plus surprenante au sujet de l'IA générative est celle-ci : elle n'engendre rien. Elle prédit.
Un programme qui estime la consommation d'électricité de demain fait au fond la même chose qu'un programme qui écrit un texte. Tous deux reçoivent une suite de valeurs et estiment la suivante. La seule différence tient à ce que l'on fait de l'estimation. Dans la prévision, on la lit. Dans la génération, on l'ajoute à la fin de la suite et on redemande : et maintenant, que vient-il ?
De cette unique rétroaction naît tout ce qui se vend aujourd'hui comme IA générative. Un générateur de texte est une prévision météorologique pour les mots, appliquée sans cesse à son propre résultat.
La question : comment une machine retient-elle ce qui précède ?
Pour que la prédiction réussisse, le programme doit connaître le contexte. La mesure suivante dépend des précédentes, le mot suivant de la phrase déjà écrite. Un réseau de neurones ordinaire en est incapable : il ne voit jamais qu'une entrée fixe et n'a pas de mémoire. Toute l'évolution des trente dernières années se laisse lire comme une lutte autour de cette mémoire.
Les réseaux récurrents : la boucle
La première réponse fut celle des réseaux récurrents (RNN). Le réseau traite la suite pas à pas et se redonne son propre résultat intermédiaire comme entrée supplémentaire. Cet état est sa mémoire à court terme.
L'idée est élégante et fonctionne mal. Sur de longues suites, l'information du début s'estompe, parce qu'elle est repassée à chaque étape par le même calcul. Le réseau oublie le début de la phrase avant qu'elle ne soit finie.
LSTM : oublier à dessein
La deuxième réponse est venue en 1997 de Sepp Hochreiter et Jürgen Schmidhuber : le Long Short-Term Memory.1 Ils ont complété la boucle par de petites vannes, elles-mêmes apprises. Une vanne décide de ce qui entre en mémoire, une deuxième de ce qui en est effacé, une troisième de ce qui est transmis vers l'extérieur.
Un LSTM peut donc apprendre à retenir un détail sur une centaine de mots et à laisser tomber aussitôt l'accessoire. C'est ainsi qu'ont fonctionné pour la première fois la traduction automatique, la reconnaissance vocale au téléphone et une prédiction de texte utilisable.
Deux inconvénients demeuraient. Le modèle traite la suite strictement l'un après l'autre et ne se répartit donc guère sur de nombreux cœurs de calcul. Et tout ce qu'il veut retenir de mille mots doit passer par un unique état de mémoire : un goulot d'étranglement.
L'attention : tout regarder en même temps
La troisième réponse a rejeté le goulot d'étranglement. Au lieu de comprimer le passé dans un état, le modèle peut à chaque étape se retourner sur toutes les positions précédentes et pondérer lui-même celles qui comptent sur le moment. Cette pondération s'appelle l'attention.
Devant le mot « elle » dans un long paragraphe, le modèle cherche l'endroit auquel le mot renvoie et lui donne un poids élevé. Rien n'a besoin d'être transmis sur cent étapes, le lien s'établit directement.
En 2017, un groupe de Google a montré que l'on peut supprimer complètement la boucle et se contenter de l'attention seule.2 Le résultat s'appelle le transformeur. Comme plus aucune étape n'a besoin d'attendre la précédente, l'entraînement se répartit sur des milliers de cartes graphiques. C'est précisément cette parallélisation, et non une intelligence particulière de l'architecture, qui a rendu possibles les grands modèles d'aujourd'hui.
Pas seulement le texte
Les images naissent le plus souvent autrement, selon la même idée de fond. Dans la diffusion, un modèle apprend à retirer pas à pas le bruit d'une image.3 Pour engendrer, on part d'un bruit pur et on laisse le modèle débruiter jusqu'à ce qu'une image apparaisse. Là non plus rien n'est inventé : en de nombreuses petites étapes, le modèle prédit la suite.
Ce qui en découle dans la pratique
- Des réponses différentes : les probabilités estimées font l'objet d'un tirage au sort. Son intensité est réglée par une valeur appelée température. C'est pourquoi poser deux fois la même question est deux fois le même processus, mais pas la même réponse.
- Des sources inventées : le modèle produit ce qui continue de façon plausible, non ce qui est exact. Une référence inventée suit la même statistique qu'une vraie.
- La taille de la fenêtre compte : ce qui se trouve hors de la fenêtre de texte considérée n'existe pas pour le modèle.
- Le début détermine beaucoup : comme chaque sortie s'ajoute à la suite déjà produite, l'amorce déteint sur tout ce qui suit. C'est pourquoi la formulation d'une requête a un effet aussi fort.