Warum wird t-SNE nicht als Dimensionsreduktionstechnik für Clustering oder Klassifizierung verwendet?


34

In einer kürzlich durchgeführten Aufgabe wurde uns befohlen, PCA für die MNIST-Ziffern zu verwenden, um die Abmessungen von 64 (8 x 8 Bilder) auf 2 zu reduzieren. Anschließend mussten wir die Ziffern mit einem Gaußschen Mischungsmodell gruppieren. PCA, das nur zwei Hauptkomponenten verwendet, ergibt keine eindeutigen Cluster, weshalb das Modell keine nützlichen Gruppierungen erstellen kann.

Bei Verwendung von t-SNE mit 2 Komponenten sind die Cluster jedoch viel besser getrennt. Das Gaußsche Mischungsmodell erzeugt deutlichere Cluster, wenn es auf die t-SNE-Komponenten angewendet wird.

Der Unterschied zwischen PCA mit 2 Komponenten und t-SNE mit 2 Komponenten ist im folgenden Bildpaar zu sehen, in dem die Transformationen auf den MNIST-Datensatz angewendet wurden.

PCA auf MNIST

t-SNE auf MNIST

Ich habe gelesen, dass t-SNE nur zur Visualisierung von hochdimensionalen Daten verwendet wird, wie in dieser Antwort , aber angesichts der unterschiedlichen Cluster, die es erzeugt, warum wird es nicht als Dimensionsreduktionstechnik verwendet, die dann für Klassifizierungsmodelle oder als verwendet wird eine eigenständige Clustering-Methode?


2
Meinen Sie Klassifizierung oder Clustering? Der Titel sagt Clustering, aber der Beitrag sagt Klassifizierung.
usεr11852 sagt Reinstate Monic

Das tut mir leid. Ich möchte wissen, warum es nicht als Clustering- oder Dimensionsreduktionstechnik zur Klassifizierung verwendet wird. Ich habe bearbeitet, um dies zu reflektieren.
Willk

Zufälligerweise verwendet ein kürzlich veröffentlichtes Papier t-SNE und einen unbeaufsichtigten Clustering-Algorithmus, um Verbrennungsprozesse zu kennzeichnen.
tpg2114

2
Die von Ihnen verknüpfte Antwort zeigt, wie irreführend tSNE sein kann. Sie sehen im Plot Cluster, die in den Daten nicht vorhanden sind. Das ist schädlich, wenn Sie keine Etiketten haben. Und ziehen Sie nicht zu viele Schlussfolgerungen aus MNIST-Daten. Das ist ein sehr gut erzogener Datensatz ...
Anony-Mousse

1
Ich fand diesen Artikel hilfreich, um t-SNE und seine Nachteile zu erklären. Es gibt viele interaktive Visualisierungen, die dabei helfen, die Hauptpunkte hervorzuheben.
Willk

Antworten:


33

Der Hauptgrund dafür, dass -SNE in Klassifikationsmodellen nicht verwendet wird, ist, dass es keine Funktion vom ursprünglichen zum neuen (unteren) dimensionalen Raum lernt. Wenn wir versuchen würden, unseren Klassifikator für neue / unsichtbare Daten zu verwenden, sind wir daher nicht in der Lage, diese neuen Daten gemäß den vorherigen -SNE-Ergebnissen abzubilden / vorzuverarbeiten.ttt

Es wird daran gearbeitet, ein tiefes neuronales Netzwerk zu trainieren, um die SNE-Ergebnisse zu approximieren (z. B. das "parametrische" SNE- Papier), aber diese Arbeit wurde teilweise durch die Existenz von (tiefen) Autoencodern abgelöst . Autoencoder werden zunehmend als Input- / Pre-Prozessoren für Klassifikatoren (insbesondere DNN) eingesetzt, gerade weil sie eine sehr gute Leistung im Training erzielen und sich auf natürliche Weise auf neue Daten verallgemeinern lassen.ttt

tt SNE kann möglicherweise verwendet werden, wenn nicht entfernungsbasierte Clustering-Techniken wie FMM (Finite Mixture Models ) oder DBSCAN ( Density-based Models ) verwendet werden. Wie Sie richtig bemerken, kann in solchen Fällen die Ausgabe von -SNE sehr hilfreich sein. Das Problem in diesen Anwendungsfällen ist, dass einige Personen möglicherweise versuchen, die Cluster-Platzierung und nicht nur die Cluster-Mitgliedschaft einzulesen. Da die globalen Entfernungen verloren gehen, können Schlussfolgerungen aus der Cluster-Platzierung zu falschen Einsichten führen. Beachten Sie, dass es keinen großen Wert bietet, wenn Sie nur sagen: " Hey, wir haben alle s Cluster zusammen gefunden ", wenn Sie nicht sagen können, wovon sie weit entfernt sind. Wenn wir nur das finden wolltent11Wir hätten auch gleich zu Beginn die Klassifizierung verwenden können (was uns zur Verwendung von Autoencodern zurückführt).


1
Das Q scheint mehr nach Clustering als nach Klassifikation zu fragen. Zumindest Clustering ist im Titel.
Amöbe sagt Reinstate Monica

@amoeba: Ich dachte dasselbe und schrieb über die mögliche Verwendung durch nicht entfernungsbasiertes Clustering (z. B. FMM, DBSCAN), las dann aber die Frage: " Warum wird es nicht als Dimensionsreduktionstechnik verwendet, die dann zur Klassifizierung verwendet wird Modelle? "
usεr11852 sagt Reinstate Monic

Ja, aber der Titel Q ist anders. Ich denke, dass OP über den Unterschied verwirrt sein könnte, also könnte es sinnvoll sein, beide in Ihrem A anzusprechen !
Amöbe sagt Reinstate Monica

4
OK .. OK ... Sklavenfahrender Eukaryote ...: P
usεr11852 sagt Reinstate Monic

1
(+1) Ich wäre sehr daran interessiert, Ihre Gedanken zu dieser Clustering / t-SNE-Antwort zu hören . CC auch an @caseWestern - das könnte Sie auch interessieren.
Amöbe sagt Reinstate Monica

3

t-SNE speichert keine Abstände, schätzt jedoch im Grunde die Wahrscheinlichkeitsverteilungen. Theoretisch bilden die t-SNE-Algorithmen die Eingabe auf einen Kartenraum mit 2 oder 3 Dimensionen ab. Es wird angenommen, dass der Eingaberaum eine Gaußsche Verteilung und der Kartenraum eine t-Verteilung ist. Die verwendete Verlustfunktion ist die KL-Divergenz zwischen den beiden Verteilungen, die durch Gradientenabnahme minimiert wird.

Laut Laurens van der Maaten, Mitautor von t-SNE

t-SNE behält keine Abstände, sondern Wahrscheinlichkeiten bei, sodass das Messen eines Fehlers zwischen den euklidischen Abständen in High-D und Low-D unbrauchbar ist.

Referenz:

https://lvdmaaten.github.io/tsne/

https://www.oreilly.com/learning/an-illustrated-introduction-to-t-sne-algorithm


2

Als allgemeine Aussage: Bei einem ausreichend leistungsfähigen (/ geeigneten) Klassifikator oder Clusterer würde man niemals eine Dimensionsreduktion anwenden .

Bei der Dimensionsreduzierung gehen Informationen verloren.

Da ein solcher Clusterer oder Klassifikator (insbesondere Klassifikatoren, weniger Clusterer) intern bereits eine Form der Projektion in einen sinnvollen Raum einbindet. Und Dimensionalitätsreduktion ist auch Projektion auf einen (hoffnungsvollen) bedeutungsvollen Raum.

Die Dimensionsreduktion muss dies jedoch auf uninformierte Weise tun - sie weiß nicht, für welche Aufgabe Sie reduzieren. Dies gilt insbesondere für die Klassifizierung, bei der Sie Informationen direkt überwacht haben. Es gilt aber auch für Clustering, bei dem der Raum, in den man für das Clustering projizieren möchte, besser definiert ist (für diesen Algorithmus) als nur "weniger Dimensionen haben" Aufgabe, für die Sie reduzieren - Sie teilen ihr mit, welchen Algorithmus zur Dimensionsreduzierung Sie verwenden möchten.

Oft ist es besser, einen anderen Klassifikator / Clusterer zu verwenden, der eine nützliche Projektion enthält, als einen Dimensionsreduktionsschritt als Vorverarbeitung vor dem Clustering / Klassifizieren hinzuzufügen.

Eine Sache, die Dimentionalitätsreduzierung erfordert, ist jedoch die unbeaufsichtigte Art der Projektion auf den (hoffentlich) sinnvollen Raum. Dies ist nützlich, wenn Sie nur wenige Etikettendaten haben. Es gibt jedoch häufig andere Methoden, die eng mit Ihrem Klassifikator verknüpft sind (z. B. für neuronale Netze, mit Autoencoder, z. B. Deep-Believe-Netzvorbereitung), die besser funktionieren, da sie für diese endgültige Aufgabe entwickelt wurden. Nicht die allgemeinere Aufgabe der Dimensionsreduktion.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.