Как PCA поможет с анализом кластеризации k-средних?

32

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

Основываясь на некоторых примерах (см. Этот пост в блоге: PCA и K-means Clustering Delta Aircraft ), я выяснил, как выполнить анализ:

  1. Сначала сделайте анализ PCA.

  2. Определите количество уникальных групп (кластеров) на основе результатов PCA (например, используя метод «колено» или, альтернативно, количество компонентов, которое объясняет от 80 до 90% общей дисперсии).

  3. Определив количество кластеров, примените кластеризацию k-средних для выполнения классификации.

Мои вопросы: казалось, что количество компонентов PCA связано с кластерным анализом. Так что это правда, если, скажем, мы обнаружили, что 5 компонентов PCA объяснили более чем 90% вариации всех функций, то мы применили бы кластеризацию k-средних и получили бы 5 кластеров. Таким образом, 5 групп точно соответствуют 5 компонентам в анализе PCA?

Другими словами, я предполагаю, что мой вопрос: какова связь между анализом PCA и кластеризацией k-средних?

Обновления: благодаря вкладу Эмре, Ксеона и Кирилла. Итак, текущие ответы:

  1. Выполнение PCA перед кластерным анализом также полезно для уменьшения размерности в качестве экстрактора признаков и визуализации / выявления кластеров.

  2. Выполнение PCA после кластеризации может проверить алгоритм кластеризации (ссылка: анализ основных компонентов ядра ).

  3. PCA иногда применяется для уменьшения размерности набора данных до кластеризации. Однако Yeung & Ruzzo (2000) показали, что кластеризация с ПК вместо исходных переменных не обязательно улучшает качество кластера. В частности, первые несколько компьютеров (которые содержат большую часть различий в данных) не обязательно фиксируют большую часть структуры кластера.

    • Йенг, Ка Йи и Уолтер Л. Руццо. Эмпирическое исследование по анализу главных компонентов для кластеризации данных по экспрессии генов. Технический отчет, факультет компьютерных наук и инженерии, Вашингтонский университет, 2000 г. ( pdf )
  4. Казалось, PCA необходим перед двухэтапным кластерным анализом . Основано на Ibes (2015), в котором кластерный анализ проводился с использованием факторов, определенных в PCA.

enaJ
источник
1
Вы можете использовать PCA для уменьшения размерности в качестве экстрактора элементов и для визуализации кластеров.
Эмре
3
Начните с простого: запустите классификатор непосредственно на имеющихся у вас данных и отметьте производительность. Если вы не удовлетворены производительностью, попробуйте PCA (выберите количество компонентов в «колене» отсортированного графика собственных значений) и выполните k-means. Если вы видите хорошие кластеры, есть хороший шанс, что классификатор PCA + сработает хорошо.
Владислав Довгальец
1
Вы можете сделать PCA и после кластеризации, чтобы проверить алгоритм кластеризации; Цветовой код каждой точки по метке кластера. Я также рекомендую заглянуть в ядро PCA .
Эмре
Существуют методы, которые одновременно выполняют уменьшение размерности и кластеризацию. Эти методы ищут оптимально выбранное низкоразмерное представление, чтобы облегчить идентификацию кластеров. Например, см. Пакет clustrd в R и соответствующие ссылки.
Nat

Ответы:

16

PCA не является методом кластеризации. Но иногда это помогает выявить кластеры.

Предположим, у вас есть 10-мерные нормальные распределения со средним значением (вектор нулей) и некоторая ковариационная матрица с тремя направлениями, имеющими большую дисперсию, чем другие. Применение анализа основных компонентов с 3 компонентами даст вам эти указания в порядке убывания, а подход «локтя» скажет вам, что это количество выбранных компонентов является правильным. Тем не менее, это будет все еще облако точек (1 кластер).010

Предположим, у вас есть 10 10-мерных нормальных распределений со средними значениями , , ... (средние значения остаются почти на линии) и аналогичными ковариационными матрицами. Применение PCA только с одним компонентом (после стандартизации) даст вам направление, в котором вы будете наблюдать все 10 кластеров. Анализируя объясненную дисперсию (подход «колено»), вы увидите, что для описания этих данных достаточно одного компонента.1102101010

0

Кирилл
источник
Спасибо за ваш вклад. Не могли бы вы объяснить, что такое 10-мерные нормальные распределения со средним 0? Вы имеете в виду десять входных переменных объекта, и каждая из них соответствует нормальному распределению?
enaJ
Извините, я говорю о случайной переменной, которая следует за многомерным нормальным распределением со средним значением, которое будет 10-мерной векторной и ковариационной матрицей, которая является симметричной матрицей 10x10.
Кирилл