• Регистрация
galekx2
galekx2 0.00
н/д

Оценка оптимального количества кластеров

28.01.2020

Добрый день!

 

Подскажите, пожалуйста, если при использовании функции в Matlab

eva = evalclusters(meas,'kmeans','gap','KList',[1:N]) ; plot (eva);

получается возрастающая функция, при любом N, брала и 20 и 100 и 500 и т.д., все равно функция возрастает и оптимальное количество кластеров получается равным N, 

это означает что данный набор данных не кластиризуется?

Теги

    28.01.2020

    Лучший ответ

    • Artem+290.00
      29.01.2020 12:00

      Это, скорее всего, означает что у вас много кластеров (согласно данному алгоритму и критерию). Попробуйте другие алгоритмы и критерии, быть может получите другой результат.

      Но если ваши данные устроены примерно так: 1,2,10,11,30,31,45,46, 54,55 и т.д., то вы получите приблизительно n/2 кластеров. По этому, внимательно посмотрите как ваши данные устроены. Визуализируйте их. Если размерность данных больше 3, приведите данные к меньшей размерности.

    Ответы

    • Artem
      Artem+290.00
      29.01.2020 10:21

      Это, скорее всего, означает что у вас много кластеров (согласно данному алгоритму и критерию). Попробуйте другие алгоритмы и критерии, быть может получите другой результат.

      Но если ваши данные устроены примерно так: 1,2,10,11,30,31,45,46, 54,55 и т.д., то вы получите приблизительно n/2 кластеров. По этому, внимательно посмотрите как ваши данные устроены. Визуализируйте их. Если размерность данных больше 3, приведите данные к меньшей размерности.

      • galekx2
        galekx20.00
        30.01.2020 04:19

        Артем, спасибо большое за ответ!

         

        Проблема решилась удалением признаков с данными порядкого типа.