Какой алгоритм реализует ward.D в hclust (), если он не является критерием Ward?

16

Тот, который используется опцией «ward.D» (эквивалентно единственной опции «Ward» в версиях R <= 3.0.3), не реализует критерий кластеризации Ward (1963), тогда как опция «ward.D2» реализует этот критерий ( Муртах и ​​Лежандр 2014).

( http://stat.ethz.ch/R-manual/R-patched/library/stats/html/hclust.html )

Очевидно, ward.D не выполняет критерий Уорда должным образом. Тем не менее, похоже, что он хорошо справляется с кластеризацией, которую он производит. Что реализует method = "ward.D", если это не критерий Уорда?

Ссылки

Murtagh, F. & Legendre, P. (2014). Метод иерархической агломерационной кластеризации Уорда: какие алгоритмы реализуют критерий Уорда? Журнал классификации , 31 (3), 274-295.

Раффаэль
источник
Газета Муртхаг и Лежандр что-нибудь говорит об этом?
cbeleites поддерживает Монику
У меня нет доступа к этой статье
Раффаэль
Первым делом поиск для меня - это pdf рукописи в Монреале !?
cbeleites поддерживает Монику
так что же написано в газете? Я не могу найти это
Раффаэль
Это то, что я прошу вас рассказать нам.
cbeleites поддерживает Монику

Ответы:

11

Соответствующая рукопись здесь .

Разница между ward.D и ward.D2 - это разница между двумя критериями кластеризации, которые в рукописи называются Ward1 и Ward2.

Это в основном сводится к тому, что алгоритм Уорда непосредственно правильно реализован только в Ward2 (ward.D2), но Ward1 (ward.D) также можно использовать, если евклидовы расстояния (от dist()) возводятся в квадрат перед вводом их вhclust() используя ward.D в качестве метода.

Например, SPSS также реализует Ward1, но предупреждает пользователей, что расстояния должны быть возведены в квадрат для получения критерия Ward. В этом смысле реализация ward.D не считается устаревшей, и, тем не менее, было бы неплохо сохранить ее для обратной совместимости.      

JTT
источник
2
Из статьи, на которую вы ссылаетесь, следует не Ward algorithm is directly correctly implemented in just Ward2, а, скорее, что: (1) для получения правильных результатов с обеими реализациями используйте квадраты евклидовых расстояний с Ward1 и не квадратные евклидовы расстояния с Ward2; (2) чтобы сделать их выходные дендрограммы сопоставимыми (идентичными), примените квадратный корень к уровням слияния после Ward1 или квадратные уровни слияния после Ward2, прежде чем строить дендрограмму.
ttnphns
Вы правы, конечно. Благодарю за разъяснение. Под «правильной реализацией» я подразумевал, что никаких дополнительных шагов, таких как получение квадратного корня из высот, для получения правильного результата с помощью метода ward.D2 не требуется.
JTT
1
Крошечный нюанс здесь заключается в том, что с помощью метода Уорда не определено, что такое «правильное» или истинное представление уровней слияния - должны ли они быть нанесены «не в квадрате» или «в квадрате». Причиной нерешительности является то, что уровни слияния в Уорде - это не расстояния , а постепенные дисперсии.
ttnphns
9

Единственная разница между ward.D&ward.D2 является входным параметром.

hclust(dist(x)^2,method="ward.D") ~ hclust(dist(x)^2,method="ward")

которые эквивалентны: hclust(dist(x),method="ward.D2")

Вы можете найти реферат бумаги: Иерархический метод кластеризации Уорда: критерий кластеризации и агломерационный алгоритм

В Ward2 значения критерия « по шкале расстояний » , тогда как Ward1 значение критерия « по шкале расстояний квадрата ».

Nilesh
источник
Я предпочитаю этот ответ, так как другой подразумевает, что ward.D не прав, это не так. Просто другой.
Крис
6

Я наткнулся на исследовательскую работу, которая соответствует целевой функции, которая оптимизируется с помощью «Ward1 (ward.D)»: Иерархическая кластеризация с помощью соединения между расстояниями: расширение метода минимальной дисперсии Уорда . Оказывается, что реализация R "Ward1 (ward.D)" эквивалентна минимизации энергетического расстояния между группами кластеров.

2.1. Кластерное расстояние и объективная функция.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).
user3235207
источник
Are you sure that that is the correct interpretation of the contents of that paper? It seems to me that e(2) corresponds to ward.D2, but I don't think it is stated anywhere that e(1) corresponds to ward.D1. In fact, on page 161–162, it is stated that for 0<α<2, e(α) does not correspond to any power of Euclidean distance, assuming cluster size is greater than 1 . Interesting paper none the less.
Jonas Dahlbæk