Unterschied zwischen PCA und spektraler Clusterbildung für einen kleinen Satz von Booleschen Merkmalen

10

Ich habe einen Datensatz von 50 Proben. Jede Stichprobe besteht aus 11 (möglicherweise korrelierten) Booleschen Merkmalen. Ich möchte einige Beispiele für die Visualisierung dieser Beispiele in einem 2D-Diagramm geben und untersuchen, ob sich unter den 50 Beispielen Cluster / Gruppierungen befinden.

Ich habe die folgenden zwei Ansätze ausprobiert:

(a) Führen Sie PCA auf der 50x11-Matrix aus und wählen Sie die ersten beiden Hauptkomponenten aus. Projizieren Sie die Daten auf das 2D-Diagramm und führen Sie einfache K-Mittel aus, um Cluster zu identifizieren.

(b) Konstruieren Sie eine 50x50 (Cosinus) Ähnlichkeitsmatrix. Führen Sie eine spektrale Clusterbildung zur Verringerung der Dimensionalität durch, gefolgt von K-Mitteln.

Was ist der konzeptionelle Unterschied zwischen direkter PCA und der Verwendung der Eigenwerte der Ähnlichkeitsmatrix? Ist einer besser als der andere?

Gibt es auch bessere Möglichkeiten, solche Daten in 2D zu visualisieren? Da meine Stichprobengröße immer auf 50 begrenzt ist und mein Funktionsumfang immer im Bereich von 10 bis 15 liegt, bin ich bereit, mehrere Ansätze im laufenden Betrieb auszuprobieren und den besten auszuwählen.

Verwandte Frage: Gruppieren von Beispielen nach Clustering oder PCA

user2602740
quelle

Antworten:

9

Was ist der konzeptionelle Unterschied zwischen direkter PCA und der Verwendung der Eigenwerte der Ähnlichkeitsmatrix?

PCA wird auf einer Kovarianz- oder Korrelationsmatrix durchgeführt, aber die spektrale Clusterbildung kann jede Ähnlichkeitsmatrix (z. B. mit Kosinusähnlichkeit erstellt) verwenden und dort Cluster finden.

Zweitens basieren spektrale Clustering-Algorithmen auf der Partitionierung von Graphen (normalerweise geht es darum, die besten Schnitte des Graphen zu finden), während PCA die Richtungen findet, die den größten Teil der Varianz aufweisen. Obwohl wir in beiden Fällen die Eigenvektoren finden, sind die konzeptionellen Ansätze unterschiedlich.

Und schließlich sehe ich, dass PCA und spektrale Clusterbildung unterschiedlichen Zwecken dienen: Eine ist eine Technik zur Reduzierung der Dimensionalität und die andere ist eher ein Ansatz zur Clusterbildung (dies erfolgt jedoch über die Reduzierung der Dimensionalität).

Alexey Grigorev
quelle
5

Für boolesche Funktionen (dh kategorial mit zwei Klassen) besteht eine gute Alternative zur Verwendung von PCA in der Verwendung von Multiple Correspondence Analysis (MCA), bei der es sich lediglich um die Erweiterung von PCA auf kategoriale Variablen handelt (siehe verwandten Thread ). Für einige Hintergrundinformationen zu MCA sind die Papiere Husson et al. (2010) oder Abdi und Valentin (2007) . Ein ausgezeichnetes R-Paket zur Durchführung von MCA ist FactoMineR . Es bietet Ihnen Werkzeuge zum Zeichnen zweidimensionaler Karten der Belastungen der Beobachtungen auf die Hauptkomponenten, was sehr aufschlussreich ist.

Unten finden Sie zwei Kartenbeispiele aus einem meiner früheren Forschungsprojekte (dargestellt mit ggplot2). Ich hatte nur ungefähr 60 Beobachtungen und es gab gute Ergebnisse. Die erste Karte repräsentiert die Beobachtungen im Raum PC1-PC2, die zweite Karte im Raum PC3-PC4 ... Die Variablen werden auch in der Karte dargestellt, was bei der Interpretation der Bedeutung der Dimensionen hilft. Wenn Sie die Erkenntnisse aus mehreren dieser Karten sammeln, erhalten Sie ein ziemlich schönes Bild davon, was in Ihren Daten passiert.

Geben Sie hier die Bildbeschreibung ein

Auf der oben verlinkten Website finden Sie auch Informationen zu einem neuartigen Verfahren, HCPC, das für Hierarchical Clustering on Principal Components steht und für Sie von Interesse sein könnte. Grundsätzlich funktioniert diese Methode wie folgt:

  • eine MCA durchführen,
  • kk<pp
  • Führen Sie ein agglomeratives (Bottom-Up) hierarchisches Clustering im Bereich der beibehaltenen PCs durch. Da Sie die Koordinaten der Projektionen der Beobachtungen im PC-Raum (reelle Zahlen) verwenden, können Sie den euklidischen Abstand mit dem Ward-Kriterium für die Verknüpfung verwenden (minimale Zunahme der Varianz innerhalb des Clusters). Sie können das Dendogramm in der gewünschten Höhe schneiden oder die R-Funktion schneiden lassen, wenn oder basierend auf einer Heuristik,
  • (optional) Stabilisieren Sie die Cluster, indem Sie ein K-Mittel-Clustering durchführen. Die anfängliche Konfiguration wird durch die Zentren der Cluster angegeben, die im vorherigen Schritt gefunden wurden.

Dann haben Sie viele Möglichkeiten, die Cluster zu untersuchen (repräsentativste Merkmale, repräsentativste Personen usw.)

Antoine
quelle