Как выбрать метод кластеризации? Как проверить кластерное решение (чтобы гарантировать выбор метода)?


35

Одна из самых больших проблем с кластерным анализом заключается в том, что нам, возможно, придется делать разные выводы, основываясь на разных методах кластеризации (включая разные методы связи в иерархической кластеризации).

Хотелось бы узнать ваше мнение по этому поводу - какой метод вы выберете и как. Кто-то может сказать: «Лучший метод кластеризации - это правильный ответ»; но я могу спросить в ответ, что кластерный анализ должен быть неконтролируемым методом - так как я узнаю, какой метод или связь является правильным ответом?

В целом: достаточно ли одной кластеризации, на которую можно положиться? Или нам нужен второй метод и получить общий результат, основанный на обоих?

Мой вопрос касается не только возможных способов проверки / оценки производительности кластеризации, но и более широкого - на каком основании мы выбираем / предпочитаем один метод / алгоритм кластеризации другому. Кроме того, есть ли общие предупреждения, которые мы должны осмотреть, когда выбираем метод для кластеризации наших данных?

Я знаю, что это очень общий вопрос и очень трудно ответить. Я только хотел бы знать, если у вас есть какие-либо комментарии или какие-либо советы или предложения для меня, чтобы узнать больше об этом.


Проверьте также этот похожий вопрос.
ttnphns


2
Некоторые ссылки конкретно о внутренней и внешней проверке: это . И это . И это . И это . И это . И это . И там . И искать больше.
ttnphns

Ответы:


50

Часто говорят, что нет другого аналитического метода, столь же сильного, как «как посеешь, то и скажешь», как кластерный анализ.

Я могу представить себе ряд измерений или аспектов «правильности» того или иного метода кластеризации :

  1. Кластерная метафора . «Я предпочел этот метод, потому что он представляет собой кластеры, такие (или такие), которые соответствуют моей концепции кластера в моем конкретном проекте» . Каждый алгоритм или подалгоритм / метод кластеризации подразумевает свою соответствующую структуру / структуру / форму кластера. Что касается иерархических методов, я наблюдал это в одном из пунктов здесь , а также здесь, Т.е. некоторые методы дают кластеры, которые являются прототипами "типов", другие дают "круги [по интересам]", еще другие "[политические] платформы", "классы", "цепочки" и т. Д. Выберите тот метод, метафора кластера которого вам подходит. Например, если я рассматриваю свои сегменты клиентов как типы - более или менее сферические фигуры с уплотнением (ями) посередине, я выберу метод связи Уорда или К-среднее, но, разумеется, никогда не использую метод одиночной связи. Если мне нужен фокусный представитель, я мог бы использовать метод Medoid. Если мне нужно отобрать точки, чтобы они были представителями ядра и периферии, я мог бы использовать подход DBSCAN.

  2. Данные / метод предположения . «Я предпочел этот метод, потому что моя природа данных или формат предрасполагают к нему» . Этот важный и обширный момент также упоминается в моей ссылке выше. Разные алгоритмы / методы могут требовать различного вида данных для них или разных мер близости, которые должны применяться к данным, и наоборот, разные данные могут требовать разных методов. Существуют методы количественных и методы качественных данных. Смесь количественных + качественных характеристик резко сужает область выбора среди методов. Уорд или К-значитоснованы - явно или неявно - только на (квадратичной) евклидовой дистанционной мере, а не на произвольной мере. Двоичные данные могут требовать специальных мер сходства, которые, в свою очередь, будут подвергать сомнению использование некоторых методов, например, методов Уорда или К-средних. Большие данные могут нуждаться в специальных алгоритмах или специальных реализациях.

  3. Внутренняя действительность . «Я предпочел этот метод, потому что он дал мне наиболее четкие, плотные и изолированные кластеры» . Выберите алгоритм / метод, который показывает лучшие результаты для ваших данных с этой точки зрения. Чем плотнее и плотнее кластеры внутри и чем меньше плотность снаружи (или чем шире кластеры), тем больше внутренняя валидность. Выберите и используйте соответствующие внутренние критерии кластеризации ( которых достаточно - Calinski-Harabasz, Silhouette и т. Д. И т. Д .; иногда также называемые «правилами остановки») для его оценки. [Остерегайтесь переобучения: все методы кластеризации стремятся максимизировать некоторую версию внутренней валидности (это то , что кластеризация является1о), поэтому высокая достоверность может быть отчасти обусловлена ​​случайной особенностью данного набора данных; наличие тестового набора данных всегда полезно.]

  4. Внешняя валидность . «Я предпочел этот метод, потому что он дал мне кластеры, которые отличаются по своему фону или кластеры, которые соответствуют истинным, которые я знаю» . Если кластеризованный раздел представляет кластеры, которые явно отличаются по некоторым важным фоновым (то есть не участвовавшим в кластерном анализе) характеристикам, то это актив для того метода, который создал раздел. Используйте любой анализ, который применяется, чтобы проверить разницу; также существует ряд полезных внешних критериев кластеризации(Рэнд, F-мера и т. Д. И т. Д.). Другой вариант внешней проверки - это когда вы каким-то образом знаете истинные кластеры в ваших данных (знаете «основную правду»), например, когда вы сами генерировали кластеры. То, насколько точно ваш метод кластеризации способен обнаружить реальные кластеры, является мерой внешней валидности.

  5. Перекрестная достоверность . «Я предпочел этот метод, потому что он дает мне очень похожие кластеры на эквивалентных выборках данных или хорошо экстраполирует на такие выборки» . Существуют различные подходы и их гибриды, некоторые из которых более приемлемы для одних методов кластеризации, а другие - для других методов. Два основных подхода - проверка стабильности и обобщаемостьчек. Проверяя стабильность метода кластеризации, можно случайным образом разбить или повторно выбрать данные в частично пересекающихся или полностью непересекающихся наборах и выполнить кластеризацию для каждого из них; затем сопоставляет и сравнивает решения с некоторой возникающей характеристикой кластера (например, центральное местоположение кластера), является ли она стабильной по наборам. Проверка универсальности подразумевает выполнение кластеризации в наборе поездов, а затем использование его возникающей характеристики или правила кластера для назначения объектов набора тестов, а также выполнение кластеризации в наборе тестов. Затем сравниваются принадлежащие кластеру результаты присваивания и результаты кластеризации объектов тестового набора.

  6. Интерпретация . «Я предпочел этот метод, потому что он дал мне кластеры, которые, как объяснили, являются наиболее убедительными, что есть смысл в мире» . Это не статистически - это ваша психологическая проверка. Насколько значимы результаты для вас, домена и, возможно, аудитории / клиента. Выберите метод, дающий наиболее интерпретируемые, пряные результаты.

  7. Стадность . Некоторые исследования регулярно и все исследования иногда говорят: «Я предпочел этот метод, потому что он дал с моими данными аналогичные результаты с рядом других методов среди всех, кого я исследовал» . Это эвристическая, но сомнительная стратегия, предполагающая, что существуют достаточно универсальные данные или совершенно универсальный метод.

Пункты 1 и 2 являются теоретическими и предшествуют получению результата; Исключительно полагаться на эти моменты является надменной, уверенной в себе исследовательской стратегии. Пункты 3, 4 и 5 являются эмпирическими и следуют за результатом; Исключительно полагаться на эти моменты - это непосильная, испытательная стратегия. Пункт 6 является творческим, что означает, что он отрицает любой результат, чтобы попытаться повторно его оправдать. Пункт 7 - верный фаворит.

Точки с 3 по 7 также могут быть судьями при выборе «лучшего» количества кластеров .


1 Конкретный внутренний критерий кластеризации сам по себе не является «ортогональным» ни к методу кластеризации (ни к виду данных). Это поднимает философский вопрос, в какой степени такой предвзятый или предвзятый критерий может быть полезен (см. Ответы, просто замечая это).


1
Мне очень нравятся меры внутренней валидности, такие как сумма внутрикластерных дисперсий в K-средних и иерархической кластеризации Уорда, а также индексы Данна. Они не зависят от данных, а иногда даже не зависят от алгоритма кластеризации, хотя некоторые из них имеют смысл только с конкретными алгоритмами.
Дуглас Де Риццо Менегетти,

2
@DouglasDeRizzoMeneghetti Я не согласен. Они не зависят ни от данных (они делают очень строгие предположения о ваших данных, таких как линейность и эквивалентность атрибутов), ни от алгоритма кластеризации. Фактически, каждая внутренняя мера является собственным алгоритмом кластеризации (вы можете оптимизировать для этой функции - обычно это слишком дорого).
Anony-Мус

1
Я понимаю, что некоторые внутренние меры достоверности, такие как сумма внутрикластерных дисперсий, дают лучшие результаты, если членство в кластере было получено с помощью метода кластеризации, который стремится минимизировать сумму внутрикластерных дисперсий, и что мера достоверности, такая как Dunn индексы предполагают, что хорошие кластеры компактны и находятся далеко друг от друга (хотя интерпретации «компактный» и «далеко друг от друга» остаются открытыми для интерпретации), но тот факт, что вы можете рассчитать эти показатели только с использованием значений признаков и членства кластеров в элементы делают их довольно универсальными.
Дуглас Де Риццо Менегетти

9

В основном это критерии красного флага . Свойства данных, которые сообщают вам, что определенный подход обязательно потерпит неудачу.

  1. если вы не знаете, что означают ваши данные, прекратите их анализ. Вы просто угадываете животных в облаках.

  2. если атрибуты изменяются в масштабе и являются нелинейными или искаженными. это может испортить ваш анализ, если у вас нет очень хорошей идеи соответствующей нормализации. Остановитесь и научитесь понимать ваши особенности, кластеризовать еще рано.

  3. если каждый атрибут эквивалентен (тот же масштаб) и является линейным, и вы хотите квантовать свой набор данных (и ошибка наименьших квадратов имеет значение для ваших данных), тогда стоит попробовать k-means. Если ваши атрибуты имеют различный вид и масштаб, результат не является четко определенным. Контрпример: возраст и доход. Доход очень искажен, и x years = y dollarэто чепуха.

  4. если у вас есть очень четкое представление о том, как количественно определить сходство или расстояние ( значимым образом; возможности вычислить некоторое число недостаточно), тогда иерархическая кластеризация и DBSCAN являются хорошим выбором. Если вы не знаете, как определить сходство, сначала решите эту проблему.

Вы видите, что наиболее распространенная проблема заключается в том, что люди пытаются сбросить свои необработанные данные в кластеризацию, когда им сначала нужно понять и нормализовать их и выяснить сходство.

Примеры:

  1. Пиксели изображения в RGB-пространстве. Наименьшие квадраты имеют некоторый смысл, и все атрибуты сравнимы - k-означает хороший выбор.

  2. Географические данные: наименьших квадратов не очень уместно. будут выбросы. но расстояние очень значимо. Используйте DBSCAN, если у вас много шума, или HAC (иерархическая агломерационная кластеризация), если у вас очень чистые данные.

  3. Виды наблюдаются в разных местах обитания. Наименьшие квадраты сомнительны, но, например, сходство Жакара имеет смысл. Вероятно, у вас мало наблюдений и нет «ложных» мест обитания - используйте HAC.


+1. Я только прошу вас найти другое выражение вместо stop criteria. Ведь, как вы знаете, «правила остановки» или «критерии остановки» являются синонимом «внутренних критериев кластеризации» в области иерархической кластеризации. Итак, это озабоченный термин. Но вы подразумеваете эти слова в другом смысле в ответе, и это может запутать читателя.
ttnphns

1
Как насчет «критериев красного флага»? Порог остановки для HAC, я вижу вашу точку зрения.
Anony-Mousse

Отлично подходит для меня, хороший выбор.
ttnphns

В птс 2,3 ты говоришь (non)linear attributes. Что вы имеете в виду? Каким образом «линейный» атрибут? или вы говорите о линейных отношениях , то есть эллипсоидных (а не изогнутых) формах кластеров?
ttnphns

Данные, например, с экспоненциальным распределением.
Anony-Mousse

3

Я не думаю, что есть хороший формальный способ сделать это; Я думаю, что хорошие решения имеют смысл по существу.

Конечно, вы можете попытаться разделить данные и кластеризовать несколько раз и так один, но тогда остается вопрос, какой из них полезен.


2
Я думаю, что термин имеет смысл не может быть подчеркнуто достаточно. Это также ключевой момент моего ответа - сначала вам нужно разобраться в своих данных.
Anony-Mousse

@ Anony-Mousse, это перебор с твоей стороны. Бьюсь об заклад, люди, которые не знают, как или забывают «разобраться» в своих данных, вряд ли посещают этот сайт, и они не задают такие хорошие вопросы, как тот, который задавали здесь.
ttnphns

@ttnphns Я не знаю, как часто такие люди посещают этот сайт, и они, конечно, не задают такие вопросы. Но многие люди ожидают, что кластерный анализ будет работать как функция Excel. Выберите данные, нажмите «кластер» и получите волшебные сегменты клиентов. Который никогда не работает намного лучше, чем случайный. И, например, этот пользователь не смог понять свои данные: stats.stackexchange.com/q/195521/7828
Anony-Mousse
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.