Ich möchte sehen, wie sich 7 Messgrößen des Textkorrekturverhaltens (Zeitaufwand für die Korrektur des Texts, Anzahl der Tastenanschläge usw.) aufeinander beziehen. Die Maßnahmen sind korreliert. Ich führte eine PCA durch, um zu sehen, wie die Kennzahlen auf PC1 und PC2 projiziert wurden, wodurch vermieden wurde, dass separate Zwei-Wege-Korrelationstests zwischen den Kennzahlen durchgeführt wurden.
Ich wurde gefragt, warum ich t-SNE nicht verwende, da die Beziehung zwischen einigen der Kennzahlen möglicherweise nicht linear ist.
Ich kann sehen, wie die Berücksichtigung von Nichtlinearität dies verbessern würde, aber ich frage mich, ob es einen guten Grund gibt, in diesem Fall PCA und nicht t-SNE zu verwenden. Ich bin nicht daran interessiert, die Texte nach ihrem Verhältnis zu den Maßnahmen zu gruppieren, sondern nach dem Verhältnis zwischen den Maßnahmen.
(Ich denke, EFA könnte auch einen besseren / anderen Ansatz haben, aber das ist eine andere Diskussion.) Im Vergleich zu anderen Methoden gibt es hier nur wenige Beiträge zu t-SNE, daher scheint die Frage eine Frage wert zu sein.
Antworten:
Stochastizität der Endlösung . PCA ist deterministisch; NE ist nicht. Man bekommt eine schöne Visualisierung und dann bekommt ihre Kollegin eine andere Visualisierung und dann werden sie künstlerisch, was besser aussieht und wenn ein Unterschied von in der Divergenz bedeutsam ist ... In PCA die richtige Antwort auf die Fragestellung ist garantiert. -SNE kann mehrere Minima haben, die zu unterschiedlichen Lösungen führen können. Dies erfordert mehrere Läufe und wirft Fragen zur Reproduzierbarkeit der Ergebnisse auf.t 0.03% KL(P||Q) t
Interpretierbarkeit des Mappings . Dies bezieht sich auf den obigen Punkt, aber nehmen wir an, dass sich ein Team auf einen bestimmten zufälligen Startwert / Lauf geeinigt hat. Nun stellt sich die Frage, was dies zeigt ... -SNE versucht, nur lokale / Nachbarn korrekt abzubilden, daher sollten unsere Erkenntnisse aus dieser Einbettung sehr vorsichtig sein. Globale Trends werden nicht genau dargestellt (und das kann möglicherweise eine großartige Sache für die Visualisierung sein). Andererseits ist PCA nur eine diagonale Drehung unserer anfänglichen Kovarianzmatrix und die Eigenvektoren repräsentieren ein neues axiales System in dem Raum, der von unseren ursprünglichen Daten überspannt wird. Wir können direkt erklären, was eine bestimmte PCA tut.t
Anwendung auf neue / unsichtbare Daten . -SNE ist nicht eine Funktion aus dem ursprünglichen Raum auf den neuen (niedrigeren) dimensionales Lernen und das ist ein Problem. In dieser Hinsicht ist -SNE ein nicht parametrischer Lernalgorithmus, so dass die Annäherung an einen parametrischen Algorithmus ein schlecht gestelltes Problem darstellt. Das Einbetten wird erlernt, indem die Daten direkt über den niedrigdimensionalen Raum bewegt werden. Das heißt, man bekommt keinen Eigenvektor oder ein ähnliches Konstrukt zur Verwendung in neuen Daten. Im Gegensatz dazu bieten die Eigenvektoren mit PCA ein neues Achsensystem, mit dem neue Daten direkt projiziert werden können. [Anscheinend könnte man versuchen, ein tiefes Netzwerk zu trainieren, um das zu lernent t t -SNE-Zuordnung (Sie können Dr. van der Maaten ~ 46 'in diesem Video hören , der etwas in dieser Richtung vorschlägt), aber es gibt eindeutig keine einfache Lösung.]
Unvollständige Daten . Nativ behandelt -SNE keine unvollständigen Daten. Der Fairness halber geht PCA auch nicht auf sie ein, sondern es gibt zahlreiche PCA-Erweiterungen für unvollständige Daten (z. B. probabilistische PCA ), die fast Standardmodellierungsroutinen sind. SNE kann derzeit nicht mit unvollständigen Daten umgehen (abgesehen davon, dass offensichtlich zuerst eine probabilistische PCA trainiert und die PC-Scores als Eingaben an SNE übergeben werden).t t t
Das ist kein (zu) kleiner Fall.k SNE löst ein Problem, das als Überfüllungsproblem bekannt ist, und zwar dahingehend, dass etwas ähnliche Punkte in höheren Dimensionen in niedrigeren Dimensionen übereinander kollabieren (mehr hier ). Wenn Sie nun die verwendeten Abmessungen erhöhen, wird das Problem der Überfüllung weniger schwerwiegend, d. H. Das Problem, das Sie mit -SNE lösen möchten, wird abgeschwächt. Sie können dieses Problem umgehen, es ist jedoch nicht trivial. Wenn Sie also einen dimensionalen Vektor als reduzierte Menge benötigen und nicht ganz klein ist, ist die Optimalität der Produktlösung fraglich. PCA hingegen bieten immer diet t k k k beste lineare Kombination in Bezug auf die Varianz erklärt. (Vielen Dank an @amoeba für das Bemerken, dass ich beim ersten Versuch, diesen Punkt zu skizzieren, ein Durcheinander gemacht habe.)
Ich erwähne weder Probleme mit den Rechenanforderungen (z. B. Geschwindigkeit oder Speichergröße) noch Probleme mit der Auswahl relevanter Hyperparameter (z. B. Ratlosigkeit). Ich denke, dies sind interne Probleme der SNE-Methodik und sind irrelevant, wenn man sie mit einem anderen Algorithmus vergleicht.t
Zusammenfassend ist -SNE großartig, aber da alle Algorithmen ihre Grenzen in Bezug auf ihre Anwendbarkeit haben. Ich benutze -SNE fast für jeden neuen Datensatz, den ich als erklärendes Datenanalysetool in die Hand nehme. Ich denke, obwohl es gewisse Einschränkungen hat, die es nicht annähernd so anwendbar machen wie PCA. Lassen Sie mich betonen, dass PCA auch nicht perfekt ist. Beispielsweise sind die PCA-basierten Visualisierungen denen von SNE oft unterlegen .t t t
quelle
https://stats.stackexchange.com/a/249520/7828
ist eine ausgezeichnete allgemeine Antwort.
Ich möchte mich etwas mehr auf Ihr Problem konzentrieren. Sie möchten anscheinend sehen, wie sich Ihre Stichproben in Bezug auf Ihre 7 Eingabevariablen verhalten. Das tut t-SNE nicht. Die Idee von SNE und t-SNE ist, Nachbarn nahe beieinander zu platzieren und die globale Struktur (fast) vollständig zu ignorieren.
Dies ist hervorragend für die Visualisierung geeignet, da ähnliche Elemente nebeneinander (und nicht übereinander, wie z. B. überfüllt) gezeichnet werden können.
Dies ist nicht gut für eine weitere Analyse. Die globale Struktur geht verloren, einige Objekte wurden möglicherweise daran gehindert, sich zu ihren Nachbarn zu bewegen, und die Trennung zwischen verschiedenen Gruppen wird quantitativ nicht beibehalten. Dies ist vor allem der Grund, warum z. B. Clustering auf der Projektion normalerweise nicht sehr gut funktioniert.
PCA ist genau das Gegenteil. Es wird versucht, die globalen Eigenschaften (Eigenvektoren mit hoher Varianz) beizubehalten, während Abweichungen mit geringer Varianz zwischen Nachbarn verloren gehen können.
quelle
Um einen angewandten Winkel anzugeben, schließen sich PCA und t-SNE nicht gegenseitig aus. In einigen Bereichen der Biologie haben wir es mit hochdimensionalen Daten zu tun (z. B. scRNA-seq besteht aus Tausenden von Dimensionen), bei denen t-SNE einfach nicht skaliert. Daher verwenden wir PCA zuerst, um die Dimensionalität der Daten zu reduzieren, und berechnen dann unter Berücksichtigung der Hauptkomponenten den Nachbarschaftsgraphen und betten den Graphen dann unter Verwendung von t-SNE (oder einem ähnlichen nichtlinearen Ansatz zur Dimensionalitätsreduzierung) in zwei Dimensionen ein wie UMAP) zur Visualisierung der Daten.
quelle