Yang digunakan oleh opsi "ward.D" (setara dengan satu-satunya pilihan Ward "ward" dalam versi R <= 3.0.3) tidak menerapkan kriteria pengelompokan Ward (1963), sedangkan opsi "ward.D2" menerapkan kriteria tersebut ( Murtagh dan Legendre 2014).
( http://stat.ethz.ch/R-manual/R-patched/library/stats/html/hclust.html )
Rupanya bangsal.D tidak menerapkan kriteria Ward dengan benar. Meskipun demikian tampaknya melakukan pekerjaan yang baik mengenai pengelompokan yang dihasilkannya. Apa yang diterapkan oleh metode = "ward.D" jika itu bukan kriteria Ward?
Referensi
Murtagh, F., & Legendre, P. (2014). Metode pengelompokan aglomerasi hirarki Ward: algoritma mana yang menerapkan kriteria Ward ?. Jurnal Klasifikasi , 31 (3), 274-295.
r
clustering
ward
Raffael
sumber
sumber
Jawaban:
Naskah yang relevan ada di sini .
Perbedaan antara ward.D dan ward.D2 adalah perbedaan antara dua kriteria pengelompokan yang dalam naskah disebut Ward1 dan Ward2.
Ini pada dasarnya bermuara pada fakta bahwa algoritma Ward langsung diimplementasikan dengan benar hanya dalam Ward2 (ward.D2), tetapi Ward1 (ward.D) juga dapat digunakan, jika jarak Euclidean (dari
dist()
) dikuadratkan sebelum memasukkannya ke dalamhclust()
menggunakan ward.D sebagai metode.Misalnya, SPSS juga mengimplementasikan Ward1, tetapi memperingatkan pengguna bahwa jarak harus dikuadratkan untuk mendapatkan kriteria Ward. Dalam arti implementasi bangsal seperti itu tidak ditinggalkan, dan meskipun demikian itu mungkin ide yang baik untuk mempertahankannya untuk kompatibilitas ke belakang.
sumber
Ward algorithm is directly correctly implemented in just Ward2
, melainkan bahwa: (1) untuk mendapatkan hasil yang benar dengan kedua implementasi, gunakan kuadrat jarak Euclidean dengan Ward1 dan jarak Euclidean nonsquared dengan Ward2; (2) untuk lebih lanjut membuat dendrogram output mereka sebanding (identik), terapkan akar kuadrat ke tingkat fusi setelah Ward1 atau tingkat fusi persegi setelah Ward2, sebelum membuat dendrogram.Satu-satunya perbedaan antara
ward.D
&ward.D2
adalah parameter input.hclust(dist(x)^2,method="ward.D")
~hclust(dist(x)^2,method="ward")
yang setara dengan:
hclust(dist(x),method="ward.D2")
Anda dapat menemukan makalah penelitian: Ward's Hierarchical Clustering Method: Clustering Criterion dan Agglomerative Algorithm
Nilai kriteria Ward2 adalah " pada skala jarak " sedangkan nilai kriteria Ward1 adalah " pada skala jarak kuadrat ".
sumber
Saya menemukan makalah penelitian yang sesuai dengan fungsi objektif yang sedang dioptimalkan oleh "Ward1 (ward.D)": Clustering Hirarkis melalui Jarak Antara-Dalam Bersama: Memperluas Metode Varians Minimum Ward . Ternyata implementasi R dari "Ward1 (ward.D)" setara dengan meminimalkan jarak energi antara kelompok cluster.
sumber
ward.D2
, but I don't think it is stated anywhere thatward.D1
. In fact, on page 161–162, it is stated that for