Чи нормально використовувати відстань на Манхеттені з міжкластерним зв'язком Варда в ієрархічній кластеризації?


15

Я використовую ієрархічну кластеризацію для аналізу даних часових рядів. Мій код реалізований з використанням Mathematica функції DirectAgglomerate[...], яка генерує ієрархічні кластери отримують наступні входи:

  • матриця відстані D

  • назва методу, що використовується для визначення міжкластерної зв'язку.

Я обчислив матрицю відстані D, використовуючи відстань на Манхеттені:

г(х,у)=i|хi-уi|

де і n 150 - кількість точок даних у моєму часовому ряді.i=1,,нн150

Моє запитання: чи нормально використовувати міжкластерні зв’язки Варда з матрицею відстані на Манхеттені? Деякі джерела припускають, що зв'язок Уорда слід використовувати тільки з евклідовою дистанцією.

Зауважимо, що DirectAgglomerate[...]обчислює зв'язок Уорда, використовуючи лише матрицю відстані, а не оригінальні спостереження. На жаль, я не впевнений, як Mathematica модифікує оригінальний алгоритм Уорда, який (з мого розуміння) працював шляхом мінімізації суми помилок квадратів спостережень, обчислених відносно середнього кластера. Наприклад, для кластера що складається з вектора одновимірних спостережень, Уорд сформулював суму помилок квадратів як:c

(j||cj-меан(c)||2)2

(Інші програмні засоби, такі як Matlab і R, також реалізують кластеризацію Уорда, використовуючи лише матрицю відстані, тому питання не є специфічним для Mathematica.)


Нещодавно я проаналізував досить великий набір даних методом Уорда. У моєму конкретному випадку відстань Манафтана давала по суті таке ж кластеризацію, як і евклідова відстань. Я не можу дати вам жодних математичних доказів на користь будь-якої комбінації методів, але - принаймні, в моєму випадку - на кластеризацію не вплинув метод дистанції
nico

Всі функції R не обов'язково чекають матриці відстані. Див., Наприклад, он-лайн допомогу agnesв пакеті кластерів .
chl

Насправді добре використовувати будь-яку відстань. Перевірте vlado.fmf.uni-lj.si/pub/preprint/ward.pdf Єдина уловка полягає в тому, що середнє значення, про яке ми говоримо, - це вже не середнє арифметичне, а середнє значення Frechet.
Ренді Лай

але чи можемо ми використовувати манхеттенську відстань для повного зв'язку?
Payel Banerjee

Відповіді:


8

Алгоритм кластеризації Уорда - це ієрархічний метод кластеризації, який мінімізує критерії "інерції" на кожному кроці. Ця інерція кількісно визначає суму квадратичних залишків між зменшеним сигналом та початковим сигналом: це міра дисперсії похибки l2 (евклідового) сенсу. Власне, ви навіть згадуєте це у своєму питанні. Ось чому, я вважаю, немає сенсу застосовувати його до матриці відстаней, яка не є евклідовою відстані l2.

З іншого боку, середній зв'язок або одиночна ієрархічна кластеризація буде цілком придатною для інших відстаней.


2
Дякуємо за Ваш коментар; Я думаю, ти прав. Однак на практиці здається, що зв'язок Уорда часто використовується з неевклідовими відстанями. Я досі не впевнений, які наслідки це можуть бути.
Рейчел

Це, мабуть, походить від людей, які використовують Уорд просто тому, що це добре відомо. Я б сказав, що Уорд не приносить жодних вигод порівняно із середнім зв'язком у цих налаштуваннях. Однак, це обчислювально дорожче (потрібно обчислити перші два моменти для кожного злиття або попередньо обчислити їх). Таким чином, з прагматичної точки зору, я б просто пішов на середній зв'язок.
Gael Varoquaux

1
Насправді, інерція буде визначена за допомогою суми квадратичної відстані (не потрібно евклідової) див. Vlado.fmf.uni-lj.si/pub/preprint/ward.pdf
Ренді Lai

5

Я не можу придумати жодної причини, чому Вард повинен надавати перевагу будь-якій метриці. Метод Уорда - це лише інший варіант вирішення, які кластери слід злити далі під час агломерації. Це досягається шляхом пошуку двох кластерів, злиття яких зведе до мінімуму певну помилку ( зразкове джерело формули ).

Отже, вона спирається на два поняття:

  1. Середнє значення векторів, яке (для числових векторів), як правило, обчислюється шляхом усереднення по кожному виміру окремо.
  2. Сама метрика відстані, тобто поняття подібності, виражена цією метрикою.

Отже: Поки властивості обраної метрики (наприклад, обертання, переклад або інваріантність масштабу) задовольняють ваші потреби (і метрика відповідає тому, як обчислюється значення кластера), я не бачу причин не використовувати його .

Я підозрюю, що більшість людей пропонують евклідову метрику, оскільки вони

  • хочемо збільшити вагу різниць між середнім кластером і одним вектором спостереження (що робиться за допомогою квадрації)
  • або тому, що він вийшов найкращим показником у валідації на основі їх даних
  • або тому, що він використовується загалом.

Дякую за Вашу відповідь. Я трохи уточнив своє запитання, щоб підкреслити, що алгоритм 'DirectAgglomerate [...]' бере лише матрицю відстані. Враховуючи це, чи буде модифікована реалізація зв'язку Уорда ґрунтуватися на припущенні, що матриця відстані є евклідовою? Наприклад, реалізація зв’язку Уорда від Matlab зазначає, що він підходить лише для евклідових відстаней ( mathworks.com/help/toolbox/stats/linkage.html ).
Рейчел

1
@Rachel: ааа, бачу. Будь-яка реалізація палати повинна обчислювати відстань між членами кластеру та центроїдом. Інтуїтивно зрозуміло, що метрика, використана для цього, повинна бути еквівалентною метриці, яка використовується для обчислення відстаней між спостереженнями ... отже, для matlab необхідна евклідова дисматриця. Але тепер виникає питання, чому реалізації не вимагають функції замість матриці відстаней? Скільки шкоди робиться, коли для обох завдань використовуються різні показники? Я визнаю, я не знаю це правильно.
steffen

привіт приклад видалено. будь-який інший веб-сайт?
MonsterMMORPG

2

1 полягає в тому, що вибір середнього значення виходить з того, що середнє значення є точкою, яка мінімізує суму квадратних евклідових відстаней. Якщо ви використовуєте1 щоб виміряти відстань між часовими рядами, тоді вам слід використовувати центр, який мінімізує суму квадрата 1 відстані.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.