Réponse courte
GPT-3 est un nouveau modèle de langage d’OpenAI de 175 milliards de paramètres, décrit dans un article mis en ligne le 28 mai 2020. Les chercheurs sont enthousiastes parce qu’il peut accomplir de nombreuses tâches pour lesquelles il n’a jamais été spécialement entraîné, à partir d’une simple consigne et de quelques exemples écrits dans son entrée.
Question de suivi Qu’est-ce que l’apprentissage à quelques exemples?
Jeudi dernier, une équipe de 31 chercheurs d’OpenAI a mis en ligne sur arXiv un long article intitulé Language Models are Few-Shot Learners (les modèles de langage apprennent à partir de quelques exemples). Il présente GPT-3, un modèle de langage de 175 milliards de paramètres. C’est environ dix fois la taille de tout modèle de langage antérieur du même type, et plus de cent fois celle de GPT-2, qu’OpenAI a présenté en février 2019 avec 1,5 milliard de paramètres.
La taille n’est pas la nouvelle principale. Ce qui fait jaser les chercheurs, c’est la façon dont on utilise GPT-3. Au lieu de réentraîner le modèle pour chaque tâche, les auteurs décrivent simplement une tâche en langage courant, ajoutent parfois une poignée d’exemples résolus, et laissent le modèle poursuivre. Sans aucun entraînement supplémentaire, il traduit, répond à des questions, remplit des mots manquants, remet des lettres en ordre et fait de l’arithmétique simple, souvent bien, et parfois presque aussi bien que des systèmes conçus pour une seule tâche.
Que fait réellement un modèle de langage?
Un modèle de langage est un programme qui a lu une très grande quantité de texte et appris à deviner le morceau de texte suivant. Un « paramètre » est l’un des nombres ajustables, à l’intérieur du modèle, que l’entraînement règle; plus il y a de paramètres, plus le modèle a de place pour stocker des régularités. GPT-3 a été entraîné sur environ 300 milliards de jetons (un jeton est un mot ou un morceau de mot), surtout tirés d’une copie filtrée de Common Crawl, une vaste collecte publique du Web, ainsi que de livres et de Wikipédia.
Comme il a seulement appris à poursuivre du texte, tout ce que vous lui demandez doit être formulé comme un texte à poursuivre. Cela semble limitant, mais cela se révèle très souple : une question appelle une réponse, une liste appelle l’élément suivant, et une régularité appelle d’autres exemples de la même régularité.
Pourquoi cet article se démarque-t-il?
Jusqu’ici, la recette habituelle en recherche sur le langage comportait deux étapes. D’abord, on préentraîne un grand modèle sur du texte général; ensuite, on lui applique un ajustement fin, c’est-à-dire qu’on l’entraîne de nouveau sur des milliers d’exemples étiquetés pour une tâche précise. L’ajustement fin fonctionne, mais chaque nouvelle tâche exige un nouvel ensemble de données.
Dans les expériences de l’article, GPT-3 saute complètement la deuxième étape. Les poids du modèle ne changent jamais pendant les tests. Quelques résultats montrent jusqu’où cela va :
| Test | Ce que GPT-3 a fait (à quelques exemples) |
|---|---|
| Addition à 2 chiffres | 100 % de réponses justes |
| Addition à 3 chiffres | 80,2 % de réponses justes |
| Repérer des nouvelles écrites par la machine | Les gens n’ont deviné juste qu’environ 52 % du temps, à peine mieux qu’à pile ou face |
C’est ce dernier résultat qui fait réfléchir bien des lecteurs. Quand de courts articles de nouvelles écrits par GPT-3 étaient mélangés à de vrais articles, des juges humains pouvaient difficilement les distinguer.
Que ne peut-il pas encore faire?
Les auteurs sont francs au sujet des points faibles. Les longs passages peuvent dériver, répéter des idées ou se contredire. Certains tests de lecture et de raisonnement restent difficiles. Le modèle coûte cher à faire fonctionner et, comme il a appris à partir du Web ouvert, il peut refléter les biais qu’on y trouve. L’article consacre une section entière aux mauvais usages possibles, comme la désinformation, le pourriel et l’hameçonnage.
OpenAI n’a pas publié le modèle lui-même. Ce qui est public, c’est l’article et un dépôt GitHub qui contient des échantillons non filtrés, les tests synthétiques d’arithmétique et de lettres mélangées, et des statistiques sur les langues d’entraînement. Le dépôt est accompagné d’un avertissement : les échantillons peuvent contenir des propos offensants, puisque les données d’entraînement viennent de partout sur le Web.
À essayer : ouvrez l’article sur arXiv et trouvez la figure 2.1, qui montre la même tâche de traduction de l’anglais vers le français en version zero-shot, one-shot et few-shot. Écrivez votre propre version de cette figure pour une autre tâche, comme transformer une phrase en question.
Qu’est-ce que l’apprentissage à quelques exemples?
L’apprentissage à quelques exemples (few-shot learning) consiste à montrer à un modèle un petit nombre d’exemples résolus dans son entrée et à le laisser dégager la régularité pour un nouveau cas. L’article nomme trois situations. En zero-shot, le modèle reçoit seulement une consigne. En one-shot, il reçoit une consigne et une démonstration. En few-shot, il reçoit plusieurs démonstrations, généralement entre 10 et 100, autant qu’il en tient dans sa fenêtre de 2 048 jetons.
Voici à quoi ressemble une entrée à quelques exemples pour une tâche de traduction, dans le même esprit que les exemples de l’article :
Traduis de l’anglais vers le français.
sea otter => loutre de mer
cheese => fromage
good morning => bonjour
thank you =>On n’a jamais expliqué au modèle les règles de ce format. Il voit trois paires, reconnaît la régularité et poursuit avec le français de la dernière expression. Aucun réentraînement n’a lieu; l’« apprentissage » se trouve entièrement dans le texte que vous fournissez. Dans l’article, les résultats s’améliorent généralement à mesure que le nombre d’exemples passe de zéro à un, puis à plusieurs, et l’écart grandit avec la taille du modèle, l’une des raisons pour lesquelles les auteurs pensent que l’échelle compte autant.
Pour une enseignante ou un enseignant, l’idée est familière. On donne rarement un manuel de règles aux élèves en premier; on montre deux ou trois problèmes résolus et on dit : « À toi, maintenant. » GPT-3 laisse penser qu’un modèle de langage assez grand peut répondre à la même approche, et beaucoup de chercheurs s’attendent à ce que cette façon de travailler avec les modèles se répande rapidement.
Sources
- Language Models are Few-Shot Learners — OpenAI (arXiv), 28 mai 2020
- openai/gpt-3 (GitHub repository) — OpenAI, 28 mai 2020
- GPT-3 — Wikipedia, 1 juin 2020