Qu'est-ce qu'un modèle de langage ?
Un modèle de langage estime la probabilité qu'un jeton ou une séquence de jetons apparaisse dans une séquence de jetons plus longue. Un jeton peut être un mot, un sous-mot (un sous-ensemble d'un mot) ou même un seul caractère.
Examinez la phrase suivante et le ou les jetons qui pourraient la compléter:
When I hear rain on my roof, I _______ in my kitchen.
Un modèle de langage détermine les probabilités de différents jetons ou séquences de jetons pour remplir cet espace vide. Par exemple : table de probabilités identifie certains jetons possibles et leurs probabilités:
Probabilité | Jeton(s) |
---|---|
9,4% | préparer une soupe |
5,2 % | réchauffer une bouilloire |
3,6 % | recroquevillement |
2,5 % | sieste |
2,2 % | détends-toi |
Dans certains cas, la séquence de jetons peut correspondre à une phrase, un paragraphe ou même un essai entier.
Une application peut utiliser le tableau des probabilités pour effectuer des prédictions. La prédiction peut être la probabilité la plus élevée (par exemple, "cuisiner une soupe") ou une sélection aléatoire parmi des jetons dont la probabilité est supérieure à une certaine de sortie.
Estimer la probabilité de ce qui remplit une zone vide dans une séquence de texte peut être étendue à des tâches plus complexes, telles que:
- Génération du texte.
- Traduire du texte d'une langue à une autre.
- Résumer des documents
En modélisant les modèles statistiques des jetons, les modèles de langage modernes développent des représentations internes extrêmement puissantes du langage et peut générer un langage plausible.
Modèles de langage N-gramme
Les N-grammes sont des séquences de mots ordonnées utilisées pour créer des modèles de langage, où N est le nombre de mots dans la séquence. Par exemple, lorsque N est égal à 2, le N-gramme est appelé 2-gramme (ou bigramme). Lorsque N est égal à 5, le N-gramme est appelé 5-gramme. Supposons que la phrase suivante figure dans un document de formation :
you are very nice
Les 2 grammes obtenus sont les suivants:
- vous êtes
- sont très
- très bien
Lorsque N est égal à 3, le N-gramme est appelé 3-gramme (ou trigramme). À partir de cette même phrase, les 3-grammes obtenus sont:
- tu es très
- sont très gentils
Étant donné deux mots en entrée, un modèle de langage basé sur des trigrammes peut prédire la probabilité du troisième mot. Prenons l'exemple des deux mots suivants:
orange is
Un modèle de langage examine les 3 grammes issus de son entraînement
corpus qui commence par orange is
pour déterminer le troisième mot le plus probable.
Des centaines de trigrammes peuvent commencer par les deux mots orange is
, mais vous pouvez vous concentrer uniquement sur les deux possibilités suivantes :
orange is ripe orange is cheerful
La première possibilité (orange is ripe
) concerne l'orange, le fruit, tandis que la seconde (orange is cheerful
) concerne la couleur orange.
Contexte
Les humains peuvent conserver des contextes relativement longs. En regardant l'acte 3 d'une pièce de théâtre, de conserver la connaissance des personnages présentés dans l'acte 1. De même, le la phrase d'une longue blague qui vous fait rire, car vous vous souvenez du contexte de la configuration de la blague.
Dans les modèles de langage, le contexte est une information utile avant ou après le jeton cible. Le contexte peut aider un modèle de langage à déterminer si la couleur "orange" fait référence à un agrumes ou à une couleur.
Le contexte peut aider un modèle de langage
à faire de meilleures prédictions,
3 grammes fournissent-ils suffisamment de contexte ? Malheureusement, le seul contexte fourni par un trigramme est les deux premiers mots. Par exemple, les deux mots orange is
ne fournissent pas suffisamment de contexte pour que le modèle de langage puisse prédire le troisième mot.
En raison du manque de contexte, les modèles de langage basés sur des trigrammes font de nombreuses erreurs.
Des N-grammes plus longs fourniraient certainement plus de contexte que des N-grammes plus courts. Toutefois, à mesure que N augmente, l'occurrence relative de chaque instance diminue. Lorsque N devient très grand, le modèle de langage ne comporte généralement qu'une seule instance de chaque occurrence de N jetons, ce qui n'est pas très utile pour prédire le jeton cible.
Réseaux de neurones récurrents
Les réseaux de neurones récurrents fournissent plus de contexte que les n-grammes. Un réseau de neurones récurrent est un type de réseau de neurones qui s'entraîne sur une séquence de jetons. Par exemple, un réseau de neurones récurrent peut progressivement apprendre (et apprendre à ignorer) le contexte sélectionné pour chaque mot dans une phrase, un peu comme si vous écoutiez quelqu'un parler. Un grand réseau de neurones récurrent peut obtenir du contexte grâce au passage de plusieurs phrases.
Bien que les réseaux de neurones récurrents apprennent plus de contexte que les n-grammes, la quantité de contexte utile qu'ils peuvent percevoir est encore relativement limitée. Les réseaux de neurones récurrents évaluent les informations jeton par jeton. À l'inverse, nous étudierons les grands modèles de langage, permet d'évaluer l'ensemble du contexte à la fois.
Notez que l'entraînement de réseaux de neurones récurrents pour de longs contextes est limité par le dégradé disparition le problème.
Exercice: tester vos connaissances
- Un modèle de langage basé sur les 6 grammes
- Modèle de langage basé sur des 5-grammes