Auswahl der Hyperparameter mit T-SNE zur Klassifizierung


13

Als spezifisches Problem, mit dem ich arbeite (einen Wettbewerb), habe ich die folgende Einstellung: 21 Funktionen (numerisch auf [0,1]) und einen Binärausgang. Ich habe ca. 100 K Zeilen. Die Einstellung scheint sehr laut zu sein.

Ich und andere Teilnehmer wenden die Feature-Generierung für eine Weile an, und das Einbetten von t-verteilten stochastischen Nachbarn erwies sich in dieser Einstellung als ziemlich leistungsfähig.

Ich stolperte über diesen Beitrag "Wie benutze ich t-SNE effektiv ?"

Gibt es Faustregeln (Anzahl der Features, Dimension der Einbettung -> Wahl der Ratlosigkeit)?

Ich wende im Moment nur Ad-hoc-Einstellungen an, da das Iterieren verschiedener Einstellungen zu lange dauert. Vielen Dank für alle Kommentare.


Das ist eine gute Frage! Hoffentlich findet jemand meine Antwort so glanzlos, dass Sie eine andere Antwort erhalten (und ich lerne auch etwas Neues).
usεr11852 sagt Reinstate Monic

Antworten:


17

Ich verwende routinemäßig -SNE ( neben Clustering-Techniken - dazu am Ende mehr ), um das Vorhandensein von Clustern in meinen Daten zu erkennen / zu bewerten. Leider gibt es meines Wissens keine Standardmethode, um die richtige Ratlosigkeit zu wählen, ohne den erzeugten Datensatz mit reduzierten Dimensionen zu betrachten und dann zu beurteilen, ob er sinnvoll ist. Es gibt einige allgemeine Fakten, z. Abstände zwischen Clustern sind größtenteils bedeutungslos, kleine Ratlosigkeitswerte fördern kleine gerinnselartige Strukturen, aber das war's auch schon.t

Eine sehr grobe Faustregel besteht darin, zu überprüfen, welcher Fehlerwert mit jeder Rekonstruktion verbunden ist. t-SNE versucht, die Summe der Kullback-Leibler-Divergenzen zwischen der Verteilung der Abstände zwischen den Daten in der ursprünglichen Domäne und der Verteilung der Abstände zwischen den Daten in der Domäne mit reduzierter Dimension zu minimieren (tatsächlich sind die Zielverteilungen die Verteilungen der Wahrscheinlichkeiten, dass ein Punkt einen anderen Punkt als Nachbarpunkt auswählt, die jedoch direkt proportional zum Abstand zwischen den beiden Punkten sind). Es könnte argumentiert werden, dass kleinere Werte der KL-Divergenz bessere Ergebnisse zeigen. Diese Idee funktioniert in der Praxis nicht sehr gut, aber es würde theoretisch helfen, einige Bereiche der Ratlosigkeitswerte sowie einige Läufe des Algorithmus, die eindeutig suboptimal sind, auszuschließen. Ich erkläre, warum diese Heuristik alles andere als ein Allheilmittel ist und wie sie dennoch von geringem Nutzen sein könnte: Der Ratlosigkeitsparameter steigt monoton mit der Varianz des Gaußschen an, der zur Berechnung der Abstände / Wahrscheinlichkeiten verwendet wird. Wenn Sie also den Parameter für die Ratlosigkeit insgesamt erhöhen, erhalten Sie in absoluten Zahlen kleinere Abstände und nachfolgende KL-Divergenzwerte. Wenn Sie jedoch 20 Läufe mit der gleichen Ratlosigkeit haben und diese nicht anzeigen können (wollen), können Sie immer den mit der kleinsten Variablen auswählen, in der Hoffnung, dass er die ursprünglichen Abstände genauer beibehält. Gleiches gilt für die Wenn Sie jedoch 20 Läufe mit der gleichen Ratlosigkeit haben und diese nicht anzeigen können (wollen), können Sie immer den mit der kleinsten Variablen auswählen, in der Hoffnung, dass er die ursprünglichen Abstände genauer beibehält. Gleiches gilt für die Wenn Sie jedoch 20 Läufe mit der gleichen Ratlosigkeit haben und diese nicht anzeigen können (wollen), können Sie immer den mit der kleinsten Variablen auswählen, in der Hoffnung, dass er die ursprünglichen Abstände genauer beibehält. Gleiches gilt für die , der Näherungsparameter für die Barnes-Hut-Näherung, unter der Annahme, dass die Ratlosigkeit feststeht, ändert sich θ, und die Überprüfung der daraus resultierenden Kosten sollte ein wenig informativ sein. Letztendlich sind geringere Kosten mit originalgetreueren Rekonstruktionen verbunden. Es ist aber nicht alles verloren ...θθ

kktt-SNE wurde schließlich in erster Linie verwendet. Wenn die resultierende Darstellung für die untersuchten Eigenschaften nicht aussagekräftig ist, ist sie trotz des geringen Rekonstruktionsfehlers, der optischen Attraktivität usw. einfach nicht gut.

Lassen Sie mich darauf hinweisen, dass ich Heuristiken beschreibe . Wie eingangs erwähnt, ist die manuelle Überprüfung der Ergebnisse ein unverzichtbarer Weg, um die Qualität der resultierenden Dimensionsreduktion / Clusterbildung zu bewerten.


Danke dafür. Die Idee des Index, inwieweit das Clustering zur Klassifikation passt, klingt interessant.
Ric

4

Wir setzen die Ratlosigkeit normalerweise auf 5% der Datensatzgröße. Für einen Datensatz mit 100 KB Zeilen würde ich also mit einer Ratlosigkeit von 5000 oder mindestens 1000 beginnen, wenn Sie keinen Hochleistungscomputer zur Verfügung haben. Unsere Datensätze stammen aus der Durchflusszytometrieanalyse und haben in der Regel 50.000 bis 500.000 Datenpunkte mit jeweils 10 bis 20 numerischen Werten.


4

Es könnte für Sie interessant sein, einen Blick auf die "Automatische Auswahl der t-SNE-Ratlosigkeit" von Cao und Wang zu werfen :

t-Distributed Stochastic Neighbor Embedding (t-SNE) ist eine der am weitesten verbreiteten Methoden zur Dimensionsreduktion für die Datenvisualisierung, weist jedoch einen Hyperparameter für die Ratlosigkeit auf, für den eine manuelle Auswahl erforderlich ist. In der Praxis erfordert die richtige Abstimmung der t-SNE-Ratlosigkeit, dass Benutzer die Funktionsweise der Methode verstehen und praktische Erfahrungen sammeln. Wir schlagen ein Modellauswahlziel für t-SNE-Ratlosigkeit vor, das eine vernachlässigbare zusätzliche Berechnung erfordert, die über die des t-SNE selbst hinausgeht. Wir validieren empirisch, dass die von unserem Ansatz ermittelten Verwirrungseinstellungen mit Präferenzen übereinstimmen, die von menschlichen Experten in einer Reihe von Datensätzen ermittelt wurden. Die Ähnlichkeiten unserer Herangehensweise an Bayesianische Informationskriterien (BIC) und Mindestbeschreibungslänge (MDL) werden ebenfalls analysiert.


2
Was waren die Schlussfolgerungen?
Tim

1
S(Perplex.)=2KL(P||Q)+log(n)Perlex.n
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.