Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

t-distributed Stochastic Neighbor Embedding (t-SNE) (Intégration de voisins stochastique t-distribuée)

Explorez t-SNE, une technique puissante pour la visualisation de données de haute dimension. Découvrez ses utilisations, ses avantages et ses applications dans l'IA et le ML.

Le t-distributed Stochastic Neighbor Embedding (t-SNE) est une technique sophistiquée et non linéaire de réduction de la dimensionnalité. non linéaire sophistiquée de réduction de la dimensionnalité de réduction de la dimensionnalité, principalement utilisée pour explorer et visualiser des données de haute dimension. Développée par Laurens van der Maaten et Geoffrey Hinton, cette méthode statistique permet aux chercheurs et aux et aux praticiens de l'apprentissage automatique de projeter des ensembles de données complexes comprenant des centaines ou des milliers de données. des ensembles de données complexes comportant des centaines ou des milliers de dimensions dans un espace bidimensionnel ou tridimensionnel. Contrairement aux méthodes linéaires, t-SNE excelle à préserver la structure locale des données, ce qui le rend exceptionnellement utile pour les tâches de visualisation de données où l'identification de la structure locale des données est essentielle. pour les tâches de visualisation de données où l'identification où l'identification des grappes et des relations entre les points de données est cruciale.

Comment fonctionne le t-SNE

L'algorithme fonctionne en convertissant les similitudes entre les points de données en probabilités conjointes. Dans l'espace t-SNE mesure la similarité entre les points à l'aide d'une distribution gaussienne, où les objets similaires ont une forte probabilité d'être choisis comme voisins. objets similaires ont une forte probabilité d'être choisis comme voisins. Il tente ensuite de cartographier ces points dans un dans un espace de dimension inférieure (l'"intégration") en minimisant la divergence entre la distribution de probabilités des données originales et celle des données intégrées. Ce processus s'appuie fortement sur les principes de l'apprentissage non supervisé principes d'apprentissage non supervisé, car il trouve des car il permet de trouver des modèles sans avoir besoin de données étiquetées.

Un aspect essentiel du t-SNE est sa capacité à gérer le "problème de l'encombrement" dans la visualisation. En utilisant une distribution t de Student à queue lourde dans la carte de dimension inférieure, il empêche les points de se chevaucher trop densément, de la carte en basse dimension, il empêche les points de se chevaucher trop densément visuellement séparables.

Applications dans le domaine de l'IA et du ML

La visualisation des données à haute dimension est une étape fondamentale du cycle de développement de l'IA. du cycle de développement de l'IA. t-SNE fournit une intuition sur la façon dont un modèle perçoit les données dans différents domaines.

  • Analyse des caractéristiques de la vision par ordinateur: En vision par ordinateur, les ingénieurs utilisent souvent le t-SNE pour interpréter ce qu'un modèle modèle d'apprentissage profond (DL) a appris. Par exemple, en extrayant les vecteurs de Par exemple, en extrayant les vecteurs de caractéristiques (embeddings) de l'épine dorsale d'un modèle d'apprentissage profond (DL) formé. YOLO11 juste avant la tête de détection finale, t-SNE peut projeter ces vecteurs sur un plan 2D. Si le modèle fonctionne bien, les images d'objets similaires (voitures, piétons, cyclistes, etc.) sont projetées sur un plan 2D, voitures, piétons, cyclistes) se regrouperont en grappes distinctes, vérifiant ainsi l'efficacité du processus d'extraction des caractéristiques. processus d'extraction des caractéristiques.
  • Traitement du langage naturel (NLP): t-SNE est largement utilisé pour visualiser les enchâssements de mots tels que ceux générés par les systèmes de traitement de texte. comme ceux générés par les modèles GloVe ou Transformer. Dans ces visualisations, les mots Dans ces visualisations, les mots ayant des significations sémantiques similaires, comme "roi" et "reine", apparaissent comme des voisins proches. Cela aide les chercheurs à comprendre les relations sémantiques capturées par le traitement du langage naturel (NLP) et à diagnostiquer les biais potentiels dans les données d'apprentissage.

t-SNE vs. techniques apparentées

Il est important de distinguer le t-SNE des autres méthodes de réduction de la dimensionnalité, car elles ont des objectifs différents dans le cadre de l'apprentissage automatique. dans un pipeline d'apprentissage automatique.

  • Analyse en composantes principales (ACP): L'ACP est une technique linéaire qui linéaire qui s'attache à préserver la variance globale des données. Bien que l'ACP soit plus rapide sur le plan informatique et déterministe, elle ne parvient souvent pas à saisir les relations complexes et non linéaires. ne parvient pas toujours à saisir les relations complexes et non linéaires. Un flux de travail courant consiste à utiliser l'ACP pour réduire les données brutes à typiquement à 30-50 dimensions, suivie de t-SNE pour la visualisation finale. Cette approche hybride réduit le bruit et la et la charge de calcul.
  • Autoencodeurs: Un autoencodeur est un type de réseau neuronal entraîné à la compression et à la reconstruire les données. Alors que les autoencodeurs peuvent apprendre des représentations non linéaires, le t-SNE est spécifiquement optimisé pour le traçage et l'inspection visuelle plutôt que pour la compression de données à des fins de stockage ou de transmission. pour le traçage et l'inspection visuelle plutôt que pour la compression de données à des fins de stockage ou de transmission.

Exemple de mise en œuvre Python

L'exemple suivant montre comment utiliser la célèbre bibliothèque Scikit-learn pour pour visualiser des données à haute dimension. Cet extrait génère des clusters synthétiques et les projette dans l'espace 2D à l'aide de la méthode t-SNE.

import matplotlib.pyplot as plt
from sklearn.datasets import make_blobs
from sklearn.manifold import TSNE

# Generate synthetic high-dimensional data (100 samples, 50 features)
X, y = make_blobs(n_samples=100, n_features=50, centers=3, random_state=42)

# Apply t-SNE to reduce features from 50 to 2 dimensions
# Perplexity relates to the number of nearest neighbors to consider
tsne = TSNE(n_components=2, perplexity=30, random_state=42)
X_embedded = tsne.fit_transform(X)

# Visualize the projected 2D data
plt.scatter(X_embedded[:, 0], X_embedded[:, 1], c=y)
plt.title("t-SNE Visualization of Features")
plt.show()

Limites et bonnes pratiques

Bien que puissant, le t-SNE nécessite un réglage d'un réglage minutieux des hyperparamètres. Le paramètre de paramètre de "perplexité", qui équilibre l'attention entre les aspects locaux et globaux des données, peut peut modifier radicalement le tracé obtenu. En outre, l'algorithme est coûteux en termes de calcul (complexité O(N²)), ce qui le rend lent pour les très grands ensembles de données par rapport aux méthodes de projection simples.

Les distances entre les grappes séparées dans un diagramme t-SNE ne représentent pas nécessairement des distances physiques exactes dans l'espace original ; elles indiquent principalement que les grappes sont distinctes. physiques exactes dans l'espace original ; elles indiquent principalement que les clusters sont distincts. Pour une exploration interactive des embeddings, outils comme le TensorFlow Embedding Projector sont souvent utilisés parallèlement à l'apprentissage du modèle. Au fur et à mesure que la recherche en IA progresse vers YOLO26 et d'autres architectures de bout en bout, l'interprétation de ces espaces à haute dimension reste une compétence essentielle pour la validation et le test des modèles. de validation et de test des modèles.

Rejoindre la communauté Ultralytics

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

Rejoindre maintenant