Ultralytics YOLO27 : Rejoins la liste d'attente.
Licence YOLO
Retour au glossaire Ultralytics

t-distributed Stochastic Neighbor Embedding (t-SNE)

t-SNE projette des données de grande dimension en 2D ou en 3D de sorte que les voisins restent voisins, ce qui révèle les regroupements. Découvre son fonctionnement, la perplexité, les pièges et le code.

L'intégration par voisin stochastique à distribution t (t-SNE) est une méthode non linéaire de réduction de dimensionnalité qui place des points de données de grande dimension sur une carte à deux ou trois dimensions, de sorte que les points voisins dans l'espace d'origine le restent sur la carte. Laurens van der Maaten et Geoffrey Hinton l'ont présentée dans un article publié en 2008 dans le Journal of Machine Learning Research. C'est un outil courant de visualisation des données pour les plongements, les caractéristiques d'image et les données d'expression génétique unicellulaires, où des centaines de dimensions masquent des groupes qu'un nuage de points 2D rend visibles.

Fonctionnement de t-SNE#

t-SNE convertit les distances en probabilités dans les deux espaces, puis déplace les points de la carte jusqu'à ce que les deux ensembles de probabilités correspondent :

  • Similarités en haute dimension : Pour chaque point, t-SNE associe une distribution gaussienne aux distances vers tous les autres points et les convertit en probabilités de choisir chacun d'eux comme voisin. La largeur de chaque distribution gaussienne est réglée de sorte que la perplexité de la distribution, approximativement le nombre effectif de voisins, corresponde à une valeur choisie par l'utilisateur. Les régions denses reçoivent ainsi des distributions gaussiennes étroites et les régions clairsemées, des distributions larges.
  • Similarités en basse dimension : Sur la carte, les similarités proviennent d'une loi de Student à un degré de liberté, dont les queues épaisses permettent à des points modérément éloignés de rester très espacés. Cela résout le problème d'encombrement : une carte 2D n'a pas assez de place pour représenter tous les voisins modérément proches qu'un point de grande dimension peut avoir.
  • Optimisation : La descente de gradient déplace les points de la carte pour minimiser la divergence de Kullback-Leibler entre les deux distributions. Une phase d'exagération précoce multiplie les similarités en haute dimension, par 12 dans scikit-learn, afin que les groupes naturels se forment tôt en amas compacts et bien séparés.

t-SNE exact compare chaque paire de points, de sorte que son coût augmente de manière quadratique avec la taille du jeu de données. L'approximation de Barnes-Hut, utilisée par défaut dans scikit-learn, réduit ce coût à O(N log N) pour les cartes 2D et 3D, et les implémentations accélérées par FFT comme openTSNE gèrent des millions de points.

Perplexité et lecture d'un graphique t-SNE#

La perplexité est le paramètre principal. Les valeurs entre 5 et 50 sont courantes, la valeur par défaut de scikit-learn est 30, et elle doit être inférieure au nombre de points. Une faible perplexité se concentre sur une structure très locale et peut fragmenter un groupe, tandis qu'une perplexité élevée fusionne des groupes voisins et révèle davantage la disposition globale. Comme l'optimisation n'est pas convexe, différentes graines aléatoires peuvent produire différentes cartes.

Trois caractéristiques rendent les graphiques t-SNE faciles à mal interpréter. La taille des groupes sur la carte renseigne peu sur l'étendue des groupes d'origine, car t-SNE étend les groupes denses et contracte les groupes clairsemés. Les distances entre groupes ne sont pas fiables non plus et, avec une faible perplexité, même du bruit aléatoire peut sembler former des groupes. TSNE de scikit-learn n'a pas non plus de méthode transform : une carte ajustée ne peut donc pas y placer de nouveaux points sans être recalculée, et les coordonnées t-SNE servent rarement de caractéristiques d'entrée à d'autres modèles.

t-SNE, PCA et UMAP#

L'analyse en composantes principales (PCA) est linéaire et déterministe, préserve les directions de variance globale maximale et projette instantanément de nouveaux points. t-SNE est non linéaire et stochastique, et préserve les voisinages locaux. Les deux méthodes sont souvent combinées : réduire des données de très grande dimension à environ 50 dimensions avec PCA avant d'exécuter t-SNE atténue le bruit et accélère le calcul. Par défaut, t-SNE de scikit-learn initialise la carte à partir de PCA, ce qui préserve davantage la disposition globale. UMAP, introduit en 2018, construit lui aussi un graphe de voisinage, s'exécute généralement plus vite sur les grands jeux de données, préserve souvent davantage la structure globale et peut projeter de nouveaux points sur une carte existante.

Cet exemple projette en 2D, avec les deux méthodes, les chiffres manuscrits de 64 pixels fournis avec scikit-learn et mesure la fidélité, c'est-à-dire dans quelle mesure les plus proches voisins de chaque point sur la carte étaient aussi ses voisins en 64 dimensions :

from sklearn.datasets import load_digits
from sklearn.decomposition import PCA
from sklearn.manifold import TSNE, trustworthiness

# 1,797 handwritten digits, each an 8x8 image flattened to 64 features
X, y = load_digits(return_X_y=True)

# Project to 2D with a linear method and with t-SNE
X_pca = PCA(n_components=2).fit_transform(X)
X_tsne = TSNE(n_components=2, perplexity=30, random_state=0).fit_transform(X)

# Trustworthiness near 1.0 means a point's 2D neighbors were also its 64D neighbors
print(f"PCA trustworthiness:   {trustworthiness(X, X_pca, n_neighbors=10):.3f}")
print(f"t-SNE trustworthiness: {trustworthiness(X, X_tsne, n_neighbors=10):.3f}")

Le script affiche 0.830 pour PCA et 0.993 pour t-SNE. Réduire 64 dimensions à deux directions linéaires place de nombreux points à côté de chiffres qui en étaient éloignés dans l'espace à 64 dimensions, tandis que la carte t-SNE conserve presque toutes les relations de plus proches voisins parmi les 10 voisins d'origine.

Applications concrètes#

  • Inspection des caractéristiques apprises : Projeter les sorties d'extraction de caractéristiques d'un réseau permet de voir si les classes visuellement similaires forment des groupes distincts. Les modèles YOLO26 renvoient un vecteur de caractéristiques par image via model.embed(), extrait par défaut de l'avant-dernière couche. Une carte t-SNE de ces vecteurs montre comment un modèle entraîné sur mesure sépare ses classes.
  • Curation de jeux de données : Les images situées dans l’îlot d’une autre classe sont souvent mal étiquetées, et les amas denses de points presque identiques signalent des doublons. Le panneau Clustering d’Ultralytics Platform projette les plongements d’images d’un jeu de données dans un nuage de points 2D similaire pour effectuer ces vérifications.
  • Plongements de mots et de documents : Les cartes de vecteurs de mots placent les mots apparentés, comme les noms de pays ou les nombres, dans des groupes voisins.
  • Génomique unicellulaire : Les chercheurs réduisent à 2D l'expression de milliers de gènes par cellule afin d'identifier les types cellulaires. t-SNE a longtemps été la méthode de référence pour cette analyse, avant que de nombreux groupes passent à UMAP.

Découvre les solutions

La vision par ordinateur dans le sport

La vision par ordinateur dans le sport

Découvre comment Ultralytics YOLO propulse la vision par ordinateur dans le sport grâce au suivi des joueurs et du ballon, aux analyses de performance, aux conseils d’entraînement et à la rééducation des athlètes.
En savoir plus
Vision par ordinateur pour les images aériennes

Vision par ordinateur pour les images aériennes

Transforme les images de drones et les images aériennes en informations exploitables en temps réel pour l’agriculture, l’aquaculture, la conservation et l’analyse géospatiale avec Ultralytics YOLO.
En savoir plus
Vision par ordinateur dans l’aérospatiale

Vision par ordinateur dans l’aérospatiale

Applique la vision par ordinateur dans l’aérospatiale avec Ultralytics YOLO pour l’inspection des aéronefs, la détection des corps étrangers sur les pistes, les opérations au sol des aéroports et la détection des défauts des matériaux composites.
En savoir plus
La vision par ordinateur dans la sécurité

La vision par ordinateur dans la sécurité

Protège chaque site avec les modèles Ultralytics YOLO. L’IA visuelle permet la surveillance des périmètres, la détection des menaces, la reconnaissance des plaques d’immatriculation et la sécurité au travail.
En savoir plus
La vision par ordinateur en robotique

La vision par ordinateur en robotique

Donne plus de capacités à tes machines grâce aux modèles Ultralytics YOLO. Dans la robotique, l’IA visuelle permet la navigation autonome, la perception, le suivi des objets et le contrôle en temps réel.
En savoir plus
La vision par ordinateur dans la logistique

La vision par ordinateur dans la logistique

Optimise la logistique avec les modèles Ultralytics YOLO. La vision par IA permet d’inspecter les colis, de les trier, de suivre les véhicules et de surveiller la sécurité des entrepôts en temps réel.
En savoir plus
La vision par ordinateur dans le commerce de détail

La vision par ordinateur dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA permet de suivre les stocks, de surveiller les rayons, de gérer les files d’attente et de mieux comprendre les clients.
En savoir plus
La vision par ordinateur dans le secteur de la santé

La vision par ordinateur dans le secteur de la santé

Crée des solutions de santé avec les modèles Ultralytics YOLO. La vision par IA dans le secteur de la santé accélère l’imagerie médicale, améliore les diagnostics et facilite la surveillance des patients.
En savoir plus
La vision par ordinateur dans l’industrie manufacturière

La vision par ordinateur dans l’industrie manufacturière

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA améliore le contrôle qualité, la détection des défauts, le respect des règles concernant les EPI et l’automatisation des chaînes de montage.
En savoir plus
La vision par ordinateur dans l’automobile

La vision par ordinateur dans l’automobile

Mets la vision par ordinateur au service de l’automobile avec les modèles Ultralytics YOLO. La vision par IA renforce la sécurité routière, l’aide à la conduite et l’automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Vision par ordinateur dans l’agriculture

Vision par ordinateur dans l’agriculture

Fais entrer l’IA de vision dans l’agriculture intelligente avec les modèles Ultralytics YOLO. Optimise le suivi des cultures et du bétail ainsi que l’agriculture de précision pour obtenir des rendements plus élevés et plus intelligents.
En savoir plus

Construisons ensemble l’avenir de l’IA !

Commence ton parcours vers l’avenir de l’apprentissage automatique