Die von der Option "ward.D" verwendete (entspricht der einzigen Ward-Option "ward" in R-Versionen <= 3.0.3) implementiert das Ward-Clustering-Kriterium (1963) nicht, wohingegen die Option "ward.D2" dieses Kriterium implementiert ( Murtagh und Legendre 2014).
( http://stat.ethz.ch/R-manual/R-patched/library/stats/html/hclust.html )
Anscheinend setzt ward.D das Kriterium von Ward nicht richtig um. Trotzdem scheint es in Bezug auf die von ihm erzeugten Clusterings gute Arbeit zu leisten. Was implementiert method = "ward.D", wenn es nicht das Kriterium von Ward ist?
Verweise
Murtagh, F. & Legendre, P. (2014). Wards hierarchische agglomerative Clustering-Methode: Welche Algorithmen implementieren das Ward-Kriterium? Journal of Classification , 31 (3), 274 & ndash; 295.
quelle
Antworten:
Das entsprechende Manuskript finden Sie hier .
Der Unterschied zwischen ward.D und ward.D2 ist der Unterschied zwischen den beiden Gruppierungskriterien, die im Manuskript als Ward1 und Ward2 bezeichnet werden.
Es läuft im Wesentlichen darauf hinaus, dass der Ward-Algorithmus direkt in nur Ward2 (ward.D2) korrekt implementiert ist, aber Ward1 (ward.D) kann auch verwendet werden, wenn die euklidischen Abstände (von
dist()
) vor der Eingabe in den quadriert werdenhclust()
mit der ward.D als Methode.Beispielsweise implementiert SPSS auch Ward1, warnt die Benutzer jedoch, dass Abstände zum Erzielen des Ward-Kriteriums quadriert werden sollten. In diesem Sinne ist die Implementierung von ward.D nicht veraltet, und es kann dennoch eine gute Idee sein, sie aus Gründen der Abwärtskompatibilität beizubehalten.
quelle
Ward algorithm is directly correctly implemented in just Ward2
Artikel, den Sie hierher verlinken, folgt nicht , sondern Folgendes : (1) Um mit beiden Implementierungen korrekte Ergebnisse zu erzielen, verwenden Sie quadratische euklidische Abstände mit Ward1 und nichtquadratische euklidische Abstände mit Ward2. (2) Um ihre Ausgangsdendrogramme weiter vergleichbar (identisch) zu machen, wenden Sie die Quadratwurzel auf die Fusionsniveaus nach Ward1 oder die Quadratfusionsniveaus nach Ward2 an, bevor Sie ein Dendrogramm erstellen.Der einzige Unterschied zwischen
ward.D
&ward.D2
ist der Eingabeparameter.hclust(dist(x)^2,method="ward.D")
~hclust(dist(x)^2,method="ward")
die äquivalent sind zu:
hclust(dist(x),method="ward.D2")
Sie finden das Forschungspapier: Ward's Hierarchical Clustering Method: Clustering Criterion und Agglomerative Algorithm
Die Ward2- Kriteriumswerte sind „ auf einer Entfernungsskala “, während die Ward1- Kriteriumswerte „ auf einer Entfernungsskala im Quadrat “ sind.
quelle
Ich bin auf das Forschungspapier gestoßen, das der Zielfunktion entspricht, die durch "Ward1 (ward.D)" optimiert wird: Hierarchisches Clustering über gemeinsame Abstände: Erweiterung der Minimum-Varianz-Methode von Ward . Es stellt sich heraus, dass Rs Implementierung von "Ward1 (ward.D)" der Minimierung des Energieabstands zwischen Clustergruppen entspricht.
quelle
ward.D2
, aber ich glaube nicht, dass es irgendwo so stehtward.D1
. Tatsächlich wird auf Seite 161–162 angegeben, dass für