2015-04-17 3 views
0

Я с использованием алгоритма симметричной матрицы неотрицательное факторизационную (SYMNMF) в MATLAB для кластеризации графа G. Входы:Определение оптимального количества кластеров в графе

  • смежности Матрица Х
  • Желаемый номер кластеров K

мне нужно определить K, такие как:

  • число ребер, работающих под управлением ставку ween кластеры как можно меньше.

Есть ли какой-либо алгоритм, который я могу использовать для поиска оптимального количества clurr, заданного матрицей смежности графа?

+1

Я не думаю, что существует оптимальный способ для кластеризации специально для SYNNMF, что более важно, кластерный метод всегда больше зависит от Data, а затем от метода выделения признаков. Кластер делает данные более разреженными для процесса NMF, попробуйте K-средства, он должен отлично работать для ребер, альтернативно, попробуйте обнаружение краев и используйте что-то вроде гауссовой (или гауссовой смеси, если вы продвинуты) в кластер. – GameOfThrows

+0

Не можете ли вы запустить алгоритм для разных значений K, а затем посмотреть, какой результат имеет наименьшее «количество ребер, запущенных между кластерами»? –

+0

A. Donda k = 1 имеет 0, но неинтересно. –

ответ

0

Должна быть возможность адаптировать метод локтей , который популярен с помощью k-средств.

Количество ребер на кластерах должно увеличиваться с помощью k. При k = 1 все ребра находятся внутри кластера. ;-)

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

+0

Увеличение k постепенно может быть решением. но это требует много времени. Я буду использовать его в любом случае, так как нет других вариантов. –

Смежные вопросы