Ієрархічна кластеризація даних змішаного типу - яку відстань / схожість використовувати?


34

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


Яке програмне забезпечення ви використовуєте?
rolando2

@ rolando2: я використовую R (hclus пакет).
Бета-версія

1
Чи є причина використання ієрархічної кластеризації?
suncoolsu

Na. Я просто задаю це питання заради моїх знань. Чи можемо ми робити ієрархічні, коли ми змішані типи даних. Якщо так, то чому? Якщо ні, то чому?
Бета-версія

@ User4278 Ну, що ваша мета в штрафі ? Ви хочете визначити кластери (окремих осіб)?
chl

Відповіді:


45

Один із способів - використовувати коефіцієнт подібності Гоувера, який є складовою мірою 1 ; вона потребує кількісних (таких як рейтингова шкала), двійкових (таких як присутні / відсутні) та номінальних (таких як працівник / викладач / діловод) змінних. Пізніше Podani 2 додав можливість приймати порядкові змінні.12

Коефіцієнт легко зрозуміти навіть без формули; ви обчислюєте значення подібності між індивідами за кожною змінною, беручи до уваги тип змінної, а потім середнє значення для всіх змінних. Зазвичай програма обчислення Gower дозволить вам зважувати змінні, тобто їх внесок, до складеної формули. Однак правильне зважування змінних різного типу є проблемою , не існує чітких чітких вказівок, завдяки чому Говер або інші "складені" показники близькості тягнуть за собою.

Грані подібності Гоувера ( GS ):

  • Коли всі змінні є кількісними (інтервальними), то коефіцієнт - це нормована відстань на Манхеттені, перетворена на подібність. Через нормалізацію змінні різних одиниць можуть бути безпечно використані. Однак ви не повинні забувати про людей, що вижили. (Ви також можете вирішити нормалізувати іншим показником поширення, ніж діапазон.) Через згадану нормалізацію статистикою, такою як діапазон, який чутливий до складу осіб у наборі даних, подібність між двома особами може змінити його значення якщо ви видалите або додаєте до даних деякі інші особи.
  • Коли всі змінні є порядковими, то їх спочатку класифікують, а потім Манхеттен обчислюють, як вище, з кількісними змінними, але зі спеціальним коригуванням для зв'язків.
  • Коли всі змінні є двійковими (з асиметричним значенням категорій: "присутній" проти "відсутній" атрибут), тоді коефіцієнт є коефіцієнтом відповідності Жакарда (цей коефіцієнт трактується, коли обом особам не вистачає атрибуту як не збігаються, ні невідповідності).
  • Коли всі змінні номінальні (також включаючи тут дихотомічну з симетричною значимістю: "це" проти "того"), то коефіцієнт - це коефіцієнт відповідності кістки, який ви отримуєте від своїх номінальних змінних, якщо перекодувати їх у манекенні змінні (див. Цю відповідь для отримання додаткової інформації) .

(Перелік типів легко розширити. Наприклад, можна додати підсумок для підрахунку змінних, використовуючи нормалізовану відстань chi-квадрата, перетворену на подібність.)

Коефіцієнт коливається між 0 і 1.

1GS1GS1GS1GS

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

У попередньому параграфі йдеться про те, чи K-означає, або Уорд, або таке кластеризація є законним чи ні з дистанцією Гоувера математично (геометрично). З точки зору шкали вимірювання ("психометричної") не слід обчислювати середнє або евклідовий відхилення від нього в будь-яких категоричних (номінальних, двійкових, а також порядкових) даних; тому з цієї позиції ви просто не можете обробляти коефіцієнт Гоуера за допомогою K-засобів, Уорда тощо. Ця точка зору попереджає, що навіть якщо є простір Евкліда, він може бути гранульованим, а не гладким ( див. пов'язане ).


1

2


Дякую ttnphns! Скажіть, будь ласка, "Коефіцієнт подібності Гоуера" інтегрований у пакет hclus в R? Чи є в R пакет, який має цю функціональність.
Бета

Я не користувач R, тому не знаю, і не думаю, що ви знайдете його в hclus. Але якщо ви Google "Gower схожість R", ви обов'язково знайдете те, що вам потрібно!
ttnphns

user4278, про всяк випадок, якщо ви не ухиляєтесь від SPSS, у мене є макрос для подібності Gower на моїй веб-сторінці. Він приймає вагові та відсутні дані.
ttnphns

@ User4278 Про R конкретно, початок тут: cran.r-project.org/web/views/Environmetrics.html
CHL

@ttnphns: Дякую! Я відвідав ваш веб-сайт, і це чудовий ресурс для SPSS. Але, на жаль, я не використовую надто сильно SPSS. Але я обов'язково використовую його, якщо я нічого не отримаю в R. @ chl: Дякую! Але це величезний список. Десь я читав, що Дейзі, в пакеті кластерів, має функціональність подібності Gower.
Бета

15

Якщо ви натрапили на це питання і цікавитесь, який пакунок завантажити для використання метрики Gower в R , clusterпакет має функцію з назвою daisy () , яка за замовчуванням використовує метрику Gower кожного разу, коли використовуються змішані типи змінних. Або ви можете встановити його вручну, щоб використовувати метрику Гоувера.

daisy(x, metric = c("euclidean", "manhattan", "gower"),
      stand = FALSE, type = list(), weights = rep.int(1, p))

4
У доповненні до відповіді Zhubarb в , якщо ви хочете відстань Гоуер між усіма парами з двох наборів даних, а потім побачити пакет R StatMatch.
Джеймс Гіршорн
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.