Welchen Algorithmus implementiert ward.D in hclust (), wenn es nicht das Kriterium von Ward ist?


16

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.


Sagt das Papier von Murthagh und Legendre etwas dazu?
cbeleites unterstützt Monica 30.07.14 um 08.04

Ich habe keinen Zugang zu diesem Papier
Raffael

Das erste, was eine Suche für mich auftaucht, ist das PDF des Manuskripts bei u montreal !?
cbeleites unterstützt Monica

Also, was sagt die Zeitung? Ich kann es nicht finden
Raffael

Das bitte ich Sie, uns zu sagen.
cbeleites unterstützt Monica

Antworten:


11

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 werden hclust()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.      


2
Aus dem Ward algorithm is directly correctly implemented in just Ward2Artikel, 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.
TTNPHNS

Sie haben natürlich recht. Danke für die Klarstellung. Was ich unter "direkt korrekt implementiert" verstehe, ist, dass keine weiteren Schritte erforderlich sind, um mit der ward.D2-Methode zum richtigen Ergebnis zu gelangen.
JTT

1
Die winzige Nuance hier ist, dass es mit Wards Methode so ist nicht definiert ist, was eine "korrekte" oder echte Darstellung der Fusionsebenen ist - ob sie "nicht quadratisch" oder "quadratisch" dargestellt werden sollen. Die Ursache für die Unentschlossenheit ist, dass die Fusionsniveaus in Ward keine Entfernungen sind , sondern inkrementelle Dispersionen.
TTNPHNS

9

Der einzige Unterschied zwischen ward.D& ward.D2ist 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.


Ich bevorzuge diese Antwort, da die andere impliziert, dass ward.D falsch ist, ist es nicht. Einfach anders.
Chris

6

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.

2.1 Cluster e

A={a1,,an1}B={b1,,bn2}Rdee(A,B)AB

e(A,B)=n1n2n1+n2(2n1n2i=1n1j=1n2aibj(1)1n12i=1n1j=1n1aiaj1n22i=1n2j=1n2bibj).

Sind Sie sicher, dass dies die richtige Interpretation des Inhalts dieses Dokuments ist? Es scheint mir, dasse(2)entspricht ward.D2, aber ich glaube nicht, dass es irgendwo so stehte(1)entspricht ward.D1. Tatsächlich wird auf Seite 161–162 angegeben, dass für0<α<2, e(α)sie nicht entspricht irgendeine Kraft des euklidischen Abstandes, unter der Annahme , Clustergröße größer als1. Interessantes Papier trotzdem.
Jonas Dahlbæk
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.