Использование сглаживателя с методом L для определения количества кластеров K-средних - PullRequest
16 голосов
/ 27 октября 2010

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

«L-метод» подробно описан в: Определение количества кластеров / сегментов в алгоритмах иерархической кластеризации / сегментации , Сальвадор и Чан

Это вычисляет метрику оценки для диапазона различных количеств пробных кластеров. Затем, чтобы найти колено (что происходит для оптимального числа кластеров), две линии подгоняются с использованием линейной регрессии. Простой итеративный процесс применяется для улучшения подгонки колена - он использует существующие вычисления метрики оценки и не требует каких-либо повторов k-средних.

В качестве метрики оценки я использую обратную величину упрощенной версии индекса Даннса. Упрощено для скорости (в основном, мой диаметр и межкластерные вычисления упрощены). Обратная величина такова, что индекс работает в правильном направлении (т. Е. Чем ниже, тем лучше).

K-means - это стохастический алгоритм, поэтому обычно он запускается несколько раз и выбирается наилучшим образом. Это работает довольно хорошо, но когда вы делаете это для кластеров 1..N, время быстро складывается. Поэтому в моих интересах следить за количеством прогонов. Общее время обработки может определить, является ли моя реализация практичной или нет - я могу отказаться от этой функции, если не могу ускорить ее.

1 Ответ

6 голосов
/ 07 января 2011

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

Лучшим решением было найти точку с максимальным расстоянием d в соответствии с показанным рисунком:

alt text

Примечание: я еще не читал статью, на которую вы ссылались ..

...