Tokenization
Explore comment la tokenisation transforme le texte brut et les images en données prêtes pour l'IA. Apprends les méthodes de NLP et de vision par ordinateur utilisées par des modèles comme Ultralytics YOLO26.
La tokenisation est le processus algorithmique qui consiste à diviser un flux de données brutes — telles que du texte, des images ou de l'audio — en unités plus petites et gérables appelées tokens. Cette transformation agit comme un pont essentiel dans le pipeline de data preprocessing, convertissant les données non structurées en un format numérique que les systèmes d'artificial intelligence (AI) peuvent interpréter. Les ordinateurs ne peuvent pas comprendre intrinsèquement le langage humain ou les scènes visuelles ; ils ont besoin de représentations numériques pour effectuer des calculs. En segmentant les données en tokens, les ingénieurs permettent aux neural networks de mapper ces unités à des embeddings — des représentations vectorielles qui capturent le sens sémantique. Sans cette étape fondamentale, les modèles de machine learning seraient incapables d'identifier des motifs, d'apprendre le contexte ou de traiter les vastes datasets requis pour l'entraînement moderne.
Tokenisation vs. Token#
Bien que ces termes soient souvent entendus ensemble dans les discussions sur le deep learning, il est utile de distinguer la méthode du résultat pour comprendre le flux de travail.
- Tokenization est le processus (le verbe). Il fait référence à l'ensemble spécifique de règles ou d'algorithmes utilisés pour diviser les données. Pour le texte, cela peut impliquer l'utilisation de bibliothèques comme NLTK ou spaCy pour déterminer où une unité se termine et où une autre commence.
- Token est le résultat (le nom). Il s'agit de l'unité individuelle générée par le processus, telle qu'un mot unique, un sous-mot, un caractère ou un patch de pixels.
Méthodes à travers différents domaines#
La stratégie de tokenisation varie considérablement en fonction de la modalité des données, influençant la manière dont un foundation model perçoit le monde.
Tokenisation de texte en NLP#
En Natural Language Processing (NLP), l'objectif est de segmenter le texte tout en préservant le sens. Les méthodes initiales reposaient sur des techniques simples telles que la séparation des mots par des espaces ou la suppression des stop words. Cependant, les Large Language Models (LLMs) modernes utilisent des algorithmes de sous-mots plus sophistiqués, tels que Byte Pair Encoding (BPE) ou WordPiece. Ces algorithmes fusionnent de manière itérative les paires de caractères les plus fréquentes, permettant au modèle de gérer les mots rares en les décomposant en sous-composants familiers (par exemple, "smartphones" devient "smart" + "phones"). Cette approche équilibre la taille du vocabulaire avec la capacité à représenter un langage complexe.
Tokenisation visuelle en vision par ordinateur#
Traditionnellement, les modèles de computer vision (CV) comme les CNN traitaient les pixels à l'aide de fenêtres glissantes. L'introduction du Vision Transformer (ViT) a changé ce paradigme en appliquant la tokenisation aux images. L'image est découpée en patchs de taille fixe (par exemple, 16x16 pixels), qui sont ensuite aplatis et projetés linéairement. Ces "tokens visuels" permettent au modèle d'utiliser des mécanismes de self-attention pour apprendre des relations globales à travers l'image, de la même manière qu'un Transformer traite une phrase.
Applications concrètes#
La tokenisation est le moteur silencieux derrière de nombreuses applications d'IA utilisées aujourd'hui dans les environnements de production.
-
Détection d'objets à vocabulaire ouvert : Des architectures avancées comme YOLO-World utilisent une approche de multi-modal model. Lorsqu'un utilisateur entre une invite telle que "personne portant un chapeau rouge", le système tokenise ce texte et le mappe dans le même espace de caractéristiques que les données visuelles. Cela permet le zero-shot learning, permettant au modèle de détecter des objets sur lesquels il n'a pas été explicitement entraîné en faisant correspondre les tokens de texte aux caractéristiques visuelles.
-
Art et design génératifs : Dans la génération de text-to-image, les invites des utilisateurs sont tokenisées pour guider le processus de diffusion. Le modèle utilise ces tokens pour conditionner la génération, garantissant que l'image résultante s'aligne sur les concepts sémantiques (par exemple, "coucher de soleil", "plage") extraits pendant la phase de tokenisation.
Exemple en Python : Détection basée sur les tokens#
L'exemple suivant montre comment le paquet ultralytics utilise implicitement la tokenisation de texte dans le flux de travail YOLO-World. En définissant des classes personnalisées, le modèle tokenise ces chaînes pour rechercher des objets spécifiques de manière dynamique.
from ultralytics import YOLO
# Load a pre-trained YOLO-World model capable of text-based detection
model = YOLO("yolov8s-world.pt")
# Define custom classes; these are tokenized internally to guide the model
# The model will look for visual features matching these text tokens
model.set_classes(["backpack", "bus"])
# Run prediction on an image
results = model.predict("https://ultralytics.com/images/bus.jpg")
# Show results (only detects the tokenized classes defined above)
results[0].show()Impact sur la performance du modèle#
Le choix de la stratégie de tokenisation a un impact direct sur la accuracy et l'efficacité computationnelle. Une tokenisation inefficace peut entraîner des erreurs de type "out-of-vocabulary" en NLP ou la perte de détails fins dans l'analyse d'images. Des frameworks comme PyTorch et TensorFlow fournissent des outils flexibles pour optimiser cette étape. À mesure que les architectures évoluent — comme le modèle de pointe YOLO26 — un traitement efficace des données garantit que les modèles peuvent exécuter une real-time inference sur divers matériels, des puissants GPU cloud aux appareils de périphérie. Les équipes gérant ces flux de données complexes s'appuient souvent sur la Ultralytics Platform pour rationaliser l'annotation des jeux de données, le model training et le déploiement.






