Що робити, коли немає точки ліктя для кластеризації kmeans


13

Я дізнався, що, вибираючи декілька кластерів, слід шукати точку ліктя для різних значень K. Я побудував графіки значень inssss для значень k від 1 до 10, але я не бачу чіткого ліктьовий. Що ти робиш у такому випадку?

Тривожні KMeans


2
Існує безліч критеріїв кластеризації, правило "лікоть СС" є лише одним, а не найкращим. Спробуйте інші. Цілком ймовірно, що у вас немає кластерів у ваших даних.
ttnphns

@ttnphns Про що таке містичне ви говорите? Як я можу не мати кластерів у своїх даних? Звідки я знаю?
Глен

Відповіді:


7

Неправильний метод?

Можливо, ви використовуєте неправильний алгоритм для своєї проблеми.

Неправильна попередня обробка?

K-засоби дуже чутливі до попередньої обробки. Якщо один атрибут має значно більший масштаб, ніж інші, він буде домінувати над результатом. Тоді ваш результат буде ефективно одновимірним

Візуалізуйте результати

Що б ви не робили, вам потрібно перевірити свої результати чимось іншим, ніж починати з числа, наприклад, SSQ. Замість цього розгляньте візуалізацію .

Візуалізація також може сказати вам, що, можливо, у ваших даних є лише один кластер .


Які є хороші варіанти візуалізації багатовимірних даних?
Джеремі

1
Залежить від ваших даних. Деякі дані можна спроектувати добре, оскільки вони мають значно меншу внутрішню розмірність. Часові ряди можна легко побудувати, і якщо ваші дані - це серіалізоване зображення, візуалізуйте його як зображення? У будь-якому випадку візуалізація залежить від ваших даних, і ніколи не буде рішення, яке відповідає одному розміру.
Є QUIT - Anonymous-Mousse

3

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

Менш суб'єктивним способом є використання значення силуету:

/programming/18285434/how-do-i-choose-k-when-using-k-means-clustering-with-silhouette-function

Це можна обчислити з вашим улюбленим програмним пакетом. За посиланням:

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


Глен, я особисто вважаю, що ваша відповідь неповна. 1-й абзац виглядає незрозумілим. Що це за "ручний огляд", чи можете ви описати процедуру, будь ласка? Тоді Силует "менш суб'єктивний", ніж що ? І чому?
ttnphns

Відповідь @ttnphns оновлено.
Глен

contingency tables and conditional meansЦе ще більше містично. Що мені робити з ними, щоб "суб'єктивно" досягти хорошого k?
ttnphns

@ttnphns Якщо у афіші є запитання щодо цього, я продовжую відповідати. Як я вже сказав, ви повинні перевірити, чи можна виділити групування. Мені це здається зрозумілим.
Глен

Тож якщо я отримаю низькі значення силуету (~ .35), це може означати, що ці дані насправді не мають гарних кластерів?
Джеремі

0
  • Ніякий ліктьовий загін для K-засобів не означає, що в даних немає кластерів;
  • Відсутність ліктя означає, що використовуваний алгоритм не може відокремити кластери; (подумайте про K-засоби для концентричних кіл проти DBSCAN)

Як правило, ви можете врахувати:

  • налаштуйте свій алгоритм;
  • використовувати інший алгоритм;
  • зробити попередню обробку даних.

-1

Ми можемо використовувати пакет NbClust, щоб знайти найбільш оптимальне значення k. Він містить 30 показників для визначення кількості кластерів та пропонує найкращий результат.

NbClust (дані = df, відстань = "евклідовий", min.nc = 2, max.nc = 15, метод = "kmeans", індекс = "всі")


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