Glossar

t-distributed Stochastic Neighbor Embedding (t-SNE)

Erforsche t-SNE, eine leistungsstarke Technik zur Visualisierung hochdimensionaler Daten. Erfahre mehr über seine Einsatzmöglichkeiten, Vorteile und Anwendungen in KI und ML.

Trainiere YOLO Modelle einfach
mit Ultralytics HUB

Mehr erfahren

t-distributed Stochastic Neighbor Embedding (t-SNE) ist eine leistungsstarke Technik zur Dimensionalitätsreduktion, die in erster Linie für die Visualisierung hochdimensionaler Datensätze in einem niedrigdimensionalen Raum, typischerweise zwei oder drei Dimensionen, entwickelt wurde. Das von Laurens van der Maaten und Geoffrey Hinton entwickelte t-SNE zeichnet sich dadurch aus, dass es die zugrundeliegende lokale Struktur von Daten, wie z. B. Cluster und Verzweigungen, sichtbar macht. Dadurch werden komplexe Datensätze, die von Modellen der Künstlichen Intelligenz (KI) und des Maschinellen Lernens (ML) erzeugt oder verarbeitet werden, durch visuelle Inspektion leichter interpretierbar. Sie wird in vielen Bereichen eingesetzt, z. B. in der Computer Vision (CV) und Natural Language Processing (NLP).

Wie t-SNE funktioniert

Die Kernidee hinter t-SNE ist es, hochdimensionale Datenpunkte so auf einen niedrigdimensionalen Raum (z. B. eine 2D-Grafik) abzubilden, dass die Ähnlichkeiten zwischen den Punkten erhalten bleiben. Es modelliert die Ähnlichkeit zwischen Paaren von hochdimensionalen Punkten als bedingte Wahrscheinlichkeiten und versucht dann, eine niedrigdimensionale Einbettung zu finden, bei der die bedingten Wahrscheinlichkeiten zwischen den abgebildeten Punkten ähnlich sind. Dieser Prozess konzentriert sich auf die Beibehaltung der lokalen Struktur - Punkte, die im hochdimensionalen Raum nahe beieinander liegen, sollten auch in der niedrigdimensionalen Karte nahe beieinander liegen.

Im Gegensatz zu linearen Methoden wie der Hauptkomponentenanalyse (PCA) ist t-SNE nichtlinear und probabilistisch. Dadurch können komplexe, nicht lineare Beziehungen, wie z. B. gekrümmte Mannigfaltigkeiten, erfasst werden, die bei der PCA möglicherweise nicht berücksichtigt werden. Der Algorithmus berechnet die Ähnlichkeiten mit Hilfe einer Gauß-Verteilung im hochdimensionalen Raum und einer Student's t-Verteilung (mit einem Freiheitsgrad) im niedrigdimensionalen Raum. Die t-Verteilung hilft dabei, unähnliche Punkte in der niedrigdimensionalen Karte weiter voneinander zu trennen und das "Crowding-Problem", bei dem Punkte dazu neigen, sich zu verklumpen, abzuschwächen. Die optimale Einbettung wird durch Minimierung der Divergenz (insbesondere der Kullback-Leibler-Divergenz) zwischen den beiden Wahrscheinlichkeitsverteilungen mithilfe von Optimierungstechniken wie dem Gradientenabstieg gefunden. Ein detailliertes technisches Verständnis findest du in der Originalarbeit zu t-SNE.

t-SNE vs. PCA

Obwohl sowohl t-SNE als auch PCA gängige Verfahren zur Dimensionalitätsreduktion sind, unterscheiden sie sich erheblich:

  • Linearität: PCA ist eine lineare Technik, während t-SNE nichtlinear ist. Die PCA findet die Hauptkomponenten, die die Varianz maximieren, indem sie die Daten im Wesentlichen drehen. t-SNE modelliert paarweise Ähnlichkeiten.
  • Schwerpunkt: Die PCA zielt darauf ab, die globale Struktur und die maximale Varianz in den Daten zu erhalten. t-SNE legt den Schwerpunkt auf die Erhaltung der lokalen Struktur (Nachbarschaften von Punkten).
  • Anwendungsfall: PCA wird häufig zur Datenkomprimierung, Rauschunterdrückung und als Vorverarbeitungsschritt vor der Anwendung anderer ML-Algorithmen eingesetzt. t-SNE wird vor allem zur Datenvisualisierung und -exploration verwendet, da es Cluster aufdecken kann.
  • Interpretierbarkeit: Die Achsen in einer PCA-Darstellung stellen Hauptkomponenten dar und haben eine klare mathematische Interpretation in Bezug auf die Varianz. Die Achsen und Abstände zwischen den Clustern in einer t-SNE-Darstellung haben keine so direkte globale Interpretation; der Schwerpunkt liegt auf der relativen Gruppierung der Punkte.

Anwendungen in KI und ML

t-SNE ist ein unschätzbares Visualisierungstool für das Verständnis komplexer, hochdimensionaler Daten, die häufig in KI- und ML-Pipelines vorkommen, wie z.B. die Erforschung der Einbettungen, die von Deep-Learning-Modellen gelernt werden.

  • Visualisierung von Bildmerkmalen: In der Computer Vision kann t-SNE die hochdimensionalen Merkmalskarten oder Einbettungen visualisieren, die von Convolutional Neural Networks (CNNs) erzeugt werden, wie sie in Ultralytics YOLO Modelle, die zur Objekterkennung oder Bildklassifizierung verwendet werden. Durch die Anwendung von t-SNE auf Merkmale, die aus einem Datensatz wie ImageNet oder COCO extrahiert wurden, können Forscher/innen sehen, ob das Modell lernt, ähnliche Bilder oder Objektklassen im Merkmalsraum zu gruppieren, was Einblicke in das Verständnis des Modells ermöglicht. Dies hilft bei der Analyse der Modellleistung über die standardmäßigen Genauigkeitsmetriken hinaus (siehe YOLO ).
  • Worteinbettungen erforschen: Im NLP wird t-SNE verwendet, um Worteinbettungen (z. B. von Word2Vec, GloVe oder BERT) in 2D zu visualisieren. Auf diese Weise lassen sich semantische Zusammenhänge erkennen, z. B. können Wörter wie "König", "Königin", "Prinz" und "Prinzessin" unterschiedliche Cluster bilden oder sinnvolle relative Positionen aufweisen, was die Qualität der Sprachmodellierung zeigt. Tools wie der TensorFlow Projector nutzen oft t-SNE zur Visualisierung der Einbettung.
  • Verstehen der Trainingsdaten: Vor oder während des Modelltrainings kann t-SNE dabei helfen, die Struktur der Trainingsdaten selbst zu visualisieren und so möglicherweise bestimmte Cluster, Ausreißer oder Kennzeichnungsprobleme in Datensätzen aufzudecken, die über Plattformen wie Ultralytics HUB verwaltet werden.

Überlegungen

Obwohl t-SNE für die Visualisierung gut geeignet ist, gibt es einige Punkte zu beachten:

  • Rechenaufwand: Bei sehr großen Datensätzen kann es aufgrund der paarweisen Berechnungen rechenintensiv und langsam sein. Techniken wie die Annäherung an t-SNE oder die vorherige Anwendung von PCA können helfen.
  • Hyperparameter: Die Ergebnisse können von Hyperparametern wie "Perplexität" (bezogen auf die Anzahl der berücksichtigten nächsten Nachbarn) und der Anzahl der Iterationen für den Gradientenabstieg abhängen.
  • Globale Struktur: t-SNE konzentriert sich auf die lokale Struktur; die relativen Abstände zwischen den Clustern in der endgültigen Darstellung spiegeln die Trennung im ursprünglichen hochdimensionalen Raum möglicherweise nicht genau wider. Auch die Clustergrößen können irreführend sein. Implementierungen gibt es in Bibliotheken wie Scikit-learn und Frameworks wie PyTorch.
Alles lesen