Вопрос

Я использую кластеризацию K-средних для процессов, работающих на машинах.

Пример набора данных:

machine name, process
m1,java
m2,tomcat
m1,word
m3,excel

Создайте матрицу связанных счетов:

   java,tomcat,word,excel
m1,1,0,1,0
m2,0,1,0,0
m3,0,0,0,1

Затем я запускаю K-средние по этому набору данных (пробовал функции Euclidean и Manhattan Distance). Набор данных чрезвычайно редкий, что, я думаю, заставляет сгенерированные кластеры не имеет большого смысла, так как многие машины сгруппированы в тот же кластер (как они очень похожий)

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

Это было полезно?

Решение

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

Если большинство объектов очень похожи, то это большинство должно быть в большинстве.

Рассмотрим, что все ваши данные идентичны. Любой алгоритм кластеризации, производящий более одного кластера, потерпел неудачу, на мой взгляд ...

Таким образом, вы можете использовать неправильный класс алгоритмов для вашей проблемы.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с datascience.stackexchange
scroll top