Grand modèle de langage
Type |
Type de modèle d'intelligence artificielle (d), modèle de langage |
---|---|
Nom court |
(en) LLM |
Aspect de |
Un grand modèle de langage[1], grand modèle linguistique[2], grand modèle de langue[1],[3], modèle de langage de grande taille[1] ou encore modèle massif de langage[4] (abrégé LLM[1] de l'anglais large language model) est un modèle de langage possédant un grand nombre de paramètres (généralement de l'ordre d'un milliard ou plus).
Ce sont des réseaux de neurones profonds entraînés sur de grandes quantités de texte non étiqueté utilisant l'apprentissage auto-supervisé ou l'apprentissage semi-supervisé[5]. Les LLM sont apparus vers 2018 et ont été utilisés pour la mise en œuvre d'agents conversationnels.
Ils excellent également dans un large éventail de tâches. Au lieu d'être entraînés pour une tâche spécifique (telle que l'analyse des sentiments, la reconnaissance d'entités nommées ou le raisonnement mathématique), ils sont entraînés à prédire une suite probable à une entrée donnée[6]. La qualité de leur sortie semble être en fonction de la quantité des ressources (taille des paramètres, puissance de calcul, données) et de la qualité des données qui leur sont fournies[7].
Les modèles de langage possédant un grand nombre de paramètres s'avèrent capables de capturer une grande partie de la syntaxe et de la sémantique du langage humain. Cela permet de retraduire une connaissance générale sur le monde conséquente, avec « mémorisation » d'une grande quantité de faits lors de l'entraînement.
Avant le succès des grands modèles de langage, l'attention des chercheurs en traitement automatique des langues était principalement focalisée sur l'apprentissage supervisé de modèles spécialisés pour des tâches spécifiques.
Propriétés
[modifier | modifier le code]Ensembles de données de pré-entraînement
[modifier | modifier le code]Les LLM sont pré-entraînés sur de grands ensembles de données textuelles comme Common Crawl[8], The Pile[9], MassiveText[10], Wikipedia ou GitHub. Ces ensembles de données contiennent jusqu'à 10 000 milliards de mots.
Le stock de données linguistiques de haute qualité se situe entre 4,6 et 17 milliards de mots, soit un ordre de grandeur similaire à celui des plus grands ensembles de données textuelles disponibles[11].
Lois d'échelle
[modifier | modifier le code]En général, on peut caractériser un LLM avec quatre paramètres : la taille du modèle, la taille du jeu de données d'apprentissage, le coût de l'apprentissage et la performance après apprentissage. On constate empiriquement que ces paramètres sont liées par des lois statistiques simples, appelées « lois d'échelle » (scaling laws).
Une loi de mise à l'échelle particulière (Chinchilla scaling) pour le LLM entraîné de manière autorégressive (c'est-à-dire avec prédiction du mot suivant étant donné un segment de texte) pour une époque, avec un calendrier de taux d'apprentissage log-log, stipule que[12]:où les variables sont :
- est le coût d'entraînement du modèle, en FLOPs ;
- est le nombre de paramètres du modèle ;
- est le nombre de jetons dans l'ensemble d'apprentissage ;
- est la perte de log-vraisemblance négative moyenne par jeton (nats /jeton), obtenue par le LLM entraîné sur l'ensemble de données de test ;
et les paramètres statistiques sont :
- , ce qui signifie qu'il en coûte 6 FLOP par paramètre pour s'entraîner sur un jeton[13] ;
- .
Capacités émergentes
[modifier | modifier le code]Généralement les performances de grands modèles de langage sur diverses tâches peuvent être extrapolées sur la base des performances de modèles plus petits similaires. Cependant, les grands modèles subissent parfois un « déphasage discontinu » où le modèle acquiert soudainement des capacités substantielles non vues dans les modèles plus petits. Celles-ci sont connues sous le nom de « capacités émergentes » et ont fait l'objet d'études approfondies. Les chercheurs notent que de telles capacités « ne peuvent pas être prédites simplement en extrapolant les performances de modèles plus petits »[14]. Ces capacités sont découvertes plutôt que programmées ou conçues, dans certains cas seulement après le déploiement public du LLM[7]. Des centaines de capacités émergentes ont été décrites. Les exemples incluent le raisonnement arithmétique, la passation d'examens de niveau universitaire, l'identification du sens voulu d'un mot[14], le décodage de l'alphabet phonétique international, le fait de pouvoir comprendre des mots dont l'ordre des lettres est modifié, l'identification du contenu offensant dans les paragraphes de l'hinglish (un mélange d'hindi et d'anglais) et la génération d'un équivalent anglais aux proverbes kiswahili[15].
Hallucination
[modifier | modifier le code]Les LLM génèrent parfois des affirmations fausses qui ne semblent pas être justifiées par leurs données d'entraînement, on parle alors d'« hallucination »[16].
Biais et limites
[modifier | modifier le code]Les biais sont une préoccupation car tout modèle complexe créé par des humains peut refléter les biais des équipes qui préparent et conçoivent les LLM, et des scientifiques des données qui entraînent et mettent en œuvre les modèles[17].
Biais linguistique
[modifier | modifier le code]Le biais linguistique fait référence à un type de biais d'échantillonnage statistique lié au langage d'une requête qui conduit à « un écart systématique dans les informations d'échantillonnage qui l'empêche de représenter avec précision la véritable couverture des sujets et des points de vue disponibles dans leur référentiel »[18]. Luo et coll.[18] montrent que les grands modèles linguistiques actuels, car ils sont principalement formés sur des données en langue anglaise, présentent souvent les points de vue anglo-américains comme la vérité, tout en minimisant systématiquement les perspectives non anglaises comme étant non pertinentes, fausses ou bruitées. Interrogé sur des idéologies politiques telles que « Qu'est-ce que le libéralisme ? », ChatGPT, tel qu'il a été formé sur des données centrées sur l'anglais, décrit le libéralisme du point de vue anglo-américain, en mettant l'accent sur les aspects des droits de l'homme et de l'égalité, tandis que des aspects tout aussi valables comme « s'oppose à l'État », l'intervention dans la vie personnelle et économique » du point de vue vietnamien dominant et la « limitation du pouvoir gouvernemental » du point de vue chinois dominant sont absents[18].
Préjugés sexistes
[modifier | modifier le code]Les préjugés sexistes font référence à la tendance de ces modèles à produire des résultats injustement préjugés en faveur d’un sexe plutôt qu’un autre. Ce biais provient généralement des données sur lesquelles ces modèles sont formés. Par exemple, les grands modèles linguistiques attribuent souvent des rôles et des caractéristiques basés sur les normes de genre traditionnelles ; elle pourrait associer principalement les infirmières ou les secrétaires aux femmes et les ingénieurs ou les PDG aux hommes[19].
Stéréotypes
[modifier | modifier le code]Au-delà du genre et de la race, ces modèles peuvent renforcer un large éventail de stéréotypes, notamment ceux fondés sur l’âge, la nationalité, la religion ou la profession. Cela peut conduire à des résultats qui généralisent ou caricaturent injustement des groupes de personnes, parfois de manière préjudiciable ou désobligeante[20].
Biais politique
[modifier | modifier le code]Les préjugés politiques font référence à la tendance des algorithmes à favoriser systématiquement certains points de vue politiques, idéologies ou résultats par rapport à d’autres. Les modèles linguistiques peuvent également présenter des préjugés politiques. Étant donné que les données de formation incluent un large éventail d'opinions et de couvertures politiques, les modèles peuvent générer des réponses qui penchent vers des idéologies ou des points de vue politiques particuliers, en fonction de la prévalence de ces points de vue dans les données[21].
Mise en œuvre
[modifier | modifier le code]- En amont (dans la construction du LLM), des biais sont engrammés dans les données ; ils sont par exemple liés à la vision du monde des opérateurs (et donc à leur époque), à la langue et aux cultures des programmeurs[17]. Ils sont d'autre part liés aux biais présents dans les bases de données d'entrainement de l'IA (stéréotypes discriminatoires, inexactitudes, incohérences…)[22] ; les plus grandes bases de données qui ont entrainé ChatGPT ont été la base des brevets américaine et Wikipédia en anglais, qui ne reflètent pas toute la richesse et la diversité du monde). Des LLM entraînés par exemple avec un corpus de textes de discussions sur Twitter associeront de fortes probabilités à des énoncés agressifs, racistes et d'exclusion, biaisés, toxiques ou sensibles si de tels langages sont présents dans leurs données d'entraînement[23].
- En aval, le prompt peut lui même introduire des biais qui orienteront la réponse de l'IA utilisant un modèle LLM. Les LLM peuvent apprendre, et ensuite plus ou moins perpétuer voire amplifier des biais sociaux délétères[24].
Pour limiter ces biais, il est possible de régulièrement mettre à jour la qualité et la taille des bases de connaissances des LLM. Des processus dits « d'IA responsable » peuvent corriger une grande partie des biais. Ils le font via des techniques et des outils ad hoc, c'est-à-dire développés (et en cours d'amélioration) pour « garantir que les systèmes d'IA peuvent respecter ces définitions, en traitant les données au préalable, en modifiant les décisions du système par la suite, ou en intégrant les définitions d'équité dans le processus de formation lui-même ». Ces techniques s'appuient notamment sur des audits par des tiers indépendants, des études scientifiques multidisciplinaires sur les biais, et des « équipes rouges » internes chargées de tester le système utilisant le LLM[22].
Un autre processus responsable est de diversifier la communauté de l'IA (pour collaborativement mieux anticiper, examiner et repérer les biais, en faisant participer les communautés discriminées et affectées par ces biais)[22]. Il est aussi nécessaire, lors des phases d'apprentissage du LLM, de diversifier les sources de données ; et dans le même temps d'accorder plus de poids aux données et conversations basées sur des faits et/ou basés sur des preuves (ex. : médecine fondée sur les faits) et sur la science (par rapport aux conversations basées sur des opinions), grâce à l'exécution d'algorithmes régulièrement contrôlés par des humains, grâce à des analyses comparées des résultats, et à la mobilisation de techniques d'explicabilité des résultats[22]. Dans certains cas des données synthétiques conçues pour être aussi peu biaisées que possibles peuvent être utilisées.
Architecture
[modifier | modifier le code]Un modèle de langage reçoit typiquement en entrée des données séquentielles de longueur variable. Pendant longtemps, l'architecture utilisée préférentiellement pour ce genre de données était celle dite de réseaux de neurones récurrents. Cette architecture présentait comme inconvénient majeur de mal se prêter à la parallélisation des calculs nécessaires à l'entrainement.
En 2017, un article très influent[25] suggéra qu'une architecture non-récurrente, le transformeur, basée sur un mécanisme dit d'attention, peut avec succès traiter des données séquentielles tout en étant parallélisable lors de l'entrainement.
C'est l'avènement de cette architecture, et surtout les gains en performance qu'elle procure, qui ont permis aux chercheurs d'augmenter considérablement le nombre de paramètres de leurs modèles, d'où le qualificatif « grand » les concernant. La plupart des grands modèles de langage utilisent donc cette architecture, même si la recherche se poursuit pour trouver des architectures encore plus performantes[26],[27],[28],[29].
Analyse lexicale
[modifier | modifier le code]Les LLM sont des fonctions mathématiques dont l'entrée et la sortie sont des listes de nombres. Pour que ceux-ci fonctionnent avec des mots une conversion est nécessaire.
Cette conversion est ce qu'on appelle l'analyse lexicale. L'analyseur lexical est une fonction bijective qui établit une correspondance entre des textes et des listes d'entiers. Il est généralement d'abord adapté à l'ensemble de données d'entraînement complet, puis gelé, avant que le modèle de langage ne soit entraîné. Un choix courant est le codage par paires d'octets.
Une autre fonction des analyseurs lexicaux est la compression de texte, qui épargne du temps de calcul. Des mots ou expressions courants tels que « où est » peuvent être encodés dans une seule unité lexicale (ou jeton), au lieu d'être encodés dans 7 caractères. La série OpenAI GPT utilise un analyseur lexical où une unité lexicale correspond à environ 4 caractères, soit environ 0,75 mots dans un texte anglais courant[30]. Un texte anglais peu courant est moins prévisible, donc moins compressible, nécessitant ainsi plus de jetons pour être encodé.
Un analyseur lexical convertit une suite de caractères en un nombre entier dans la plage , où est appelé la taille de vocabulaire.
Certains sont capables de gérer des textes arbitraires en opérant généralement directement sur Unicode, mais d'autres non. Lorsqu'il rencontre du texte non encodable, un analyseur lexical génère une unité lexicale spéciale (par exemple 0) qui représente un « texte inconnu ». Ceci est souvent écrit comme [UNK], comme dans l'article du modèle BERT.
Une autre unité lexicale spéciale couramment utilisée est [PAD] (souvent 1), pour « padding ». Ceci est utilisé car les LLM sont généralement utilisés sur différents lots de texte à la fois, et ces textes ne sont pas codés à la même longueur. Étant donné que les LLM exigent généralement que l'entrée soit un tableau de taille fixe, les textes les plus courts doivent être complétés.
Sortie
[modifier | modifier le code]La sortie d'un LLM est un vecteur où est la taille du lexique produit lors de l'analyse lexicale. Le vecteur est ensuite passé par une fonction softmax pour obtenir ;
- le vecteur est généralement appelé le vecteur logit non normalisé ;
- le vecteur est appelé le vecteur de probabilité.
Puisque le vecteur a entrées, toutes non négatives, et dont la somme est égale à 1, on peut l'interpréter comme une distribution de probabilité sur le vocabulaire du LLM (indexé par ).
Pré-entraînement
[modifier | modifier le code]La plupart des LLM sont entraînés par pré-entraînement génératif, c'est-à-dire qu'étant donné un ensemble de données d'entraînement de jetons de texte, le modèle prédit les jetons dans l'ensemble de données. Il existe deux styles généraux de pré-entrainement pour la génération[31] :
- autorégressif (style GPT, « prédire le mot suivant ») : étant donné un segment de texte comme « J'aime manger », le modèle prédit les jetons suivants, comme « crème glacée ».
- masqué (« style BERT », « test de cloze ») : étant donné un segment de texte comme « J'aime [MASQUE] [MASQUE] glacée », le modèle prédit les jetons masqués, comme « manger de la crème ».
Les LLM peuvent être entraînés sur des tâches auxiliaires qui testent leur compréhension de la distribution des données, telles que la prédiction de la phrase suivante (NSP), dans laquelle des paires de phrases sont présentées et le modèle doit prédire si elles apparaissent consécutivement dans le corpus d'entraînement.
Habituellement, les LLM sont entraînés pour minimiser une fonction de perte spécifique : la log-vraisemblance négative moyenne par jeton (également appelée perte d'entropie croisée).[réf. nécessaire] Par exemple. si un modèle autorégressif, étant donné « j'aime manger », prédit une distribution de probabilité alors la perte de vraisemblance logarithmique négative sur ce jeton est .
Pendant l'entraînement, la perte de régularisation est également utilisée pour stabiliser l'entraînement. Cependant, la perte de régularisation n'est généralement pas utilisée pendant les tests et l'évaluation. Il y a aussi beaucoup plus de critères d'évaluation que la simple vraisemblance logarithmique négative. Voir la section ci-dessous pour plus de détails.
Taille de l'ensemble de données
[modifier | modifier le code]Les premiers LLM ont été entraînés sur des corpus contenant de l'ordre de milliards de mots.
GPT-1, le premier modèle de la série de transformeurs génératifs pré-entraînés d'OpenAI, a été entrainé en 2018 sur BookCorpus, composé de 985 millions de mots[32]. La même année, BERT a été entraîné sur une combinaison de BookCorpus et de Wikipedia anglais, totalisant 3,3 milliards de mots. Depuis lors, les corpus d'entraînement pour les LLM ont augmenté de plusieurs ordres de grandeur, atteignant jusqu'à des billions de jetons.
Coût
[modifier | modifier le code]Les LLM sont coûteux à entraîner en termes de calcul. Une étude de 2020 a estimé le coût de l'entraînement d'un modèle de 1,5 milliard de paramètres (2 ordres de grandeur inférieurs à l'état de l'art à l'époque) à 1,6 million de dollars. Les progrès logiciels et matériels ont considérablement réduit les coûts, avec un article de 2023 faisant état d'un coût de 72 300 heures A100-GPU pour entraîner un modèle de 12 milliards de paramètres. La taille des modèles a cependant aussi augmenté[réf. souhaitée].
Pour le LLM basé sur l'architecture transformer, il en coûte 6 FLOP par paramètre pour s'entraîner sur un jeton. Ce coût d'entraînement est beaucoup plus élevé que le coût d'inférence, qui est de 1 à 2 FLOP par paramètre pour inférer sur un jeton[réf. nécessaire].
Réglage après entraînement
[modifier | modifier le code]Le réglage fin (fine-tuning), ou ajustement, est la pratique consistant à modifier un modèle de langage pré-entraîné existant en l'entraînant (souvent de manière supervisée) sur une tâche spécifique (par exemple, l'analyse des sentiments, la reconnaissance d'entités nommées ou le marquage d'une partie du discours). C'est une forme d'apprentissage par transfert qui permet de spécialiser le LLM.
Le réglage fin peut se faire de différentes façons, notamment[33] :
- En re-entraînant tous les paramètres du modèle, mais sans trop les modifier pour ne pas écraser les connaissances acquises lors du pré-entraînement. Cette méthode est efficace mais nécessite relativement beaucoup de temps de calcul.
- En entraînant seulement une partie des paramètres (souvent une partie des couches). Les autres paramètres sont dits « gelés ».
- En ajoutant une ou plusieurs couches à la fin du modèles, avec de nouveaux paramètres.
- En ajoutant un « adaptateur », contenant ses propres paramètres. Ces méthodes (LoRA notamment) ajoutent souvent peu de paramètres à entraîner, nécessitant ainsi moins de ressources informatiques.
- En ajoutant automatiquement une série de tokens au début du prompt, optimisés automatiquement pour fournir le bon résultat (prompt tuning). Dans ce cas, le modèle lui-même est entièrement gelé et aucun de ses paramètres n'est entraîné, seul le prompt est ajusté. Lors de l'inférence, ces tokens seront également ajoutés automatiquement au début du prompt sans que l'utilisateur ne les voit. De façon similaire, cela peut aussi se faire en injectant des vecteurs plutôt que des tokens (prefix tuning).
Réglage par instructions
[modifier | modifier le code]Le réglage par instructions (instruction fine-tuning en anglais) est une forme d'apprentissage supervisé visant à ce que le LLM réponde d'une certaine façon, par exemple en adoptant le rôle d'assistant. Étant donné un prompt en entrée, un modèle de langage pré-entraîné générera une complétion qui correspond à la distribution du texte sur laquelle il a été entraîné. En réponse au prompt « Écrire un essai sur les principaux thèmes de Hamlet. », un modèle de langage pré-entraîné pourrait produire : « Une pénalité de retard de 10 % par jour sera appliquée aux soumissions reçues après le 17 mars ». Dans le réglage par instructions, le modèle de langage est entraîné sur de nombreux exemples de tâches formulées sous forme d'instructions en langage naturel, ainsi que des réponses appropriées. Les instructions et les réponses correspondantes attendues peuvent être soit écrites par des humains, soit générées automatiquement, par exemple avec la méthode self-instruct[34].
Apprentissage par renforcement
[modifier | modifier le code]Les grands modèles de langage suivent souvent une phase supplémentaire de réglage fin exploitant l'apprentissage par renforcement, afin de les rendre utiles et inoffensifs et de réduire les hallucinations.
Une méthode populaire est celle de l'apprentissage par renforcement à partir de rétroaction humaine (reinforcement learning from human feedback, ou RLHF en anglais). Avec cette méthode, différentes réponses sont d'abord générées par un modèle d'IA. Ensuite, des humains annotent les réponses qui leur semblent être les meilleures. Avec ces données sur quelles réponses sont plus ou moins bonnes, un « modèle de préférences » est entraîné à prédire quelles réponses satisferaient les annotateurs humain. Les réponses fausses, agressives ou inutiles sont ainsi le plus souvent évaluées comme étant mauvaises. D'autres modèles peuvent ensuite être entraînés par apprentissage par renforcement à satisfaire ce modèle de préférences[35].
La méthode de l'IA constitutionnelle, conçue par l'entreprise Anthropic, comporte une étape d'apprentissage par renforcement (en plus de celle de réglage par instructions). Le but est là aussi de générer un modèle de préférences permettant ensuite d'entraîner d'autres modèles. La différence est que les données servant à entraîner ce modèle de préférences ne sont pas annotées manuellement par des humains. Ces données sont générées automatiquement par une IA en évaluant quelles réponses satisfont le mieux une constitution donnée, qui est une liste de principes de conduite[36].
Optimisation de requête
[modifier | modifier le code]Entre 2018 et 2020, la méthode standard pour exploiter un LLM pour une tâche spécifique de traitement automatique des langues consistait à affiner le modèle avec un entraînement supplémentaire spécifique à la tâche. Il a ensuite été découvert que des LLM plus puissants tels que GPT-3 peuvent résoudre des tâches sans entraînement supplémentaire via des techniques dans lesquelles le problème à résoudre est présenté au modèle sous forme de requête (synonyme de « prompt » ou « invite »[37]), éventuellement avec quelques exemples textuels de problèmes similaires avec les réponses correspondantes attendues afin de guider le modèle[14].
L'approche qui consiste à fournir d'abord quelques exemples de réponses valides pour des requêtes similaires est appelée « requête en quelques coups » (few-shot prompt). Par exemple, une tâche d'analyse des sentiments consistant à déterminer le sentiment d'une critique de film pourrait être formulée avec la requête[14] :
Critique : Ce film est nul. Sentiment : négatif Critique : Ce film est fantastique ! Sentiment :
Si le modèle affiche « positif », alors il a correctement résolu la tâche. Dans la requête à partir de zéro (zero-shot prompt), aucun exemple n'est fourni. Un exemple de requête à partir de zéro pour la même tâche d'analyse des sentiments serait
Le sentiment associé à la critique de film "Ce film est fantastique !" est
Il a été démontré que les performances en quelques coups de LLM permettent d'obtenir des résultats compétitifs sur des tâches de traitement automatique des langues, dépassant parfois les approches de réglage fin. Par exemple en traduction, en réponse aux questions, en complétion de texte ou en programmation[source insuffisante][38]. La création et l'optimisation de requêtes concerne l'ingénierie de prompt, aussi appelée « rédactique[39] ».
Une autre méthode parfois utilisée est celle de la chaîne de pensée. Par exemple en ajoutant dans la requête « raisonnons étape par étape ». Cette méthode peut s'avérer efficace pour les problèmes nécessitant plusieurs étapes de raisonnement, tels que les problèmes d'arithmétique[40].
Évaluation
[modifier | modifier le code]Perplexité
[modifier | modifier le code]La mesure la plus couramment utilisée de la performance d'un modèle de langage est sa perplexité sur un corpus de texte donné. La perplexité est une mesure de la capacité d'un modèle à prédire le contenu d'un ensemble de données ; plus la probabilité que le modèle attribue à l'ensemble de données est élevée, plus la perplexité est faible. Mathématiquement, la perplexité est définie comme l'exponentielle de la moyenne de la log-vraisemblance négative par jeton :
ici est le nombre de jetons dans le corpus de texte, et le « contexte du jeton i » dépend du type spécifique de LLM utilisé. Si le LLM est autorégressif, alors le « contexte pour le jeton i » est le segment de texte apparaissant avant le jeton i. Si le LLM est masqué, alors « contexte pour le jeton i » est le segment de texte entourant le jeton i.
Étant donné que les modèles de langage peuvent suradapter à leurs données d'apprentissage, les modèles sont généralement évalués en fonction de leur perplexité sur un ensemble de tests de données invisibles. Cela présente des défis particuliers pour l'évaluation de grands modèles de langage. Au fur et à mesure qu'ils sont entraînés sur des corpus de texte de plus en plus volumineux largement extraits du Web, il devient de plus en plus probable que les données d'entraînement des modèles incluent par inadvertance des parties d'un ensemble de tests donné.
Cette notion est à l'origine du nom de la startup d'IA Perplexity AI, créée en août 2022[41].
Ensembles de données et points de repère spécifiques aux tâches
[modifier | modifier le code]Un grand nombre d'ensembles de données de test de validation ou de performance ont également été développés pour évaluer les capacités des modèles de langage sur des tâches en aval plus spécifiques. Les tests peuvent être conçus pour évaluer une variété de capacités, y compris les connaissances générales, le raisonnement de bon sens et la résolution de problèmes mathématiques.
Une grande catégorie d'ensembles de données d'évaluation est les ensembles de données de questions-réponses, consistant en des paires de questions et de réponses correctes, par exemple, (« Les Sharks de San Jose ont-ils remporté la Coupe Stanley? » , « Non »). Une tâche de réponse aux questions est considérée comme un « livre ouvert » si l'invite du modèle comprend un texte à partir duquel la réponse attendue peut être dérivée (par exemple, la question précédente pourrait être jointe à un texte qui comprend la phrase « Les Sharks ont atteint la coupe Stanley finales une fois, perdant contre les Penguins de Pittsburgh en 2016. »). Sinon, la tâche est considérée comme « livre fermé », et le modèle doit s'appuyer sur les connaissances retenues pendant l'entrainement. Voici quelques exemples d'ensembles de données de réponse aux questions couramment utilisés : TruthfulQA, Web Questions, TriviaQA et SQuAD.
Les ensembles de données d'évaluation peuvent également prendre la forme d'une complétion de texte, le modèle sélectionnant le mot ou la phrase la plus probable pour compléter une invite, par exemple : « Alice était amie avec Bob. Alice est allée rendre visite à son amie, ____ ».
Certains repères composites ont également été développés, qui combinent une diversité d'ensembles de données et de tâches d'évaluation différents. Les exemples incluent GLUE, SuperGLUE, MMLU, BIG-bench et HELM[42].
Auparavant, il était courant de rapporter les résultats sur une partie non conservée d'un ensemble de données d'évaluation après avoir effectué un réglage fin supervisé sur le reste. Il est maintenant plus courant d'évaluer un modèle pré-formé directement par des techniques d'incitation, bien que les chercheurs varient dans les détails de la façon dont ils formulent des invites pour des tâches particulières, en particulier en ce qui concerne le nombre d'exemples de tâches résolues qui sont associés à l'invite.
Évaluations construites de manière contradictoire
[modifier | modifier le code]En raison du rythme rapide d'amélioration des grands modèles de langage, les repères d'évaluation ont souffert de courtes durées de vie, les modèles de pointe « saturant » rapidement les repères existants, dépassant les performances des annotateurs humains, conduisant à des efforts pour remplacer ou augmenter le repère avec tâches plus exigeantes.
Certains ensembles de données ont été construits de manière contradictoire, en se concentrant sur des problèmes particuliers sur lesquels les modèles de langage existants semblent avoir des performances inhabituellement médiocres par rapport aux humains. Un exemple est l'ensemble de données TruthfulQA, un ensemble de données de questions-réponses composé de 817 questions auxquelles les modèles de langage sont susceptibles de répondre de manière incorrecte en imitant les faussetés auxquelles ils ont été exposés à plusieurs reprises pendant l'entraînement. Par exemple, un LLM peut répondre « Non » à la question « Pouvez-vous apprendre de nouveaux tours à un vieux chien ? » en raison de son exposition à l'expression anglaise, vous ne pouvez pas apprendre de nouveaux tours à un vieux chien, même si ce n'est pas littéralement vrai.
Un autre exemple d'ensemble de données d'évaluation contradictoire est Swag et son successeur, HellaSwag, des collections de problèmes dans lesquels l'une des multiples options doit être sélectionnée pour compléter un passage de texte. Les complétions incorrectes ont été générées par échantillonnage à partir d'un modèle de langage et filtrage avec un ensemble de classificateurs. Les problèmes qui en résultent sont insignifiants pour les humains, mais au moment où les ensembles de données ont été créés, les modèles de langage de pointe étaient peu précis. Par exemple:
Nous voyons un panneau indiquant un centre de remise en forme. Nous voyons ensuite un homme parler à la caméra et assis et allongé sur un ballon d'exercice. L'homme...
a) montre comment augmenter l'efficacité de l'exercice en faisant monter et descendre des balles.
b) bouge tous ses bras et ses jambes et développe beaucoup de muscles.
c) joue ensuite la balle et nous assistons à une démonstration de graphisme et de taille de haie.
d) effectue des redressements assis tout en étant sur le ballon et en parlant.
BERT sélectionne b) comme l'achèvement le plus probable, bien que la bonne réponse soit d).
Liste des grands modèles de langage
[modifier | modifier le code]Nom | Date de sortie[note 1] | Créé par | Taille[note 2] | Taille des données | Licence[note 3] | Notes |
---|---|---|---|---|---|---|
BERT | 340 millions | 3.3 milliards de mots | Apache 2.0[43] | Un modèle linguistique précoce et influent, mais uniquement codant et donc non conçu pour être guidé ou génératif[44]. | ||
XLNet | ~340 millions[45] | 33 milliards de mots | Une alternative au BERT ; conçu comme un encodeur uniquement[46],[47] | |||
GPT-2 | OpenAI | 1.5 milliard | 40GB[48] (~10 milliards jetons)[49] | MIT[50] | modèle polyvalent basé sur l'architecture transformeurs | |
GPT-3 | OpenAI | 175 milliards | 499 milliards de jetons[49] | public web API | Une variante affinée de GPT-3, appelée GPT-3.5, a été mise à la disposition du public par le biais d'une interface web appelée ChatGPT en 2022. | |
GPT-Neo | EleutherAI | 2.7 milliards[51] | 825 GiB | MIT[52] | Le premier d'une série d'alternatives GPT-3 gratuites publiées par EleutherAI. GPT-Neo a surpassé un modèle GPT-3 de taille équivalente sur certains bancs d'essai, mais s'est avéré nettement moins performant que le plus grand GPT-3. | |
GPT-J | EleutherAI | 6 milliards[53] | 825 GiB[54] | Apache 2.0 | Modèle linguistique de type GPT-3 | |
Megatron-Turing NLG | [55] | Microsoft et Nvidia | 530 milliards | 338.6 milliards de jetons | Restricted web access | Architecture standard mais entraînée sur une grappe de supercalculateurs. |
Ernie 3.0 Titan | Baidu | 260 milliards[56] | 4 Tb | Propriétaire | LLM en langue chinoise. Ernie Bot est basé sur ce modèle. | |
Claude[57] | Anthropic | 52 milliards | 400 milliards de jetons[58] | Closed beta | Ajusté pour un comportement souhaitable dans les conversations. | |
Claude 3 Opus | Mars 2024 | Anthropic | 137 milliards[59] | 200000 jetons[60] | Propriétaire | Modèle puissant pour les tâches complexes |
GLaM | 1.2 trillion | 1.6 trillion de jetons | Propriétaire | Modèle de mélange d'experts peu dense, ce qui rend l'entraînement plus coûteuse mais l'inférence moins coûteuse que pour le modèle GPT-3. | ||
Gopher | DeepMind | 280 milliards[61] | 300 milliards de jetons[62] | Propriétaire | ||
LaMDA | 137 milliards | 1.56T mots, 168 milliards de jetons[62] | Propriétaire | Spécialisé dans la génération de réponses dans les conversations. Utilisé dans le chatbot Google Bard. | ||
GPT-NeoX | EleutherAI | 20 milliards[63] | 825 GiB[54] | Apache 2.0 | basé sur l'architecture Megatron | |
Chinchilla | DeepMind | 70 milliards | 1.4 trillion de jetons | Propriétaire | Modèle à paramètres réduits entraîné sur un plus grand nombre de données. Utilisé dans le robot Sparrow. | |
PaLM | 540 milliards | 768 milliards jetons | Propriétaire | visant à atteindre les limites pratiques de la maquette | ||
OPT | Meta | 175 milliards[64] | 180 milliards jetons | Non-commercial research[note 4] | Architecture GPT-3 avec quelques adaptations de Megatron | |
YaLM 100B | Yandex | 100 milliards | 1.7TB[65] | Apache 2.0 | Modèle anglais-russe basé sur Megatron-LM de Microsoft. | |
Minerva | 540 milliards[66] | 38.5B jetons[note 5] | Propriétaire | LLM entraîné à la résolution de "questions mathématiques et scientifiques en utilisant un raisonnement étape par étape"[66]. Minerva est basé sur le modèle PaLM, entraîné sur des données mathématiques et scientifiques. | ||
BLOOM | Programme scientifique dirigé par Hugging Face | 175 milliards | 350 milliards de jetons (1.6TB)[67] | Responsible AI | Essentiellement GPT-3 mais entraîné sur un corpus multilingue (30 % d'anglais à l'exclusion des langages de programmation). | |
Galactica | Meta | 120 milliards | 106 milliards de jetons | CC-BY-NC-4.0 | Entrainement sur les textes et modalités scientifiques. | |
AlexaTM | Amazon | 20 milliards[68] | 1.3 trillion | public web API[69] | architecture bidirectionnelle séquence-séquence | |
LLaMA | Meta | 65 milliards | 1.4 trillion | Non-commercial research[note 6] | Entraîné sur un grand corpus de 20 langues afin d'obtenir de meilleures performances avec moins de paramètres. Des chercheurs de l'université de Stanford ont entraîné un modèle affiné basé sur les poids LLaMA, appelé Alpaca[70]. | |
GPT-4 | OpenAI | nombre exact tenu secret, 1 trillion supputé[note 7] | public web API | Disponible pour les utilisateurs de ChatGPT Plus et utilisé dans plusieurs produits. | ||
Cerebras-GPT | Cerebras | 13 milliards[72] | Apache 2.0 | Entraîné avec la formule Chinchilla. | ||
Falcon | Technology Innovation Institute | 40 milliards[73] | 1 trillion de jetons (1TB)[73] | Propriétaire | Le modèle n'utiliserait que 75 % du calcul d'entraînement de GPT-3, 40 % de celui de Chinchilla et 80 % de celui de PaLM-62B. | |
BloombergGPT | Bloomberg L.P. | 50 milliards | 363 milliards de jetons[note 8][74] | Propriétaire | LLM entraîné sur des données financières provenant de sources propriétaires, qui "surpasse les modèles existants sur les tâches financières par des marges significatives sans sacrifier la performance sur les repères LLM généraux". | |
PanGu-Σ | Huawei | 1.085 trillion | 329 milliards de jetons[75] | Propriétaire | ||
OpenAssistant[76] | LAION | 17 milliards | 1.5 trillion de jetons | Apache 2.0 | Entrainement sur les données ouvertes issues d'une production participative | |
Lyra-fr[77] | LightOn | 10 milliards | 150 milliards de jetons | public web API | LLM entrainé a partir de données majoritairement françaises. | |
Orion-fr-v2 | LightOn | 1.5 milliard | 150 milliards de jetons | public web API | LLM entrainé a partir de données majoritairement françaises. | |
Orion-fr-v1/PAGnol[78] | LightOn | 1.5 milliard | 150 millions de jetons | public web API | LLM entrainé a partir de données majoritairement françaises. |
Notes et références
[modifier | modifier le code]Notes
[modifier | modifier le code]- Il s'agit de la date à laquelle la documentation décrivant l'architecture du modèle a été publiée pour la première fois.
- Dans de nombreux cas, les chercheurs publient ou rapportent plusieurs versions d'un modèle ayant des tailles différentes. Dans ce cas, la taille du modèle le plus grand est indiquée ici.
- Il s'agit de la licence des poids du modèle pré-entraîné. Dans la plupart des cas, le code d'entraînement lui-même est libre ou peut être facilement reproduit..
- Les modèles les plus petits, y compris le 66B, sont publiquement disponibles, par contre le modèle 175B est disponible sur demande.[trad 1]
- à partir de pages web filtrées pour leur contenu mathématique et d'articles soumis au serveur de prépublication arXiv
- Facebook's license and distribution scheme restricted access to approved researchers, but the model weights were leaked and became widely available.
- Comme expliqué dans le rapport technique : « Compte tenu à la fois du cadre compétitif et des implications de grands modèles tels que GPT-4 en matière de sécurité, ce rapport ne contient aucun détail supplémentaire concernant l'architecture (y compris la taille du modèle), le matériel, le calcul d'entrainement, l'élaboration du corpus de données, la méthode d'entrainement... »[trad 2][71] Nombre approximatif dans le graphique comparant les espaces de rangement, selon le même rapport.
- basé sur les sources de données de Bloomberg, plus 345 milliards de jetons provenant d'ensembles de données à usage général.
Traductions
[modifier | modifier le code]- (en) « The smaller models including 66B are publicly available, while the 175B model is available on request. »
- (en) « Given both the competitive landscape and the safety implications of large-scale models like GPT-4, this report contains no further details about the architecture (including model size), hardware, training compute, dataset construction, training method ... »
Références
[modifier | modifier le code]- « grand modèle de langage », Grand Dictionnaire terminologique, Office québécois de la langue française (consulté le ).
- (fr en) Accuracy of Information and References Using ChatGPT-3 for Retrieval of Clinical Radiological Information, journal de l'association canadienne de radiologistes.
- Christian Wolf, « Histoire des réseaux de neurones et du deep learning en traitement des signaux et des images », sur hal.science, (consulté le ).
- Ornes (2023, traduction française).
- (en-US) Shraddha Goled, « Self-Supervised Learning Vs Semi-Supervised Learning: How They Differ », sur Analytics India Magazine, (consulté le )
- (en) Jason Wei, Yi Tay, Rishi Bommasani et Colin Raffel, « Emergent Abilities of Large Language Models », Transactions on Machine Learning Research, (ISSN 2835-8856, lire en ligne, consulté le )
- (en) Samuel R. Bowman, « Eight Things to Know about Large Language Models » [PDF], Proceedings of the International Conference on Machine Learning 2023 (conférence), .
- (en) common crawl, site officiel]
- (en) the Pile, site officiel
- (en) « Papers with Code - MassiveText Dataset », paperswithcode.com (consulté le ).
- Villalobos, Sevilla, Heim et Besiroglu, « Will we run out of data? An analysis of the limits of scaling datasets in Machine Learning », arXiv:2211.04325 [cs], (lire en ligne).
- Jordan Hoffmann, Sebastian Borgeaud, Arthur Mensch et Elena Buchatskaya, « Training Compute-Optimal Large Language Models », arXiv:2203.15556 [cs], (lire en ligne).
- Notez que le coût d'entraînement est beaucoup plus élevé que le coût d'inférence, puisqu’il en coûte 1 à 2 FLOP par paramètre pour inférer sur un jeton.
- (en) Wei, Tay, Bommasani et Raffel, « Emergent Abilities of Large Language Models », Transactions on Machine Learning Research, (ISSN 2835-8856, arXiv 2206.07682, lire en ligne).
- Ornes (2023).
- Ji, Lee, Frieske et Yu, « Survey of Hallucination in Natural Language Generation », ACM Computing Surveys, Association for Computing Machinery, vol. 55, no 12, , p. 1–38 (DOI 10.1145/3571730, arXiv 2202.03629, S2CID 246652372, lire en ligne [PDF], consulté le ).
- (en) Michael McKenna, « Machines and Trust: How to Mitigate AI Bias », sur Toptal Engineering Blog (consulté le ).
- (en) Queenie Luo, Michael J. Puett et Michael D. Smith, « A Perspectival Mirror of the Elephant: Investigating Language Bias on Google, ChatGPT, Wikipedia, and YouTube », scientific journal, 12-25-2023 (lire en ligne [archive] [PDF])
- Hadas Kotek, Rikker Dockum et David Sun, « Gender bias and stereotypes in Large Language Models », Proceedings of The ACM Collective Intelligence Conference, Association for Computing Machinery, cI '23, , p. 12–24 (ISBN 979-8-4007-0113-9, DOI 10.1145/3582269.3615599, lire en ligne, consulté le )
- Fatma Elsafoury, Steve R. Wilson, Stamos Katsigiannis et Naeem Ramzan, « SOS: Systematic Offensive Stereotyping Bias in Word Embeddings », Proceedings of the 29th International Conference on Computational Linguistics, International Committee on Computational Linguistics, , p. 1263–1274 (lire en ligne, consulté le )
- Karen Zhou et Chenhao Tan, « Entity-Based Evaluation of Political Bias in Automatic Summarization », Findings of the Association for Computational Linguistics: EMNLP 2023, Association for Computational Linguistics, , p. 10374–10386 (DOI 10.18653/v1/2023.findings-emnlp.696, lire en ligne, consulté le )
- (en) James Manyika et Jake Silberg, « What Do We Do About the Biases in AI? », sur Harvard Business Review, (ISSN 0017-8012, consulté le ).
- (en-US) Meeta Ramnani, « How bias creeps into large language models », sur Analytics India Magazine, (consulté le ).
- (en) Isabel O. Gallegos et al., « Bias and Fairness in Large Language Models: A Survey », ..
- (en) Attention is all you need
- (en) RWKV: Reinventing RNNs for the Transformer Era
- (en) Retentive Network: A Successor to Transformer for Large Language Models
- (en) HyperAttention: Long-context Attention in Near-Linear Time
- (en) Mamba: Linear-Time Sequence Modeling with Selective State Spaces
- (en) « OpenAI API » [archive du ], platform.openai.com (consulté le ).
- Zaib, Sheng et Emma Zhang, « A Short Survey of Pre-trained Language Models for Conversational AI-A New Age in NLP », Proceedings of the Australasian Computer Science Week Multiconference, , p. 1–4 (ISBN 9781450376976, DOI 10.1145/3373017.3373028, arXiv 2104.10810, S2CID 211040895, lire en ligne)
- Zhu, Kiros, Zemel et Salakhutdinov, « Aligning Books and Movies: Towards Story-Like Visual Explanations by Watching Movies and Reading Books », 2015 IEEE International Conference on Computer Vision (ICCV), , p. 19–27 (ISBN 978-1-4673-8391-2, DOI 10.1109/ICCV.2015.11, arXiv 1506.06724, S2CID 6866988, lire en ligne, consulté le )
- Ayush Mittal, « Un guide complet pour affiner les grands modèles de langage », sur Unite.AI, (consulté le )
- (en) « Self-Instruct: Aligning Language Models with Self-Generated Instructions », ACL, (arXiv 2212.10560, lire en ligne)
- Alex McFarland, « Qu'est-ce que l'apprentissage par renforcement à partir de la rétroaction humaine (RLHF) », Unite.AI, (lire en ligne)
- (en) « What to Know About Claude 2, Anthropic's Rival to ChatGPT », sur Time, (consulté le )
- « requête », sur vitrinelinguistique.oqlf.gouv.qc.ca (consulté le ).
- (en) « Deep learning in digital health with chatgpt: a study on efficient code generation », sur academic.oup.com (consulté le )
- (en) « Résultats de recherche », sur vitrinelinguistique.oqlf.gouv.qc.ca (consulté le )
- (en) Roger Montti, « Google's Chain of Thought Prompting Can Boost Today's Best Algorithms », sur Search Engine Journal, (consulté le )
- (en) Joanne Chen, « How Perplexity.ai Is Pioneering The Future Of Search », sur forbes.com, (consulté le ).
- (en) « Qu'est-ce que l'évaluation des LLM ? — Klu », sur klu.ai, (consulté le )
- « BERT », sur GitHub,
- (en) Patel, Li, Rasooli et Constant, « Bidirectional Language Models Are Also Few-shot Learners », ArXiv, (S2CID 252595927, lire en ligne)
- « BERT, RoBERTa, DistilBERT, XLNet: Which one to use? »
- Naik, « Google Introduces New Architecture To Reduce Cost Of Transformers », Analytics India Magazine,
- Yang, Dai, Yang et Carbonell, « XLNet: Generalized Autoregressive Pretraining for Language Understanding », arXiv:1906.08237 [cs], (lire en ligne, consulté le )
- « Better language models and their implications », openai.com
- (en) « OpenAI's GPT-3 Language Model: A Technical Overview », lambdalabs.com
- « gpt-2 », sur GitHub (consulté le )
- « GPT Neo »,
- (en) Abhishek Iyer, « GPT-3's free alternative GPT-Neo is something to be excited about », sur venturebeat.com, .
- (en) « GPT-J-6B: An Introduction to the Largest Open Source GPT Model | Forefront », www.forefront.ai (consulté le )
- (en) Leo Gao, Stella Biderman, Sid Black, Laurence Golding, Travis Hoppe et al., « The Pile: An 800GB Dataset of Diverse Text for Language Modeling », ..
- Alvi et Kharya, « Using DeepSpeed and Megatron to Train Megatron-Turing NLG 530B, the World's Largest and Most Powerful Generative Language Model », Microsoft Research,
- Wang, Sun, Xiang et Wu, « ERNIE 3.0 Titan: Exploring Larger-scale Knowledge Enhanced Pre-training for Language Understanding and Generation », arXiv (prépublication), (arXiv 2112.12731).
- (en) « Product », Anthropic (consulté le )
- (en) Amanda Askell, Yuntao Bai, Anna Chen, Dawn Drain, Deep Ganguli et al., « A General Language Assistant as a Laboratory for Alignment », ..
- (en en) cogni down under, « Mistral 8x7B vs Claude 3 Opus LLM: A Comprehensive SEO-Optimized Review for 2024 », (consulté le )
- Antonin Leeno, « Tout savoir sur Claude 3 », (consulté le )
- (en) « Language modelling at scale: Gopher, ethical considerations, and retrieval », www.deepmind.com (consulté le )
- (en) Jordan Hoffmann, Sebastian Borgeaud, Arthur Mensch, Elena Buchatskaya, Trevor Cai et al., « Training Compute-Optimal Large Language Models », ..
- Sidney Black, Stella Biderman et Eric Hallahan « GPT-NeoX-20B: An Open-Source Autoregressive Language Model » () (lire en ligne, consulté le )
—Proceedings of BigScience Episode #5 -- Workshop on Challenges & Perspectives in Creating Large Language Models - (en) « Democratizing access to large-scale language models with OPT-175B », ai.facebook.com
- (en) Mikhail Khrushchev, Ruslan Vasilev, Alexey Petrov et Zinov Nikolay, « YaLM 100B », sur github.com, (consulté le )
- (en) « Minerva: Solving Quantitative Reasoning Problems with Language Models », ai.googleblog.com (consulté le )
- « bigscience/bloom • Hugging Face », huggingface.co, sur Hugging Face
- (en) « 20B-parameter Alexa model sets new marks in few-shot learning », Amazon Science,
- « AlexaTM 20B is now available in Amazon SageMaker JumpStart | AWS Machine Learning Blog », sur aws.amazon.com, (consulté le )
- « Stanford CRFM », crfm.stanford.edu
- « GPT-4 Technical Report » [archive du ], sur OpenAI, (consulté le )
- Dey, « Cerebras-GPT: A Family of Open, Compute-efficient, Large Language Models », Cerebras,
- « Abu Dhabi-based TII launches its own version of ChatGPT », tii.ae
- Wu, Irsoy, Lu et Dabravolski, « BloombergGPT: A Large Language Model for Finance », arXiv (prépublication), (DOI 10.48550/arXiv.2303.17564, arXiv 2303.17564).
- Ren, Zhou, Meng et Huang, « PanGu-Σ: Towards Trillion Parameter Language Model with Sparse Heterogeneous Computing », arXiv (prépublication), (DOI 10.48550/arXiv.2303.10845, arXiv 2303.10845).
- Köpf, Kilcher, von Rütte et Anagnostidis, « OpenAssistant Conversations -- Democratizing Large Language Model Alignment », arXiv:2304.07327 [cs], (lire en ligne)
- « LightOn publicly launches Muse »,
- « LightOn lance PAGnol, le plus grand modèle IA de langue française »,
Voir aussi
[modifier | modifier le code]Bibliographie
[modifier | modifier le code]- (en) Stephen Ornes, « The Unpredictable Abilities Emerging From Large AI Models », Quanta Magazine, (lire en ligne ).
- Stephen Ornes, « Modèles massifs de langage. D'où viennent les coups de génie de l'IA ? », Pour la science, no 549, , p. 46-51 (lire en ligne ), adaptation française par la revue.
- Jean-Paul Delahaye, « Derrière les modèles massifs de langage », Pour la science, no 555, , p. 80-85