Glossaire

Emboîtement stochastique de voisins distribué en t (t-SNE)

Explorez le t-SNE, une technique puissante de visualisation des données à haute dimension. Découvrez ses utilisations, ses avantages et ses applications en IA et en ML.

Le t-distributed Stochastic Neighbor Embedding (t-SNE) est une technique puissante utilisée pour la réduction de la dimensionnalité, principalement conçue pour visualiser des ensembles de données à haute dimension dans un espace à faible dimension, généralement à deux ou trois dimensions. Développé par Laurens van der Maaten et Geoffrey Hinton, le t-SNE excelle à révéler la structure locale sous-jacente des données, telle que les clusters et les manifolds. Les ensembles de données complexes générés ou traités par des modèles d'intelligence artificielle (IA) et d'apprentissage automatique (ML) sont ainsi plus faciles à interpréter par une inspection visuelle. Il est largement utilisé dans divers domaines, notamment la vision artificielle (CV) et le traitement du langage naturel (NLP).

Comment fonctionne le t-SNE

L'idée centrale de t-SNE est de cartographier des points de données à haute dimension dans un espace à faible dimension (par exemple, un graphique en 2D) de manière à préserver les similitudes entre les points. Il modélise la similarité entre des paires de points à haute dimension sous forme de probabilités conditionnelles et tente ensuite de trouver un encastrement à basse dimension où les probabilités conditionnelles entre les points cartographiés sont similaires. Ce processus vise à conserver la structure locale : les points qui sont proches les uns des autres dans l'espace à haute dimension doivent rester proches les uns des autres dans la carte à basse dimension.

Contrairement aux méthodes linéaires telles que l'analyse en composantes principales (ACP), le t-SNE est non linéaire et probabiliste. Cela lui permet de capturer des relations complexes et non linéaires, comme les manifolds courbes, que l'ACP pourrait manquer. L'algorithme calcule les similitudes à l'aide d'une distribution gaussienne dans l'espace de haute dimension et d'une distribution t de Student (avec un degré de liberté) dans l'espace de basse dimension. L'utilisation de la distribution t permet de séparer davantage les points dissemblables dans la carte à faible dimension, ce qui atténue le "problème d'encombrement" lorsque les points ont tendance à se regrouper. L'intégration optimale est trouvée en minimisant la divergence (plus précisément, la divergence de Kullback-Leibler) entre les deux distributions de probabilité à l'aide de techniques d'optimisation telles que la descente de gradient. Pour une compréhension technique approfondie, veuillez vous référer à l'article original sur le t-SNE.

t-SNE vs. PCA

Bien que le t-SNE et l'ACP soient des techniques courantes de réduction de la dimensionnalité, elles présentent des différences significatives :

  • Linéarité : L'ACP est une technique linéaire, tandis que le réseau t-SNE est non linéaire. L'ACP trouve les composantes principales qui maximisent la variance, essentiellement en faisant pivoter les données. t-SNE modélise les similarités par paire.
  • Objectif : L'ACP vise à préserver la structure globale et la variance maximale des données. Le t-SNE donne la priorité à la préservation de la structure locale (voisinage des points).
  • Cas d'utilisation : L'ACP est souvent utilisée pour la compression des données, la réduction du bruit et comme étape de prétraitement des données avant l'application d'autres algorithmes ML. t-SNE est principalement utilisé pour la visualisation et l'exploration des données en raison de sa capacité à révéler les clusters.
  • Interprétabilité : Les axes d'un diagramme ACP représentent les composantes principales et ont une interprétation mathématique claire liée à la variance. Les axes et les distances entre les grappes dans un diagramme t-SNE n'ont pas une interprétation globale aussi directe ; l'accent est mis sur le regroupement relatif des points.

Applications en IA et ML

t-SNE est un outil de visualisation inestimable pour comprendre les données complexes et de haute dimension souvent rencontrées dans les pipelines d'IA et de ML, comme l'exploration des enchâssements appris par les modèles d'apprentissage profond.

  • Visualisation des caractéristiques des images : Dans le domaine de la vision artificielle, le t-SNE permet de visualiser les cartes de caractéristiques à haute dimension ou les encastrements générés par les réseaux neuronaux convolutifs (CNN), comme ceux des modèles YOLO d'Ultralytics utilisés pour la détection d'objets ou la classification d'images. En appliquant t-SNE aux caractéristiques extraites d'un ensemble de données comme ImageNet ou COCO, les chercheurs peuvent voir si le modèle apprend à regrouper des images ou des classes d'objets similaires dans l'espace des caractéristiques, ce qui donne une idée de la compréhension du modèle. Cela permet d'analyser les performances du modèle au-delà des mesures de précision standard (voir les mesures de performance de YOLO).
  • Exploration d'agrégats de mots : Dans le domaine du TAL, le t-SNE est utilisé pour visualiser les enchâssements de mots (par exemple, à partir de Word2Vec, GloVe ou BERT) en 2D. Cela permet d'inspecter les relations sémantiques ; par exemple, des mots comme "roi", "reine", "prince" et "princesse" peuvent former des groupes distincts ou présenter des positions relatives significatives, démontrant ainsi la qualité de la modélisation du langage. Des outils tels que le projecteur TensorFlow utilisent souvent t-SNE pour la visualisation de l'intégration.
  • Comprendre les données d'apprentissage : Avant ou pendant l'apprentissage du modèle, t-SNE peut aider à visualiser la structure des données d'apprentissage elles-mêmes, révélant potentiellement des clusters distincts, des valeurs aberrantes ou des problèmes d'étiquetage dans les ensembles de données gérés par des plates-formes comme Ultralytics HUB.

Considérations

Bien que puissant pour la visualisation, le t-SNE présente quelques inconvénients :

  • Coût de calcul : il peut s'avérer coûteux et lent pour les très grands ensembles de données en raison de ses calculs par paire. Des techniques telles que l'approximation du t-SNE ou l'application de l'ACP en premier lieu peuvent être utiles.
  • Hyperparamètres : Les résultats peuvent être sensibles à des hyperparamètres tels que la "perplexité" (liée au nombre de voisins les plus proches pris en compte) et le nombre d'itérations pour la descente de gradient.
  • Structure globale : t-SNE se concentre sur la structure locale ; les distances relatives entre les grappes dans le graphique final peuvent ne pas refléter avec précision la séparation dans l'espace à haute dimension d'origine. La taille des grappes peut également être trompeuse. Des implémentations sont disponibles dans des bibliothèques comme Scikit-learn et des frameworks comme PyTorch.

Rejoindre la communauté Ultralytics

Rejoignez l'avenir de l'IA. Connectez-vous, collaborez et évoluez avec des innovateurs mondiaux.

S'inscrire
Lien copié dans le presse-papiers