Silhouettenkoeffizient
Die Silhouette gibt für eine Beobachtung an, wie gut die Zuordnung zu den beiden nächstgelegenen Clustern ist. Der Silhouettenkoeffizient gibt eine von der Cluster-Anzahl unabhängige Maßzahl für die Qualität eines Clusterings an. Der Silhouettenplot visualisiert sowohl alle Silhouetten eines Datensatzes als auch den Silhouettenkoeffizient für die einzelnen Cluster und den Gesamtdatensatz.
Silhouette
Strukturierung | Wertebereich von |
---|---|
stark | |
mittel | |
schwach | |
keine Struktur |
Gehört das Objekt zum Cluster so ist die Silhouette von definiert als:[1]
mit die Distanz eines Objekts zum Cluster und die Distanz eines Objekts zum nächstgelegenen Cluster . Dabei wird die Differenz des Abstands normiert mit der maximalen Distanz. Damit folgt, dass für ein Objekt zwischen −1 und 1 liegt:
- Ist die Silhouette , dann liegen die Objekte des nächstgelegenen Clusters näher an dem Objekt als die Objekte des Clusters zu dem das Objekt gehört. Dies weist darauf hin, dass das Clustering verbessert werden kann.
- Ist die Silhouette , dann liegt das Objekt zwischen zwei Clustern und
- ist die Silhouette nahe bei Eins, so liegt das Objekt in einem Cluster.
Die Distanz wird berechnet als
als der Mittelwert der Distanz zwischen allen anderen Objekten im Cluster und dem Objekt ( ist die Anzahl der Objekte im Cluster ). Analog wird die Distanz zum nächstgelegenen Cluster berechnet als die minimale durchschnittliche Distanz
- .
Dabei wird für alle Cluster , die das Objekt nicht enthalten, die Distanz berechnet. Der nächstgelegene Cluster ist derjenige, der die kleinste Entfernung aufweist.
Silhouettenkoeffizient
Der Silhouettenkoeffizient ist definiert als
also als das arithmetische Mittel aller Silhouetten des Clusters definiert. Der Silhouettenkoeffizient kann für jeden Cluster oder für den Gesamtdatensatz berechnet werden.
Beim k-means- oder k-medoid-Algorithmus kann man mit ihm die Ergebnisse mehrerer Durchläufe des Algorithmus vergleichen, um bessere Parameter zu erhalten. Dies bietet sich insbesondere für die genannten Algorithmen an, da sie randomisiert starten und so unterschiedliche lokale Maxima finden können. Der Einfluss des Parameters kann so reduziert werden, da der Silhouettenkoeffizient von der Cluster-Anzahl unabhängig ist und somit Ergebnisse vergleichen kann, die mit unterschiedlichen Werten für erhalten wurden.
Silhouettenplot
Die grafische Darstellung der Silhouetten erfolgt für alle Beobachtungen gemeinsam in einem Silhouettenplot. Für alle Beobachtungen, die zu einem Cluster gehören, wird der Wert der Silhouette als waagerechte (oder senkrechte) Linie dargestellt. Die Beobachtungen in einem Cluster werden dabei nach der Größe der Silhouetten geordnet.
In der rechten Grafiken werden für vier verschiedene Datensätze die Daten, das Dendrogramm für eine hierarchische Clusteranalyse (euklidische Distanz, Single-Linkage) und der Silhouettenplot für die Lösung mit zwei Clustern dargestellt (von oben nach unten). Die Zuordnung der Datenpunkte durch die hierarchische Clusteranalyse in der Zwei-Cluster-Lösung wird durch die Farben rot (Zuordnung zu Cluster 1) und blau (Zuordnung zu Cluster 2) symbolisiert.
Je besser die beiden Cluster in den Daten getrennt sind (von links nach rechts), desto besser kann die hierarchische Clusteranalyse die Datenpunkte korrekt zuordnen. Auch der Silhouettenplot verändert sich. Während für den linken Datensatz negative Silhouetten vorkommen, finden sich im ganz rechten Datensatz nur positive Silhouetten. Auch die Silhouettenkoeffizienten werden von links nach ganz rechts größer, sowohl für die einzelnen Cluster als auch für den gesamten Datensatz.
Beispiel
Der Iris flower-Datensatz besteht aus jeweils 50 Beobachtungen dreier Arten von Schwertlilien (Iris Setosa, Iris Virginica und Iris Versicolor), an denen jeweils vier Attribute der Blüten erhoben wurden: Die Länge und die Breite des Sepalum (Kelchblatt) und des Petalum (Kronblatt). Rechts zeigt eine Streudiagramm-Matrix die Daten für die vier Variablen.
Für die vier Größen wurde eine hierarchische Clusteranalyse mit der euklidischen Distanz und der Single-Linkage Methode durchgeführt. Oben sind folgenden Grafiken dargestellt:
- Links oben: Ein Dendrogramm der Clusterlösung. Hier sieht man, dass sich eine Zwei- oder Vier-Cluster-Lösung anböte.
- Rechts oben: Grafische Darstellung der Silhouetten der Zwei-Cluster-Lösung. Im ersten Cluster sind negative Silhouetten zu finden, sodass diese Beobachtungen eher falsch zugeordnet sind. Eventuell ist eine Lösung mit mehr Clustern besser geeignet.
- Links unten: Grafische Darstellung der Silhouetten der Drei-Cluster-Lösung. Der erste Cluster wird in zwei Teilcluster zerlegt (); zwar sind im ersten Cluster die negativen Silhouetten verschwunden, jedoch haben Beobachtungen im zweiten Cluster nun negative Silhouetten.
- Rechts unten: Grafische Darstellung der Silhouetten der Vier-Cluster-Lösung. Der zweite Cluster der Zwei-Cluster-Lösung wird nun in zwei Teilcluster zerlegt (). Es gibt fast keine negativen Silhouetten mehr.
Es ergeben sich folgende Silhouettenkoeffizienten
Silhouettenkoeffizienten | |||||
---|---|---|---|---|---|
Anzahl Cluster | Total | ||||
2 | 150 / 0,52 | 78 / 0,39 | 72 / 0,66 | ||
3 | 150 / 0,51 | 50 / 0,76 | 28 / 0,59 | 72 / 0,31 | |
4 | 150 / 0,50 | 50 / 0,76 | 28 / 0,52 | 60 / 0,27 | 12 / 0,51 |
Literatur
- Martin Ester, Jörg Sander: Knowledge Discovery in Databases: Techniken und Anwendungen. Springer, Hamburg/Berlin 2000, ISBN 3-540-67328-8, S. 66. Online: eingeschränkte Vorschau in der Google-Buchsuche
- Peter J. Rousseeuw: Silhouettes: a Graphical Aid to the Interpretation and Validation of Cluster Analysis. In: Computational and Applied Mathematics. 20, 1987, S. 53–65. doi:10.1016/0377-0427(87)90125-7.
Weblinks
- silhouette: Berechnen von Silhouettenkoeffizienten und -plots mit R.
Einzelnachweise
- Peter J. Rousseeuw: Silhouettes: A graphical aid to the interpretation and validation of cluster analysis. In: Journal of Computational and Applied Mathematics. Nr. 20, 1987, S. 53–65 (online).