Chargement du lab 3D…
Chargement de la leçon…
← Comment fonctionne l’IAMonde 1 · leçon 2 sur 4Toutes les leçons ↓

Pourquoi les modèles ne lisent ni les lettres ni les mots
Tu enseignes ? Ouvre le mode projecteur
Un modèle ne peut pas prendre directement des lettres brutes ou des mots entiers. Le texte est d’abord découpé en tokens : des morceaux pris dans une liste fixe appelée le vocabulaire, qui est créée avant l’entraînement. Chaque entrée possède un ID entier. Le modèle reçoit une liste d’entiers.
Un token peut être un mot entier courant, une partie d’un mot plus long, un signe de ponctuation ou un groupe de chiffres. L’espace avant un mot est généralement attaché au mot, donc « cat » et « cat » (avec un espace) sont normalement des tokens différents avec des ID différents. Les majuscules comptent aussi : « Cat » est encore un autre token.
Voici des découpages illustratifs, avec un | entre les tokens. Ils sont inventés pour montrer l’idée ; les tokeniseurs réels découpent le texte autrement.
cat est un seul token, car il est très courant.un|believ|ably correspond à trois tokens : le mot n’existe pas entièrement dans le vocabulaire, mais ses morceaux y sont.Comment construit-on un vocabulaire ? Une méthode courante est l’encodage par paires d’octets (BPE). L’idée vient de la compression de données ; Sennrich et ses collègues (2016) l’ont adaptée à la traduction neuronale. Voici la recette :
Essayons avec un tout petit corpus : low ×3, slow ×2, newer ×4, wider ×2.
er.lo.low.Après trois fusions, les mots sont low, s|low, n|e|w|er et w|i|d|er. Les morceaux fréquents sont devenus des tokens uniques, tandis que les mots plus rares restent découpés en plusieurs morceaux.
Une règle approximative pour un texte anglais courant : un token correspond à environ quatre caractères, ou à peu près aux trois quarts d’un mot ; 100 tokens correspondent donc à environ 75 mots. Ce n’est qu’une estimation. Cela varie selon le tokenizer, le sujet et la langue.
Les textes dans des langues qui étaient rares dans les données d’entraînement du tokenizer, ainsi que le code, les noms inhabituels et les nombres longs, nécessitent souvent davantage de tokens pour le même contenu. Plus de tokens signifie plus de calculs et une plus grande partie de la fenêtre de contexte utilisée. La fenêtre de contexte est le nombre maximum de tokens que le modèle peut traiter à la fois, et elle est comptée en tokens, pas en mots.
Un mot rare et long est transmis à un modèle. Que se passe-t-il généralement ?
« Cat » et « cat » (avec une espace au début) sont-ils généralement le même token ?
Dans quelle unité la fenêtre de contexte est-elle mesurée ?
Dans le corpus fictif (low ×3, slow ×2, newer ×4, wider ×2), quelle paire est fusionnée en premier ?