Une technologie plus récente, grands modèles de langage (LLM) prédire un jeton ou une séquence de jetons, parfois de plusieurs paragraphes de jetons prédits. N'oubliez pas qu'un jeton peut être un mot, un sous-mot (un sous-ensemble un mot) ou même un seul caractère. Les LLM produisent de bien meilleures prédictions que les modèles de langage à N-grammes ou les réseaux de neurones récurrents, car:
- Les LLM contiennent beaucoup plus de paramètres que les modèles récurrents.
- Les LLM recueillent beaucoup plus de contexte.
Cette section présente l'architecture la plus performante et la plus utilisée pour créer des LLM: le modèle Transformer.
Qu'est-ce qu'un transformateur ?
Les modèles Transformer sont l'architecture de pointe adaptée à une grande variété de modèles de langage, comme la traduction:
![Figure 1. L'entrée est: Je suis un bon chien. Un modèle basé sur Transformer
Le traducteur transforme cette entrée en sortie : "Je suis un bon"
"chien", qui est la même phrase traduite en français.](https://developers.google.cn/static/machine-learning/crash-course/images/Iamagooddog.png?authuser=3&hl=fr)
Les transformateurs complets se composent d'un encodeur et d'un décodeur:
- Un encodeur convertit du texte saisi dans une représentation intermédiaire. Un encodeur est un gigantesque réseau de neurones.
- Un décodeur convertit cette représentation intermédiaire en texte utile. Un décodeur est également un énorme réseau de neurones.
Par exemple, dans un traducteur:
- L'encodeur traite le texte d'entrée (par exemple, une phrase en anglais) dans une représentation intermédiaire.
- Le décodeur convertit cette représentation intermédiaire en texte de sortie (par par exemple, la phrase française équivalente).
![Figure 2. Le traducteur basé sur Transformer commence par un encodeur,
qui génère une représentation intermédiaire
dans la phrase. Un décodeur convertit cette représentation intermédiaire en
une phrase de sortie en français.](https://developers.google.cn/static/machine-learning/crash-course/images/TransformerBasedTranslator.png?authuser=3&hl=fr)
Qu'est-ce que l'auto-attention ?
Pour améliorer le contexte, Transformer s'appuie fortement sur un concept appelé auto-attention. En effet, au nom de chaque jeton d'entrée, l'auto-attention demande la question suivante:
"Dans quelle mesure chaque jeton d'entrée affecte-t-il l'interprétation de cette ou un jeton équivalent ?"
Le « lui-même » dans « l’auto-attention » fait référence à la séquence d'entrée. Un peu d'attention les mécanismes de pondération des relations entre les jetons d'entrée et les jetons dans une séquence de sortie, comme ou à des jetons d'une autre séquence. Mais l'auto-attention uniquement pondère l'importance des relations entre les jetons dans la séquence d'entrée.
Pour simplifier, supposons que chaque jeton est un mot et que la chaîne le contexte n'est qu'une seule phrase. Considérez la phrase suivante:
The animal didn't cross the street because it was too tired.
La phrase précédente contient onze mots. Chacun des onze mots est prêtant attention aux 10 autres, en se demandant combien chacun de ces 10 mots est importante pour elle-même. Par exemple, notez que la phrase contient le pronom it. Les pronoms sont souvent ambigus. Le pronom it fait généralement référence à ou syntagme nominal récent, mais dans la phrase d'exemple, quel nom récent fait-il référence à l'animal ou à la rue ?
Le mécanisme d'auto-attention détermine la pertinence de chaque mot proche le pronom it. La figure 3 illustre les résultats. Plus la ligne est bleue, plus important que le mot soit par rapport au pronom it. Autrement dit, l'animal est plus est plus important que street sur le pronom it.
![Figure 3. La pertinence de chacun des onze mots de la phrase:
"L'animal n'a pas traversé la rue, car il était trop fatigué."
au pronom "it". Le mot "animal" est le plus pertinent pour
le pronom "it".](https://developers.google.cn/static/machine-learning/crash-course/images/Theanimaldidntcrossthestreet.png?authuser=3&hl=fr)
À l'inverse, supposons que le dernier mot de la phrase change comme suit:
The animal didn't cross the street because it was too wide.
Dans cette phrase révisée, nous espérons que l'auto-attention donnerait la note de street plus pertinent que animal pour le pronom it.
Certains mécanismes d'auto-attention sont bidirectionnels : calculer des scores de pertinence pour les jetons précédent et suivant le mot faisant l'objet ont suivi. Par exemple, dans la figure 3, notez que les mots des deux côtés d’une elle sont examinées. Ainsi, un mécanisme d'auto-attention bidirectionnel peut rassembler le contexte à partir de mots de chaque côté du mot traité. En revanche, le mécanisme d'auto-attention unidirectionnel ne peut recueillir du contexte qu'à partir de mots d'un côté du mot dont on s'occupe. L'auto-attention bidirectionnelle est particulièrement utile pour générer des représentations de séquences entières, tandis que les applications qui génèrent des séquences jeton par jeton nécessitent un affichage unidirectionnel de l'auto-attention. Pour cette raison, les encodeurs utilisent l'auto-attention bidirectionnelle, tandis que les décodeurs utilisent un flux unidirectionnel.
Qu'est-ce que l'auto-attention multi-tête ?
Chaque couche d'auto-attention se compose généralement de plusieurs tête d'auto-attention. La sortie d'une couche est une opération mathématique (moyenne pondérée ou produit scalaire, par exemple) de la sortie de la différentes têtes.
Étant donné que chaque couche d'auto-attention est initialisée sur des valeurs aléatoires, différentes têtes peuvent apprendre les différentes relations entre chaque mot pris en compte et mots proches. Par exemple, la couche d'auto-attention décrite s'est concentrée sur la détermination du nom auquel le pronom il fait référence. Cependant, d’autres couches d’auto-attention peuvent apprendre la pertinence grammaticale de chaque mot à chaque mot, ou apprendre d'autres interactions.
Pourquoi les modèles Transformer sont-ils si grands ?
Les Transformer contiennent des centaines de milliards, voire des milliers de milliards de paramètres. Dans ce cours, il est généralement recommandé de créer des modèles un plus grand nombre de paramètres par rapport à ceux qui en ont un plus grand. Après tout, un modèle avec un plus petit nombre de paramètres utilise moins de ressources. qu'avec un modèle avec un plus grand nombre de paramètres. Cependant, des études montrent que les modèles Transformer comportant plus de paramètres sont systématiquement plus performantes que les modèles Transformer avec moins de paramètres.
Mais comment un LLM génère-t-il du texte ?
Vous avez vu comment les chercheurs entraînent des LLM à prédire un ou deux mots manquants, ne seront peut-être pas impressionnés. Après tout, la prédiction d'un ou deux mots de saisie semi-automatique intégrée dans divers textes, e-mails et logiciels de création. Vous vous demandez peut-être comment les LLM peuvent générer des phrases, des paragraphes, haïkus sur les sites à contenu exclusivement publicitaire.
En fait, les LLM sont essentiellement des mécanismes de saisie semi-automatique qui peuvent automatiquement prédire (terminé) des milliers de jetons. Prenons l'exemple d'une phrase suivie d'une phrase masquée:
My dog, Max, knows how to perform many traditional dog tricks. ___ (masked sentence)
Un LLM peut générer des probabilités pour la phrase masquée, y compris:
Probabilité | Mot(s) |
---|---|
3,1 % | Par exemple, il peut s'asseoir, rester et et le survol. |
2,9 % | Par exemple, il sait s’asseoir, rester et et le survol. |
Un LLM suffisamment grand peut générer des probabilités pour des paragraphes et des essais. Les questions posées par un utilisateur à un LLM sont comparables phrase suivi d'un masque imaginaire. Exemple :
User's question: What is the easiest trick to teach a dog? LLM's response: ___
Le LLM génère des probabilités pour différentes réponses possibles.
Autre exemple : un LLM entraîné sur un grand nombre de "mots" mathématiques des problèmes" peut donner l'impression d'effectuer un raisonnement mathématique sophistiqué. Toutefois, ces LLM ne font que compléter automatiquement une requête contenant un problème de mots.
Avantages des LLM
Les LLM peuvent générer un texte clair et facile à comprendre pour un large une variété d'audiences cibles. Les LLM peuvent effectuer des prédictions sur les tâches qu'ils explicitement entraînés. Certains chercheurs affirment que les LLM peuvent également des prédictions pour les entrées sur lesquelles elles n'ont pas été explicitement entraînés, mais d'autres les chercheurs ont réfuté cette affirmation.
Problèmes liés aux LLM
L'entraînement d'un LLM implique de nombreux problèmes, dont les suivants:
- Collecte d'un immense ensemble d'entraînement...
- Consommer plusieurs mois et d'énormes ressources de calcul et de l'électricité.
- Résoudre les problèmes de parallélisme
L'utilisation de LLM pour déduire des prédictions entraîne les problèmes suivants:
- Les LLM hallucinent ce qui signifie que leurs prédictions contiennent souvent des erreurs.
- Les LLM consomment énormément de ressources de calcul et d'électricité. L'entraînement de LLM sur des ensembles de données plus volumineux réduit généralement la quantité de ressources requise pour l'inférence, même si l'entraînement plus large des ensembles de données entraînent davantage de ressources d'entraînement.
- Comme tous les modèles de ML, les LLM peuvent présenter toutes sortes de biais.