Алгоритм кластеризации с дискретными и непрерывными атрибутами? - PullRequest
9 голосов
/ 06 мая 2009

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

Традиционно алгоритм типа K-средних или EM работает для непрерывных атрибутов, что, если у нас есть смесь непрерывных и дискретных атрибутов?

Ответы [ 5 ]

5 голосов
/ 06 мая 2009

Если я правильно помню, тогда алгоритм COBWEB мог работать с дискретными атрибутами.

И вы также можете делать различные «трюки» с дискретными атрибутами для создания значимых метрик расстояния.

Вы можете использовать Google для кластеризации категориальных / дискретных атрибутов, один из первых хитов: ROCK: надежный алгоритм кластеризации для категориальных атрибутов .

1 голос
/ 08 мая 2009

R - отличный инструмент для кластеризации. Стандартный подход заключается в вычислении матрицы различий для ваших смешанных данных с использованием daisy, а затем кластеризации с этой матрицей с использованием agnes* 1006. *.

Модуль cba в CRAN включает функцию кластеризации на двоичных предикторах на основе ROCK.

0 голосов
/ 31 мая 2013

Как насчет преобразования каждого из ваших категориальных атрибутов в серию N-1 атрибутов двоичного индикатора (где N - количество категорий)? Вы не должны бояться высокой размерности, как разреженное представление (такое как mahout's SequentialAccessSparseVector может использоваться). Как только вы это сделаете, вы можете использовать классический K-образный или любой другой стандартный алгоритм кластеризации только для чисел.

0 голосов
/ 07 мая 2009

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

0 голосов
/ 06 мая 2009

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

...