Оценка качества кластеризации


17

У меня есть алгоритм кластеризации (не k-средних) с входным параметром (количество кластеров). После выполнения кластеризации я бы хотел получить количественную оценку качества этой кластеризации. Алгоритм кластеризации имеет одно важное свойство. Для если я введу точек данных без какого-либо существенного различия между ними в этом алгоритме, в результате я получу один кластер, содержащий точек данных, и один кластер с точкой данных. Очевидно, это не то, что я хочу. Поэтому я хочу рассчитать этот показатель качества, чтобы оценить целесообразность этой кластеризации. В идеале я смогу сравнить эти меры для разных . Так что я буду запускать кластеризацию в диапазонеkk=2NN11kkи выберите тот, который имеет лучшее качество. Как рассчитать такой показатель качества?

ОБНОВИТЬ:

Вот пример, когда плохая кластеризация. Допустим, на плоскости есть 3 точки, образующие равносторонний треугольник. Разбить эти точки на 2 кластера, очевидно, хуже, чем разбить их на 1 или 3 кластера.(N1,1)


Для меня это не очевидно. Я вижу кластеры, которые на самом деле все время имеют разные размеры ...
Anony-Mousse -Reinstate Monica

Ответы:


12

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

Другие рассматривают кластеризацию как попытку сгруппировать точки с одинаковыми значениями атрибутов, и в этом случае применимы такие меры, как SSE и т. Д. Однако я нахожу это определение кластеризации довольно неудовлетворительным, поскольку оно только говорит вам кое-что о конкретной выборке данных, а не что-то обобщающее о базовых распределениях. То, как методы работают с перекрывающимися кластерами, представляет собой особую проблему с этим представлением (для представления «процесс генерирования данных» это не вызывает реальной проблемы, вы просто получаете вероятности принадлежности к кластеру).


3
+1 для выделения различий между моделью на основе кластеризации по сравнению с чисто расстояниями на основе неконтролируемой кластеризации.
ЧЛ

1
Я думаю, что обе цели имеют свое справедливое использование в разных условиях. Есть много контекста, где вы на самом деле делаете, чтобы посмотреть только на данные под рукой (например, определение выброса). Кроме того, прежде чем вы сможете получить
доступ

Я согласен, Этьен, что оба метода имеют свое применение. Однако я бы также сказал, что независимо от того, является ли наблюдение выбросом или нет, неявно делает некоторые предположения о процессе генерации данных, поэтому вторая форма кластеризации, возможно, является лишь первым шагом в понимании данных, когда вы пытаетесь правильно сориентироваться.
Дикран Marsupial

4

Поскольку кластеризация не контролируется, сложно априори определить, какая кластеризация лучше всего. Это тема исследования. У Гэри Кинга, известного количественного социолога, есть предстоящая статья на эту тему.


+! Ага; @Max Как вы думаете, что это за "очевидная" кластеризация?

@ МБК: На самом деле я не знаю, что было бы хорошей кластеризацией для этого. Под «очевидным» я понимаю, что (N-1, 1) определенно не является хорошей кластеризацией для этого. Лучшей кластеризацией будет только один кластер, поэтому кластеризации вообще не будет. Или, может быть, какая-то кластеризация с количеством кластеров более 2.
Макс

Ваша ссылка, кажется, не работает.
Этьен Лоу-Декари

Вот обновленная ссылка на статью: gking.harvard.edu/files/abs/discov-abs.shtml
Долан Антенуччи,

4

Здесь у вас есть пара мер, но есть еще много:

SSE: сумма квадратичной ошибки от элементов каждого кластера.

Межкластерное расстояние: сумма квадратного расстояния между центроидами каждого кластера.

Внутрикластерное расстояние для каждого кластера: сумма квадратного расстояния от элементов каждого кластера до его центроида.

Максимальный радиус: наибольшее расстояние от экземпляра до его центроида кластера.

Средний радиус: сумма наибольшего расстояния от экземпляра до его центроида кластеров, деленная на количество кластеров.


Я пытался использовать внутри межкластерного расстояния, но не мог придумать что-то полезное для кластера с одной точкой. Также у меня нет центральной точки. У меня есть только расстояния между точками.
Макс

Чем выше расстояние между кластерами, тем лучше вы можете измерить его, рассчитав расстояния между центрами кластеров.
Мариана Соферфер

4

Вы столкнулись с областью проверки кластеров. Мой студент прошел валидацию, используя методы, описанные в:

А. Банерджи и Р. Н. Дейв. Проверка кластеров с использованием статистики хопкинса. 2004 IEEE Международная конференция по нечетким системам IEEE Cat No04CH37542, 1: p. 149–153, 2004.

Он основан на принципе, что если кластер действителен, то точки данных равномерно распределены внутри кластера.

Но перед этим вы должны определить, имеет ли ваша информация какую-либо так называемую тенденцию кластеризации, т.е. стоит ли кластеризация и оптимальное количество кластеров:

S. Saitta, B. Raphael и IFC Smith. Комплексный индекс достоверности для кластеризации. Интелл. Данные Анал., 12 (6): с. 529–548, 2008.


3

Как уже отмечали другие, существует множество показателей кластеризации «качества»; большинство программ минимизируют SSE. Ни одно число не может многое рассказать о шуме в данных, или о шуме в методе, или о плоских минимумах - низких точках в Саскачеване.

Поэтому сначала попытайтесь визуализировать, почувствовать данную кластеризацию, прежде чем уменьшать ее до «41». Затем сделайте 3 пробега: вы получаете SSE 41, 39, 43 или 41, 28, 107? Каковы размеры кластеров и радиусы?

(Добавлено :) Взгляните на графики силуэтов и оценки силуэтов, например, в книге Изенмана « Современные многомерные статистические методы» (2008, 731, isbn 0387781889).


3

Силуэт может быть использован для оценки результатов кластеризации. Это делается путем сравнения среднего расстояния в кластере со средним расстоянием до точек в ближайшем кластере.


2

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

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

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

Сочетание рандомизации, перестановки, начальной загрузки, упаковки в пакеты и / или джекнифинга может дать вам меру, аналогичную значению P, путем измерения количества раз, которое данная модель кластеризации дает вам меньшее значение для вас истинных данных, чем ваши случайные данные, используя метрику выбор (например, SSE, или прогноз ошибки из сумки).

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

Повторение этого для многих моделей позволит вам различать модели.

Это может быть реализовано в R.

случайный лес доступен в R


+1, мне нравится эта идея; однако, рандомизация / перестановка данных только разорвет отношения между переменными, это не будет работать, если есть кластеризация с одной переменной.
gung - Восстановить Монику

1

Если алгоритм кластеризации не является детерминированным, попробуйте измерить «стабильность» кластеров - выясните, как часто каждые два наблюдения относятся к одному кластеру. Это довольно интересный метод, полезный для выбора k в алгоритме kmeans.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.