Каковы основные различия между выполнением анализа главных компонентов (PCA) на матрице корреляции и ковариационной матрице? Они дают одинаковые результаты?
Каковы основные различия между выполнением анализа главных компонентов (PCA) на матрице корреляции и ковариационной матрице? Они дают одинаковые результаты?
Ответы:
Вы склонны использовать ковариационную матрицу, когда переменные шкалы похожи, и корреляционную матрицу, когда переменные находятся в разных шкалах.
Использование матрицы корреляции эквивалентно стандартизации каждой из переменных (для обозначения 0 и стандартного отклонения 1). В целом, PCA с и без стандартизации даст разные результаты. Особенно когда весы разные.
В качестве примера рассмотрим этот heptathlon
набор данных R. Некоторые из переменных имеют среднее значение около 1,8 (прыжок в высоту), в то время как другие переменные (пробег 800 м) около 120.
library(HSAUR)
heptathlon[,-8] # look at heptathlon data (excluding 'score' variable)
Это выводит:
hurdles highjump shot run200m longjump javelin run800m
Joyner-Kersee (USA) 12.69 1.86 15.80 22.56 7.27 45.66 128.51
John (GDR) 12.85 1.80 16.23 23.65 6.71 42.56 126.12
Behmer (GDR) 13.20 1.83 14.20 23.10 6.68 44.54 124.20
Sablovskaite (URS) 13.61 1.80 15.23 23.92 6.25 42.78 132.24
Choubenkova (URS) 13.51 1.74 14.76 23.93 6.32 47.46 127.90
...
Теперь давайте сделаем PCA на ковариацию и корреляцию:
# scale=T bases the PCA on the correlation matrix
hep.PC.cor = prcomp(heptathlon[,-8], scale=TRUE)
hep.PC.cov = prcomp(heptathlon[,-8], scale=FALSE)
biplot(hep.PC.cov)
biplot(hep.PC.cor)
Обратите внимание, что PCA на ковариации преобладают run800m
и javelin
: PC1 почти равен run800m
(и объясняет отклонения), а PC2 почти равен (вместе они объясняют ). PCA по корреляции гораздо более информативен и показывает некоторую структуру данных и взаимосвязи между переменными (но обратите внимание, что объясненная разница падает до и ).97 % 64 % 71 %javelin
Обратите также внимание на то, что отдаленные индивидуумы (в этом наборе данных) являются выбросами независимо от того, используется ли ковариационная или корреляционная матрица.
Бернард Флери в своей превосходной книге, посвященной многомерному анализу, описал это как антисвойство главных компонентов. Это на самом деле хуже, чем выбирать между корреляцией или ковариацией. Если вы изменили единицы измерения (например, галлоны в американском стиле, дюймы и т. Д., Литры в европейском стиле, сантиметры), вы получите существенно разные проекции данных.
Аргумент против автоматического использования матриц корреляции заключается в том, что это довольно грубый способ стандартизации ваших данных. Проблема с автоматическим использованием ковариационной матрицы, которая очень очевидна для этих данных гепаталона, состоит в том, что переменные с наибольшей дисперсией будут доминировать над первым главным компонентом (свойство максимизации дисперсии).
Таким образом, «лучший» метод для использования основан на субъективном выборе, тщательном осмыслении и некотором опыте.
НЕТРАНСФОРМИРОВАННЫЕ (RAW) ДАННЫЕ: Если у вас есть переменные с широко варьирующимися шкалами для необработанных, нетрансформированных данных, то есть калорийность питания в день, экспрессия генов, ELISA / Luminex в единицах мкг / дл, нг / дл, на основе нескольких порядков Величина экспрессии белка, а затем использовать корреляцию в качестве входных данных для PCA. Однако, если все ваши данные основаны, например, на экспрессии генов на той же платформе с аналогичным диапазоном и масштабом, или вы работаете с доходностью активов журнала, тогда использование корреляции приведет к огромному количеству информации.
На самом деле вам не нужно думать о разнице в использовании корреляционной матрицы или ковариационной матрицы в качестве входных данных для PCA, а скорее посмотрите на диагональные значения и . Вы можете наблюдать дисперсию для одной переменной и для другой - по диагонали . Но при рассмотрении корреляций диагональ содержит все единицы, поэтому дисперсия каждой переменной по существу изменяется на когда вы используете матрицу .
ПРЕОБРАЗОВАННЫЕ ДАННЫЕ: Если данные были преобразованы с помощью нормализации, процентилей или стандартизации среднего нуля (т. Е. баллов), так что диапазон и масштаб всех непрерывных переменных одинаковы, то вы можете использовать матрицу ковариации без проблем. (корреляция будет означать-ноль стандартизировать переменные). Напомним, однако, что эти преобразования не будут устранять асимметрию (т. Е. Левый или правый хвост на гистограммах) в ваших переменных до запуска PCA . Типичный анализ PCA не включает устранение асимметрии; однако некоторым читателям может потребоваться устранить асимметрию, чтобы соответствовать строгим нормальным нормам.
Таким образом, используйте корреляционную матрицу когда диапазон и масштаб переменной сильно различаются, и используйте ковариационную матрицу чтобы сохранить дисперсию, если диапазон и масштаб переменных одинаковы или в тех же единицах измерения измерения.
ПЕРЕКЛЮЧЕННЫЕ ПЕРЕМЕННЫЕ: Если какая-либо из переменных перекошена с левым или правым хвостом в их гистограммах, т. Е. Критерий нормальности Шапиро-Уилка или Лилифорса является значительным , то могут возникнуть некоторые проблемы, если вам нужно применить нормальность предположение. В этом случае используйте оценки Ван-дер-Вардена (преобразования), определенные для каждой переменной. Оценка Ван дер Вардена (VDW) для одного наблюдения - это просто обратное кумулятивное (стандартное) нормальное отображение значения процентиля наблюдения. Например, скажем, у вас есть наблюдений для непрерывной переменной, вы можете определить баллы VDW, используя:
Например, если вы подключите значение 0.025, вы получите . То же самое касается значения плагина , вы получите .
Использование показателей VDW очень популярно в генетике, где многие переменные преобразуются в оценки VDW, а затем вводятся в анализы. Преимущество использования показателей VDW заключается в том, что эффекты асимметрии и выбросы удаляются из данных и могут использоваться, если цель состоит в том, чтобы выполнить анализ в условиях нормальности - и каждая переменная должна быть чисто стандартным нормальным распределением без асимметрии или выбросы.
Распространенный ответ заключается в том, чтобы предположить, что ковариация используется, когда переменные находятся в одном и том же масштабе, и корреляция, когда их масштабы различны. Однако это верно только тогда, когда масштаб переменных не является фактором. Иначе зачем кому-то делать ковариацию PCA? Было бы безопаснее всегда выполнять корреляцию PCA.
Представьте, что ваши переменные имеют разные единицы измерения, такие как метры и килограммы. Не имеет значения, используете ли вы метры или сантиметры в этом случае, поэтому вы можете утверждать, что следует использовать матрицу корреляции.
Рассмотрим сейчас население людей в разных штатах. Единицы измерения одинаковы - количество человек. Теперь масштабы могут быть другими: DC имеет 600K и CA - 38M человек. Должны ли мы использовать корреляционную матрицу здесь? По-разному. В некоторых приложениях мы хотим настроить размер государства. Использование ковариационной матрицы является одним из способов построения факторов, которые учитывают размер государства.
Следовательно, мой ответ - использовать ковариационную матрицу, когда дисперсия исходной переменной важна, и использовать корреляцию, когда это не так.
Лично я считаю очень ценным обсуждение этих вариантов в свете модели анализа главных компонентов максимального правдоподобия (MLPCA) [1,2]. В MLPCA применяется масштабирование (или даже вращение), чтобы погрешности измерения в измеряемых переменных были независимыми и распределялись в соответствии со стандартным нормальным распределением. Это масштабирование также известно как максимальное правдоподобие (MALS) [3]. В некоторых случаях модель PCA и параметр, определяющий масштабирование / вращение MALS, могут оцениваться вместе [4].
Чтобы интерпретировать PCA на основе корреляции и ковариации, можно утверждать, что:
Как уже говорилось выше, окончательный выбор зависит от допущений, которые вы делаете. Кроме того, полезность любой конкретной модели зависит также от контекста и цели вашего анализа. Цитируя Джорджа EP Box: «Все модели не правы, но некоторые полезны».
[1] Wentzell, PD, Andrews, DT, Hamilton, DC, Faber, K. & Kowalski, BR (1997). Анализ главных компонент максимального правдоподобия. Журнал Chemometrics, 11 (4), 339-366.
[2] Wentzell, PD & Lohnes, MT (1999). Анализ главных компонент с максимальной вероятностью с коррелированными ошибками измерения: теоретические и практические соображения Хемометрика и интеллектуальные лабораторные системы, 45 (1-2), 65-85.
[3] Hoefsloot, HC, Verouden, MP, Westerhuis, JA, & Smilde, AK (2006). Масштабирование максимального правдоподобия (MALS). Журнал Chemometrics, 20 (3‐4), 120-127.
[4] Нарасимхан С. и Шах, С.Л. (2008). Идентификация модели и оценка ковариационной матрицы ошибок по зашумленным данным с использованием PCA. Контрольно-инженерная практика, 16 (1), 146-155.
[5] Tipping, ME & Bishop, CM (1999). Вероятностный анализ главных компонент. Журнал Королевского статистического общества: Серия B (Статистическая методология), 61 (3), 611-622.
Прямо и просто: если весы похожи, используйте cov-PCA, если нет - используйте corr-PCA; в противном случае, лучше не защищаться. Если вы сомневаетесь, используйте F-тест на равенство дисперсий (ANOVA). Если он не прошел F-тест, используйте corr; в противном случае используйте cov.
Аргументы, основанные на масштабе (для переменных, выраженных в тех же физических единицах) кажутся довольно слабыми. Представьте себе набор (безразмерных) переменных, стандартные отклонения которых колеблются от 0,001 до 0,1. По сравнению со стандартизированным значением 1 они оба кажутся «небольшими» и сопоставимыми уровнями колебаний. Однако, когда вы выражаете их в децибелах, это дает диапазон -60 дБ против -10 и 0 дБ соответственно. Тогда это, вероятно, будет классифицировано как «большой диапазон» - особенно если вы включите стандартное отклонение, близкое к 0, то есть минус бесконечность дБ.
Мое предложение состояло бы в том, чтобы сделать ОБА основанный на корреляции и ковариации PCA. Если эти двое дают одинаковые (или очень похожие, что бы это ни значило) ПК, тогда вы можете быть уверены, что у вас есть ответ, который имеет смысл. Если они дают разные ПК, не используйте PCA, потому что два разных ответа на одну проблему - это не разумный способ решения вопросов.