Pourquoi l'ordre des mots et le contexte comptent
- Leçon 16
- 45 min
- Module 5 : Représenter les séquences et le sens
Leçon 16 sur 23 · L'apprentissage profond et les transformeurs expliquésPourquoi l'ordre des mots et le contexte comptent
1. Ce qu'est un réseau de neurones
2. Les tenseurs et PyTorch
3. Comment les réseaux de neurones apprennent
4. Diagnostiquer les problèmes d'entraînement
5. Représenter les séquences et le sens
6. Assembler un transformeur
7. Utiliser des modèles préentraînés
8. Sous le capot : les mathématiquesFacultatif
Ce que vous saurez faire
Voyez exactement où le comptage des mots échoue : sur les billets dont l’équipe dépend de l’ordre et des mots voisins. C’est le problème que l’attention, dans la prochaine leçon, vise à résoudre.
Carnet JupyterMêmes mots, même entrée : vérifiez dans un carnet
Le carnet (notebook) Jupyter construit les sacs de mots de deux billets inventés et vérifie qu’ils sont identiques. Il compte les paires et les triplets de mots. Il entraîne aussi le réseau à sac de mots pour lister, par style, les billets de validation mal acheminés. Environ 25 minutes.
Le carnet est en anglais. Colab et Kaggle ouvrent votre propre copie. Il faut un compte Google ou Kaggle gratuit. Vous êtes bloqué ? Consultez le carnet de solution.
Avant de commencerCe qu’il faut savoir et avoir sous la main
Ce que vous devez savoir
- Le sac de mots, présenté dans La propagation avant : un billet devient un compte pour chaque mot du vocabulaire.
- Les jetons (tokens), les plongements (embeddings) et le réseau à moyenne de plongements, présentés dans Jetons et plongements.
- La politique d’acheminement de Grace et ses deux limites, présentées dans Ce qu’est l’apprentissage profond : bris à l’arrivée ou après utilisation; remboursement avant ou après la confirmation du retour.
Ce qu’il vous faut sur votre ordinateur
- Un navigateur. Le carnet s’ouvre dans Colab ou Kaggle avec PyTorch déjà installé.
- Pour travailler localement : le dossier
ticket-routerde Installer PyTorch : option 2. Le code poursuit celui de Jetons et plongements. Exécutez donc d’abordtokens_and_ids.py: il créevocab.
Les mêmes mots, un message différent
Section intitulée « Les mêmes mots, un message différent »Votre collègue vous envoie un message : « Appelez-moi, ne textez pas. » Une heure plus tard, un autre : « Textez-moi, n’appelez pas. » Les deux messages utilisent exactement les mêmes mots. Si vous comptiez seulement les mots, vous ne pourriez pas les distinguer. Pourtant, ils demandent des choses opposées.
Les gens lisent les mots dans l’ordre, et chaque mot change le sens des mots voisins. Dans le premier message, la négation porte sur « textez »; dans le second, elle porte sur « appelez ». Un sac de mots garde les mots et élimine leur ordre.
Le problème sur de vrais billets
Section intitulée « Le problème sur de vrais billets »Depuis le module 2, chaque système d’acheminement du cours lit un billet comme un sac de mots ou une moyenne de plongements. Les deux oublient l’ordre. Ils acheminent quand même correctement la plupart des billets. Le réseau à sac de mots réussit pour 97,3 % des billets de validation après 20 époques. D’où viennent donc ses erreurs?
Chaque billet de validation a un style, qui indique comment il a été rédigé. Le style ne sert jamais d’entrée au modèle. Il permet seulement de mesurer où le modèle échoue. Le graphique montre la proportion de billets mal acheminés par le réseau à sac de mots, pour cinq styles.
- Les mots de la demande décident
- L'ordre ou les autres mots comptent
Description textuelle du graphique
Proportion de billets de validation mal acheminés par le réseau à sac de mots, selon le style. Billets simples : 0 sur 145 (0 %). À une limite de la politique : 3 sur 131 (2,3 %). Avec une négation : 2 sur 38 (5,3 %). Deux sujets, avec un problème résolu en premier : 5 sur 52 (9,6 %). Billets longs : 4 sur 21 (19,0 %).
Le réseau à moyenne de plongements échoue sur presque les mêmes billets. Il fait 19 erreurs au total. Les nombres sont les mêmes pour les limites (3), les négations (2), les billets à deux sujets (5) et les longs (4). Regardez maintenant les 46 billets dont la vraie demande apparaît dans la dernière phrase (« demande à la fin »). Les deux réseaux les acheminent tous correctement. La position seule n’est pas le problème. Le problème commence quand les autres mots indiquent une autre équipe. Les billets longs ont un deuxième problème : le cours coupe chaque billet après 120 jetons. La fin d’un très long billet est donc perdue.
Voici quatre vrais billets, raccourcis.
T-64746, une négation. Grace : retours. « Je **n’**appelle pas pour un article défectueux et je ne demande pas de remboursement. L’ensemble de patio en rotin est simplement trop grand pour que je l’apporte à un point de dépôt. Pourriez-vous organiser une collecte pour le retour? » Sac de mots : paiement (57 %). Moyenne de plongements : paiement (56 %). Le client dit « pas … remboursement », mais le compte de « remboursement » reste le même avec ou sans « pas ».
T-64813, deux sujets. Grace : paiement. « Plus tôt ce mois-ci, un retour que j’avais envoyé a été remboursé rapidement … On m’a facturé deux fois ma commande de sécateur … et j’aimerais faire annuler un des paiements, s’il vous plaît. » Sac de mots : retours (98 %). Moyenne de plongements : retours (98 %). Le retour résolu vient en premier; la vraie demande vient ensuite. Les comptes ne permettent pas de savoir quel sujet est réglé.
T-65219, à une limite. Grace : livraison. « L’escabeau … a un pied fissuré … il semble défectueux et dangereux à utiliser. Il était déjà brisé au déballage, quand je l’ai ouvert le jour de son arrivée. » Sac de mots : garantie (83 %). Moyenne de plongements : garantie (64 %). « Fissuré » et « défectueux » orientent vers la garantie. Seuls les mots voisins, « au déballage … le jour de son arrivée », indiquent « à l’arrivée ».
T-65176, deux sujets. Grace : compte. « Le mois dernier, ma livraison a été laissée à la mauvaise maison, et vous avez organisé un remplacement … Mais je n’arrive toujours pas à accéder à mon compte pour vérifier ma commande de housses de coussin. Pourriez-vous m’aider? » Sac de mots : livraison (87 %). Moyenne de plongements : livraison (84 %). Le problème de livraison réglé contient plus de mots que le problème de compte encore ouvert.
Attention à la conclusion que vous en tirez. Le modèle linéaire du cours Apprentissage automatique : du problème à un modèle fiable lit aussi un sac de mots. Il achemine correctement trois de ces quatre billets. Il échoue seulement sur T-65176. Toutes les erreurs ne viennent donc pas de la perte de l’ordre : deux modèles peuvent pondérer différemment les mêmes comptes. Pour voir l’effet de l’ordre seul, il faut deux billets qui contiennent exactement les mêmes mots.
Mêmes mots, même entrée, même réponse
Section intitulée « Mêmes mots, même entrée, même réponse »Ces deux billets sont inventés pour cette leçon; aucun client ne les a écrits. Ils utilisent exactement les mêmes 14 jetons, dans un ordre différent. La politique de Grace les envoie à des équipes différentes.
- A : « La lampe était endommagée à l’arrivée, pas après un mois d’utilisation. » → livraison
- B : « La lampe était endommagée après un mois d’utilisation, pas à l’arrivée. » → garantie
Construisez leurs sacs de mots et comparez-les. Le code utilise vocab de Jetons et plongements. La fonction bag_of_words() de ticketnet.py produit les comptes de La propagation avant :
import torchfrom ticketnet import bag_of_words, tokenize
a = "The lamp was damaged on arrival, not after a month of use."b = "The lamp was damaged after a month of use, not on arrival."xa = bag_of_words([{"text": a}], vocab)xb = bag_of_words([{"text": b}], vocab)print(xa.shape, "tokens:", int(xa.sum()), "| the same input:", torch.equal(xa, xb))La sortie :
torch.Size([1, 2864]) tokens: 14 | the same input: Truetorch.equal vérifie que deux tenseurs ont la même forme et les mêmes nombres. C’est le cas : A et B sont la même entrée. Un réseau est une fonction de son entrée. La même entrée donne toujours la même sortie. Le réseau à sac de mots entraîné doit donc donner la même réponse pour A et B. Le schéma montre sa réponse.
Description textuelle du diagramme
Deux billets inventés. Le billet A dit : « La lampe était endommagée à l’arrivée, pas après un mois d’utilisation. » La politique de Grace l’envoie à la livraison, car le bris était présent à l’arrivée. Le billet B dit : « La lampe était endommagée après un mois d’utilisation, pas à l’arrivée. » La politique de Grace l’envoie à la garantie. Les deux billets deviennent le même sac de mots de 2 864 comptes : the, lamp, was, damaged, on, arrival, not, after, a, month, of, use, la virgule et le point, une fois chacun, et tous les autres mots à 0. Le réseau à sac de mots entraîné donne la même réponse pour les deux billets : garantie 59,4 %, livraison 38,0 %. C’est correct pour B et incorrect pour A. Aucun entraînement ne peut corriger cela, car l’entrée est la même.
Ce n’est pas une faiblesse propre à ce réseau. Chaque modèle qui lit seulement les comptes doit répondre de la même façon à A et B. Cela inclut le réseau à moyenne de plongements et le modèle linéaire du cours Apprentissage automatique : du problème à un modèle fiable. Pour toute paire semblable, au moins une des deux réponses est incorrecte.
Deux autres paires inventées montrent la même chose. Chaque paire a le même sac de mots, et le réseau entraîné donne une seule réponse pour chaque paire.
| Billet inventé | Équipe de Grace | Réseau à sac de mots |
|---|---|---|
| Ce n’est pas au sujet de mon compte, c’est au sujet du colis en retard. | livraison | livraison (89,8 %) |
| Ce n’est pas au sujet du colis en retard, c’est au sujet de mon compte. | compte | livraison (89,8 %) |
| Le problème de mot de passe est résolu. La double facturation sur ma carte reste à régler. | paiement | retours (66,9 %) |
| La double facturation sur ma carte est résolue. Le problème de mot de passe reste à régler. | compte | retours (66,9 %) |
La dernière paire reçoit la réponse « retours », incorrecte pour les deux billets. Ces phrases inventées sont plus courtes que les vrais billets. Le réseau a donc peu d’indices. Mais le point principal ne dépend pas de la réponse : les deux entrées sont identiques.
Le contexte : le sens d’un mot dépend de ses voisins
Section intitulée « Le contexte : le sens d’un mot dépend de ses voisins »Les paires montrent une deuxième idée. Un mot n’a pas un seul sens fixe dans un billet. « Endommagée » signifie « à l’arrivée » ou « après utilisation », selon les mots voisins. « Remboursement » signifie « ma demande » dans une phrase et « résolu, merci » dans une autre. « Pas » change le sens du mot qui suit.
Un bon lecteur de billets fait donc deux choses. Il garde l’ordre des mots. Et il permet à chaque mot de tirer son contexte des autres mots pertinents, proches ou éloignés. Un compte donne à chaque mot une contribution fixe, peu importe ce qui l’entoure. Une moyenne de plongements fait la même chose avec une ligne fixe par mot.
Une solution partielle : compter les paires de mots
Section intitulée « Une solution partielle : compter les paires de mots »Une idée simple garde un peu d’ordre : compter de courtes suites de mots voisins, en plus des mots seuls. Une suite de n jetons voisins est un n-gramme : n est la longueur de la suite. Les paires sont des bigrammes (« à l’arrivée », « pas après »), et les triplets sont des trigrammes (« endommagée à l’arrivée »).
Les bigrammes distinguent la paire de billets sur la lampe. Le billet A contient les paires « damaged on », « arrival , », « not after » et « use . »; le billet B ne les contient pas. Mais ils ne distinguent pas la paire sur le mot de passe :
from collections import Counter
def ngrams(text, n): t = tokenize(text) return Counter(tuple(t[i:i + n]) for i in range(len(t) - n + 1))
c = "The password problem is solved. The double charge on my card is still open."d = "The double charge on my card is solved. The password problem is still open."for n in (1, 2, 3): print(n, "| lamp pair, same:", ngrams(a, n) == ngrams(b, n), "| password pair, same:", ngrams(c, n) == ngrams(d, n))print(sorted(ngrams(a, 2) - ngrams(b, 2)))La sortie :
1 | lamp pair, same: True | password pair, same: True2 | lamp pair, same: False | password pair, same: True3 | lamp pair, same: False | password pair, same: False[('arrival', ','), ('damaged', 'on'), ('not', 'after'), ('use', '.')]Dans la paire sur le mot de passe, les mots qui changent le sens sont « solved » et « still open ». Ils se trouvent deux mots après « problem » et « card ». Chaque paire de voisins apparaît dans les deux billets. Seuls des triplets comme « problem is solved » les distinguent. Quelle que soit la fenêtre choisie, une phrase peut placer le mot important juste à l’extérieur.
Et chaque fenêtre plus longue coûte cher. Comptez seulement les n-grammes qui apparaissent au moins deux fois dans les billets d’entraînement, comme le vocabulaire le fait pour les mots :
Description textuelle du graphique
Taille du vocabulaire des billets d’entraînement, en comptant les entrées qui apparaissent au moins deux fois. Mots seuls : 2 864. Mots et paires de mots : 19 312. Mots, paires et triplets : 47 438.
Les coûts, en chiffres réels :
- Plus de poids. Le réseau à sac de mots a 183 685 paramètres avec les mots. Avec les paires, il en faut 1 236 357; avec les triplets, 3 036 421, pour les mêmes 4 696 billets.
- Plus d’entrées jamais vues. Parmi les paires des billets de validation, 11,8 % ne sont jamais apparues deux fois pendant l’entraînement. C’est aussi le cas de 33,4 % des triplets. Un nouveau billet utilise souvent une paire que le modèle n’a jamais vue. Cette paire ne compte alors pour rien.
Est-ce utile? Un peu. Avec le modèle linéaire du cours Apprentissage automatique : du problème à un modèle fiable, l’exactitude de validation passe de 98,8 % (mots) à 99,3 % (paires) et 99,5 % (triplets). Les erreurs sur les billets à deux sujets passent de 6 à 3, puis à 2. Cela représente 3 ou 4 billets sur 600. Et sur les trois paires inventées, les modèles à n-grammes donnent encore la même équipe aux deux billets de chaque paire. Des entrées différentes permettent une réponse différente; elles ne la garantissent pas.
Un bref historique : lire mot par mot
Section intitulée « Un bref historique : lire mot par mot »Avant 2017, la solution habituelle était un réseau récurrent. Il lit un billet un mot à la fois, comme une personne qui lit à voix haute. Il garde un résumé qu’il met à jour : un vecteur modifié après chaque mot. À la fin, le résumé passe à la couche de sortie. Un réseau récurrent voit l’ordre, mais son résumé a une taille fixe. Les premiers mots s’effacent donc à mesure que le texte s’allonge. Il doit aussi lire les mots un après l’autre, ce qui est lent pour les longs textes. Des versions améliorées, comme le LSTM, conservaient les premiers mots plus longtemps, mais les deux problèmes demeuraient. Aujourd’hui, la plupart des modèles de texte utilisent plutôt l’attention.
Ce qu’il faut à un meilleur lecteur
Section intitulée « Ce qu’il faut à un meilleur lecteur »Rassemblez les idées. Pour acheminer T-64813, le mot « charged » doit compter plus que « refunded », car « refunded » appartient à une histoire terminée. Pour acheminer le billet B, « damaged » doit lire « after a month of use ». Et « not » doit se rattacher à « on arrival », quatre mots plus loin. Pour acheminer T-65176, le réseau doit voir que « still can’t » appartient au problème de compte. Dans chaque cas, un mot a besoin d’information provenant de certains autres mots, choisis selon leur sens, à n’importe quelle distance.
C’est exactement ce que la prochaine leçon construit : l’attention. Chaque mot regarde tous les autres mots, donne un poids à chacun et prend une moyenne pondérée de leur information. Les poids viennent des mots eux-mêmes. Ils changent donc d’un billet à l’autre.
Soyez réaliste quant aux résultats attendus. Le minuscule transformeur du cours, construit avec l’attention, lit bien l’ordre. Sur les paires inventées, il donne des réponses différentes aux deux billets de chaque paire. Mais il a raison pour seulement 2 des 6 billets. Sur les vrais billets de validation, il en achemine correctement 94,3 %, moins que le réseau à sac de mots. Mélangez les mots de chaque billet de validation : il perd seulement 1 point, pour atteindre 93,3 %. Sur ces billets, il utilise à peine l’ordre. Environ 4 700 billets ne suffisent pas pour apprendre une langue à partir de rien. Le module 6 construit ce transformeur, et le module 7 montre ce qu’ajoute le préentraînement.
Quand utiliser les comptes de mots, et ce qu’ils coûtent
Section intitulée « Quand utiliser les comptes de mots, et ce qu’ils coûtent »Les comptes de mots sont le bon outil quand les mots déterminent l’équipe. Sur les billets de Larkfield, c’est le cas la plupart du temps. Le modèle linéaire en achemine correctement 98,8 % et reste le système d’acheminement de Larkfield. Les comptes sont rapides, peu coûteux et faciles à expliquer.
Leur coût est une limite certaine, pas aléatoire. L’ordre compte dans les négations, les billets à deux sujets et ceux à une limite de la politique. Évaluez votre système d’acheminement sur ces styles, pas seulement sur l’ensemble. Ajoutez des n-grammes si quelques points comptent et si vous avez assez de données. Vérifiez aussi la taille du vocabulaire. Pour les textes où l’ordre compte beaucoup, comme les longs billets à plusieurs sujets, il faut un modèle qui lit l’ordre et le contexte.
Exercice guidé : prouver que l’entrée est la même
Section intitulée « Exercice guidé : prouver que l’entrée est la même »- Ouvrez le carnet et exécutez les cellules de configuration.
- Exécutez la section « Same words, same input » (mêmes mots, même entrée). Elle construit les sacs de mots des billets A et B.
- Vérifiez la sortie :
the same input: True(la même entrée : vrai). - Exécutez la section « Count pairs and triples » (compter les paires et les triplets). Trouvez le premier
npour lequel chaque paire inventée diffère. - Exécutez la section « Where the network fails » (où le réseau échoue). Elle entraîne le réseau à sac de mots pendant 20 époques et liste ses billets de validation mal acheminés par style.
Sortie attendue à l’étape 4, comme dans la leçon : la paire sur la lampe diffère à n = 2, celle sur le mot de passe à n = 3. L’étape 5 liste 16 billets mal acheminés : 5 à deux sujets, 4 longs, 3 à une limite, 2 avec négation, 1 avec un élément distrayant et 1 court.
Montrez pourquoi la réponse doit être « la même entrée »
bag_of_words compte chaque jeton du vocabulaire. A et B ont les mêmes 14 jetons, chacun une fois. Les 2 864 comptes sont donc égaux. Le tenseur ne stocke jamais l’ordre des mots. Le réseau calcule sa sortie uniquement à partir de ce tenseur. Il ne peut donc pas répondre différemment à A et B, quels que soient ses poids.
À vous de jouer : votre propre paire
Section intitulée « À vous de jouer : votre propre paire »Écrivez deux courts billets de soutien avec les mêmes mots dans un ordre différent. La politique de Grace doit les envoyer à des équipes différentes. Utilisez seulement des mots courants pour qu’aucun jeton (token) ne devienne <unk> (inconnu). Faites d’abord une prédiction : leur sac de mots est-il identique? Leurs paires de mots sont-elles identiques? Vérifiez ensuite les deux dans le carnet (notebook) Jupyter.
Afficher un exemple de réponse
« Ma carte a été débitée, pas mon compte bloqué. » (paiement) et « Mon compte a été bloqué, pas ma carte débitée. » (compte). Le sac de mots est identique (True, vrai), et les paires de mots diffèrent (False, faux). « carte a » se trouve seulement dans le premier billet. Toute paire que vous écrivez avec les mêmes mots donne True pour le sac de mots. Les paires diffèrent ou non selon l’endroit où vous avez déplacé les mots.
Erreur courante
Une meilleure exactitude prise comme preuve que l'ordre est traité
Symptôme : Tomás ajoute des paires et des triplets de mots au modèle linéaire. L’exactitude sur les données de validation passe de 98,8 % à 99,5 %. Il dit à Grace que « le problème de l’ordre est réglé ». Puis Grace essaie les billets inventés sur la lampe : les deux vont encore à l’équipe de garantie.
Cause : un gain de 0,7 point représente 4 billets sur 600. Il en dit peu sur les négations ou les billets à deux sujets. Les n-grammes ne voient qu’une courte fenêtre. Ils aident seulement avec les paires et les triplets vus pendant l’entraînement. Un tiers des triplets de validation n’avaient jamais été vus deux fois pendant l’entraînement.
Solution : testez directement l’ordre. Évaluez le système de routage par style (négation, deux sujets, frontière). Gardez un petit ensemble de paires inventées avec les mêmes mots, destinées à des équipes différentes. Vérifiez que le modèle les distingue. Indiquez aussi le coût : ici, 47 438 entrées de vocabulaire au lieu de 2 864.
Vérification des connaissances
Section intitulée « Vérification des connaissances »Vérifiez votre compréhension
Pourquoi tout modèle à sac de mots doit-il donner la même réponse à « endommagé à l'arrivée, pas après un mois d'utilisation » et à « endommagé après un mois d'utilisation, pas à l'arrivée »?
Afficher la réponse
Les deux phrases ont exactement les mêmes jetons, chacun une seule fois. Leurs sacs de mots sont donc identiques : les 2 864 comptes sont égaux. Un modèle calcule sa sortie uniquement à partir de son entrée. La même entrée donne toujours la même sortie. Tout modèle qui lit seulement les comptes donne donc la même réponse aux deux phrases, quels que soient ses poids. La politique de Grace les envoie à des équipes différentes (livraison et garantie). Une réponse est donc toujours fausse.
Votre réponse contient-elle les points principaux de la nôtre ?
Connectez-vous et inscrivez-vous au cours pour enregistrer vos réponses. Chaque vérification compte pour le certificat.
Vérifiez votre compréhension
Le réseau à sac de mots classe correctement les 46 billets de style « demande à la fin ». Il classe mal 5 des 52 billets de style « deux sujets ». Les deux styles placent la vraie demande à la fin. Pourquoi cette différence?
Afficher la réponse
La position de la demande seule ne compte pas pour un sac de mots, car il ignore la position. Dans les billets « demande à la fin », les autres mots ne désignent pas clairement une autre équipe. Les mots de la demande décident donc du classement. Dans les billets « deux sujets », un problème résolu par une autre équipe vient d’abord, avec les mots de cette équipe. Les comptes contiennent alors des mots fortement associés à deux équipes. Le réseau ne peut pas distinguer le sujet réglé du sujet encore ouvert.
Votre réponse contient-elle les points principaux de la nôtre ?
Connectez-vous et inscrivez-vous au cours pour enregistrer vos réponses. Chaque vérification compte pour le certificat.
Vérifiez votre compréhension
Faites une prédiction : Tomás ajoute des paires de mots (bigrammes) pour distinguer la paire sur le mot de passe : « Le problème de mot de passe est réglé. Le double débit sur ma carte reste ouvert. » et sa version inversée. Est-ce que cela fonctionne? Quel est le coût?
Afficher la réponse
Cela ne fonctionne pas : les deux billets ont exactement les mêmes paires de mots. En anglais, deux mots séparent « solved » (réglé) et « still open » (encore ouvert) de « problem » (problème) et « card » (carte). Seuls les triplets les distinguent. Le coût est élevé. Avec les paires, le vocabulaire passe de 2 864 à 19 312 entrées. Le réseau à sac de mots passe de 183 685 à 1 236 357 paramètres. Parmi les paires de validation, 11,8 % n’avaient jamais été vues deux fois pendant l’entraînement.
Votre réponse contient-elle les points principaux de la nôtre ?
Connectez-vous et inscrivez-vous au cours pour enregistrer vos réponses. Chaque vérification compte pour le certificat.
Récapitulatif
- Un sac de mots et une moyenne de plongements (embeddings) éliminent tous deux l’ordre des mots. Le réseau à sac de mots échoue surtout sur les billets longs (19,0 %) et ceux à deux sujets (9,6 %). Viennent ensuite les négations (5,3 %) et les frontières (2,3 %). Il n’échoue jamais sur les billets simples.
- Deux billets inventés avec les mêmes mots reçoivent la même entrée (
torch.equalvautTrue). Tout modèle basé sur les comptes leur donne donc la même réponse, et l’une des deux est fausse. - Le sens d’un mot dépend de son contexte : « endommagé » a besoin de « à l’arrivée » ou « après utilisation ». « Remboursement » peut désigner une demande ou une histoire terminée.
- Les n-grammes conservent l’ordre dans une courte fenêtre. Ils aident un peu (98,8 % → 99,5 % pour le modèle linéaire). Mais ils multiplient le vocabulaire par 7 à 17, et beaucoup de nouvelles paires n’ont jamais été vues.
- Les réseaux récurrents lisent mot par mot, mais oublient les premiers mots et sont lents. L’attention permet à chaque mot de choisir quels autres mots lire, quelle que soit la distance.
Ensuite, construisez l’attention à la main avec trois mots et deux nombres par mot. Examinez ensuite les vrais poids d’attention du tout petit transformeur du cours.
Leçon suivante : L'attention étape par étape