Glossaire

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

Explore le t-SNE, une technique puissante de visualisation des données à haute dimension. Apprends ses utilisations, ses avantages et ses applications dans l'IA et la ML.

Entraîne les modèles YOLO simplement
avec Ultralytics HUB

En savoir plus

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. Cela rend 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) plus faciles à interpréter par le biais d'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 les 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 se concentre sur la conservation de 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, qui pourraient échapper à l'ACP. 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" où les points ont tendance à s'agglutiner les uns aux autres. 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, tu peux te 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 diffèrent considérablement :

  • Linéarité : L'ACP est une technique linéaire, tandis que le 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.
  • Focus : L'ACP vise à préserver la structure globale et la variance maximale des données. t-SNE donne la priorité à la préservation de la structure locale (voisinages 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 d'appliquer 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 grappes.
  • 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 groupes dans un graphique t-SNE n'ont pas une interprétation globale aussi directe ; l'accent est mis sur le regroupement relatif des points.

Applications dans le domaine de l'IA et de la ML

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

  • Visualiser les caractéristiques d'une image : Dans le domaine de la vision par ordinateur, le réseau 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), tels que ceux qui se trouvent à l'intérieur des réseaux de neurones convolutifs. Ultralytics YOLO 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 un aperçu 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 deYOLO ).
  • Exploration de l'intégration des mots : Dans le domaine du TAL, le t-SNE est utilisé pour visualiser en 2D l'intégration des mots (par exemple, à partir de Word2Vec, GloVe ou BERT). 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 projecteurTensorFlow utilisent souvent t-SNE pour la visualisation de l'intégration.
  • Comprendre les données de formation : Avant ou pendant la formation du modèle, t-SNE peut aider à visualiser la structure des données de formation 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 plateformes comme Ultralytics HUB.

Considérations

Bien qu'il soit puissant pour la visualisation, le t-SNE a quelques considérations à prendre en compte :

  • Coût de calcul : il peut être coûteux en calcul et lent pour les très grands ensembles de données en raison de ses calculs par paire. Des techniques telles que l'approximation de t-SNE ou l'application de l'ACP en premier lieu peuvent aider.
  • Hyperparamètres : Les résultats peuvent être sensibles à des hyperparamètres comme la "perplexité" (liée au nombre de plus proches voisins 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 telles que Scikit-learn et des frameworks tels que PyTorch.
Tout lire