Histoire de l’IA

Comment entraîne-t-on un modèle de langage, du texte brut jusqu’aux réponses?

· Par Robert Scales · 5 min de lecture

Réponse courte

Un modèle de langage s’entraîne en deux grandes étapes. D’abord, il lit une immense collection de textes, découpés en petits morceaux appelés jetons, et apprend à deviner le jeton suivant, encore et encore; ensuite, il subit souvent un ajustement fin sur un ensemble d’exemples beaucoup plus petit, pour que ses prédictions deviennent des réponses utiles.

Tout grand modèle de langage, du GPT-3 d’OpenAI au modèle PaLM que Google a présenté cette semaine, commence comme un réseau de nombres fixés plus ou moins au hasard. Il ne sait rien. L’entraînement est le lent processus qui ajuste ces nombres, des milliards d’entre eux, jusqu’à ce que le réseau devienne très bon à un jeu simple : à partir d’un texte, deviner ce qui vient ensuite. Les réponses, les résumés et les traductions découlent tous de ce jeu.

Le chemin qui mène du texte brut à une réponse utile compte quelques étapes claires. Aucune n’a rien de magique, et les voir une à une aide beaucoup à comprendre à la fois ce que ces modèles savent faire et pourquoi ils se trompent encore.

Étape 1 : rassembler une montagne de texte

Le premier ingrédient est le texte, et en grande quantité. L’article sur GPT-3 décrit un mélange d’entraînement composé surtout d’une copie filtrée de Common Crawl, une archive publique de pages Web, ainsi que de collections de livres, de Wikipédia en anglais et d’autres textes du Web. Le modèle a vu environ 300 milliards de jetons pendant son entraînement. L’annonce de PaLM par Google décrit une recette semblable, mais plus diversifiée : des documents Web en anglais et dans d’autres langues, des livres, Wikipédia, des conversations et du code tiré de GitHub, avec environ un cinquième des données dans d’autres langues que l’anglais et environ 5 % de code.

Le filtrage compte. Les pages Web brutes sont pleines de pourriels, de menus et de textes passe-partout répétés; les équipes nettoient donc les sources et les pondèrent, en montrant souvent plus fréquemment au modèle les collections de meilleure qualité.

Étape 2 : découper le texte en jetons

Un modèle ne lit ni des lettres ni des mots entiers. Il lit des jetons, qui sont des mots courants ou des morceaux de mots. Un mot fréquent comme « the » forme habituellement un seul jeton, alors qu’un mot rare peut être coupé en deux ou trois morceaux. Chaque jeton reçoit un numéro d’identification; une phrase devient ainsi une liste de nombres avec laquelle le réseau peut travailler.

Étape 3 : jouer au jeu du jeton suivant, des milliards de fois

C’est alors que commence le véritable entraînement. On montre au modèle un passage de texte et on lui demande de prédire le jeton suivant. Sa prédiction est comparée au jeton qui venait réellement ensuite, et une procédure appelée descente de gradient ajuste les nombres internes, appelés paramètres, pour que le bon jeton devienne un peu plus probable la fois suivante. GPT-3 compte 175 milliards de paramètres; PaLM en compte 540 milliards et a été entraîné sur 6 144 puces TPU de Google.

Voici le jeu sur une phrase jouet. Chaque ligne est un exemple d’entraînement, et le modèle ne voit jamais que le texte de gauche :

Ce que le modèle voitCe qu’il doit prédire
Labouilloire
La bouilloireest
La bouilloire estchaude
La bouilloire est chaude,
La bouilloire est chaude,donc

Une seule phrase donne plusieurs leçons. Répétez cela sur des centaines de milliards de jetons, et le modèle assimile l’orthographe, la grammaire, les faits qui reviennent souvent, la forme d’une recette ou d’un article de nouvelles, et l’habitude de suivre des régularités. Personne n’étiquette rien de tout cela à la main : le texte lui-même fournit les bonnes réponses, et c’est pourquoi cette étape est dite autosupervisée.

Étape 4 : transformer un prédicteur de texte en assistant

Un modèle entraîné uniquement au jeu du jeton suivant est une puissante saisie semi-automatique, pas un assistant. OpenAI formule clairement le problème dans son annonce d’InstructGPT : GPT-3 a été entraîné à prédire du texte d’Internet, pas à faire ce que l’utilisateur demande; il peut donc s’éparpiller, inventer des faits ou produire du texte toxique. Posez-lui une question, et il peut y répondre, ou poursuivre avec une liste d’autres questions, parce que les deux sont des suites de texte plausibles.

La solution est une seconde ronde d’entraînement, beaucoup plus petite. Des gens rédigent de bons exemples de réponses et classent les tentatives du modèle, et le modèle est ajusté vers les réponses que les gens préfèrent. OpenAI indique que cette étape supplémentaire a utilisé moins de 2 % de la puissance de calcul et des données de l’entraînement initial, et pourtant les annotateurs ont préféré les réponses des modèles ajustés, même quand le modèle ajusté était beaucoup plus petit que GPT-3.

À essayer : dans le Playground d’OpenAI, donnez la même consigne, par exemple « Explique pourquoi le ciel est bleu à un enfant de dix ans », d’abord au modèle davinci d’origine, puis à text-davinci-002. Comparez : chacun répond-il à la demande ou se contente-t-il de poursuivre le texte?

Quelle est la différence entre le préentraînement et l’ajustement fin?

Le préentraînement (pre-training) est la grande première étape : le jeu du jeton suivant, joué sur une immense collection de textes en grande partie non étiquetés. Il coûte cher, exige des milliers de puces spécialisées et produit un modèle généraliste qui a absorbé une vaste image de la langue et du monde tel que ses données le décrivent. Seules quelques organisations peuvent se le permettre, et c’est pourquoi GPT-3 et PaLM viennent d’OpenAI et de Google.

L’ajustement fin (fine-tuning) part de ce modèle préentraîné et poursuit l’entraînement sur un ensemble d’exemples beaucoup plus petit, choisi avec soin et orienté vers un seul objectif : suivre des consignes, répondre aux questions de la clientèle, écrire dans le style maison ou trier des demandes de soutien. Comme le modèle connaît déjà la langue, un ensemble relativement petit de bons exemples peut modifier son comportement de façon marquée, pour une infime fraction du coût initial.

Une façon simple de se le représenter : le préentraînement ressemble à des années de lectures variées, et l’ajustement fin, au court apprentissage qui enseigne les attentes d’un emploi précis. Les travaux sur InstructGPT y ajoutent une variante, en guidant l’ajustement fin par les classements de personnes plutôt que par des exemples fixes, mais le principe reste le même. Les connaissances générales viennent du préentraînement; les manières, la concentration et le format viennent de l’ajustement fin.

Sources

  1. Language Models are Few-Shot Learners — OpenAI (arXiv), 28 mai 2020
  2. Pathways Language Model (PaLM): Scaling to 540 Billion Parameters for Breakthrough Performance — Google AI Blog (Google Research), 4 avril 2022
  3. Aligning Language Models to Follow Instructions — OpenAI, 27 janvier 2022

Recevez gratuitement le Guide de l’intelligence artificielle

Abonnez-vous à l’infolettre hebdomadaire et recevez le guide gratuit : ce qui a changé en IA cette semaine, une leçon, un prompt à essayer. Désabonnement en un clic.

Ce que nous faisons de votre adresse

Retour en haut

Affichage

Vos choix sont enregistrés dans ce navigateur seulement. Aucune donnée n’est transmise.

Taille du texte
100 %
Couleurs
Lecture
Autres réglages
Déclaration d’accessibilité