„Eine statistische Technik namens Tistributed Stochastic Neighbor-Einbettung stellt jeden Datenpunkt auf eine zwei- oder dreidimensionale Karte, um hochdimensionale Daten zu visualisieren. Dieser Vorgang wird ähnlich durch PCA -Methoden (Hauptkomponentenanalyse) durchgeführt, die auch verwendet werden, um die Abmessungen aus hoher Dimension zu projizieren. In diesem Artikel wird T-SNE erörtert, wie er sich von PCA unterscheidet und wie er in Sklearn funktioniert.”
Was ist die Reduzierung der Dimensionalität?
Dimensionalitätsreduktion codiert mehrdimensionale (n-Dimensionen) Daten mit reichlich vorhandenen Merkmalen in 2 oder 3 Abmessungen. Viele Entitätsfunktionen, die kategorisiert werden müssen. Das Training der Datenvisualisierung wäre komplexer und die Speicheranforderungen würden zunehmen, wenn mehr Funktionen verwendet wurden. Diese Eigenschaften sind häufig verbunden. Infolgedessen kann die Anzahl der Funktionen zurückgefahren werden. Die Anzahl der Funktionen kann gesenkt werden, wenn sich herausstellt, dass die drei verwendeten Funktionen verbunden sind. Wenn nur eine Funktion benötigt wird, können die Daten auf 3D -Raum in eine Linie projiziert werden, um 1D -Daten oder auf eine 2D -Ebene zu erstellen, wenn zwei Merkmale benötigt werden.
Was ist T-Sne?
Hohe dimensionale Daten werden unter Verwendung des als T-Distributed Stochastic Neighbor Einbettung (T-SNE) bekannten nicht übermäßigen Ansatzes für maschinelles Lernen (T-SNE) in niedrigere Abmessungen projiziert, die 2008 von Laurens van der Maaten und GeoFfery Hinton erstellt wurden. Es wird hauptsächlich zur Datenerforschung und zur hochdimensionalen Datenvisualisierung verwendet. T-Sne hilft Ihnen, die Organisation von Daten in einem hochdimensionalen Raum zu verstehen.
Wie funktioniert T-Sne??
Die Wahrscheinlichkeitsverteilung der jeden Punkt, die jeden Punkt umgeben, wird unter Verwendung des T-SNE-Algorithmus modelliert. Die Gruppe von Punkten, die jedem Punkt in diesem Zusammenhang am nächsten stehen, wird als Nachbarn bezeichnet. Das Modell dafür im ursprünglichen, hochdimensionalen Raum ist eine Gaußsche Verteilung.
Eine T-Verteilung wird verwendet, um dies im 2-dimensionalen Ausgangsraum zu simulieren. Ziel dieser Technik ist es, eine Kartierung auf dem 2-D-Raum zu finden, der die Unterschiede zwischen den Gesamtpunkten dieser beiden Verteilungen minimiert. Der Hauptfaktor, der die Anpassung beeinflusst, wird als Verwirrung bezeichnet. Die Anzahl der nächsten Nachbarn, die bei der Übereinstimmung der ursprünglichen und angepassten Verteilungen für jeden Punkt berücksichtigt werden, entspricht im Allgemeinen der Komplexität.
Wie unterscheidet sich PCA von T-Sne
PCA | T-Sne |
Es ist eine lineare Technik zur Reduzierung der Dimension. | Es ist eine nichtlineare Technik zur Reduzierung der Dimension. |
Es bemüht sich, die Gesamtstruktur der Daten aufrechtzuerhalten. | Es bemüht sich, die lokale Struktur der Daten aufrechtzuerhalten |
Es sind keine Hyperparameter beteiligt | Dies beinhaltet Hyperparameter wie Verwirrung, Lernrate und die Anzahl der Schritte. |
Behandelt Ausreißer nicht gut | Es kann Ausreißer behandeln. |
Implementierung von T-Sne in Sklearn
# Bibliotheken importieren
Numph als NP importieren
von Sklearn.vielfältiger Import Tsne
# Erstellen des Datensatzes
X = np.Array ([[0, 0, 0, 1], [0, 1, 1, 1], [1, 0, 1, 0], [1, 1, 1, 0]])
# Die Daten auf niedrigere Dimensionen projizieren
X_projeced = tsne (n_components = 2, lern_rate = 'auto', init = 'random', Verwirrung = 3).fit_transform (x)
drucken ("Neue Form der Daten ist", x_Projected.Form)
Ausgang
Die neue Form der Daten lautet (4, 2)
Abschluss
Wir haben etwas über den T-SNE-Algorithmus gelernt, mit dem hochdimensionale Daten in niedrigere und letztendlich visualisiert werden. Wir haben auch gesehen, warum wir Algorithmen zur Reduzierung von Dimensionalität brauchen und wie sich T-Sne von seinen alternativen Algorithmen unterscheidet: PCA. Wir haben auch T-SNE in sklearn mit dem „vielfältigen“ Modul implementiert und 4dimensionale Daten in zwei Dimensionen projiziert.