PCA на кореляцію чи коваріацію?


153

Які основні відмінності між виконанням аналізу основних компонентів (PCA) на кореляційній матриці та на матриці коваріації? Чи дають вони однакові результати?


2
Пізня відповідь, але ви можете знайти ДУЖЕ корисні роздатки щодо багатофакторного аналізу даних "à la française" у відділі біоінформатики Ліона. Вони походять від авторів пакету R ade4 . Хоча це по-французьки.
chl

3
Для додаткового обговорення, будь ласка , відвідайте stats.stackexchange.com/questions/62677 / ... .
whuber

Відповіді:


130

Ви схильні використовувати матрицю коваріації, коли масштаби змінних схожі, а матрицю кореляції, коли змінні знаходяться на різних масштабах.

Використання кореляційної матриці еквівалентно стандартизації кожної зі змінних (означає середнє 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 на кореляцію чи коваріацію

Зауважте, що в коваріації PCA переважає run800mі javelin: PC1 майже дорівнює run800m(і пояснює 82% дисперсії), а PC2 майже дорівнює javelin(разом вони пояснюють 97% ). PCA за кореляцією є набагато більш інформативним і виявляє певну структуру даних та зв’язки між змінними (але зауважте, що пояснені відхилення падають до 64% та 71% ).

Зауважте також, що відсторонені особи (у цьому наборі даних) є позашляховиками незалежно від того, чи використовується матриця коваріації чи кореляції.


Яка ситуація, якщо я перетворять змінні в z-бали спочатку?
Jirka-x1

9
@ Jirka-x1 коваріаційна матриця стандартизованих змінних (тобто z балів) дорівнює матриці кореляції.
Олексій

@ Алексис Чи можна зробити висновок, що матриця коваріації стандартизованих змінних дорівнює матриці кореляції стандартизованих змінних?
jb

1
@JamieBullock (коваріаційна матриця) для стандартизованих даних = R (кореляційна матриця). R = R незалежно від того, стандартизовані чи ні дані (кореляція нечутлива до лінійних перетворень даних. Так, наприклад, якщо у вас X і Y і вони співвідносяться з r X Y , то якщо X = a X + b і Y = a Y + b X і Y також корелюють з r X YΣRR=RХYrХYХ=аХ+бY=аY+б ХYrХY).
Олексій

Одне важливе зауваження: при використанні коваріації у вашому PCA, ваші ПК не будуть співвідносити один одного, що не відповідає дійсності PCA на основі кореляції. Це особливо важливо при здійсненні PCA до регресії в мультиколінарному наборі пояснювальних змінних. Однак теорія, що стоїть за цим, не зрозуміла. Чи може хтось пролити трохи світла на цю різницю?
ouranos

54

Бернард Флюрі у своїй чудовій книзі, що представляє багатоваріантний аналіз, описав це як властивість основних компонентів. Це насправді гірше, ніж вибір між кореляцією чи коваріацією. Якщо ви змінили одиниці (наприклад, галони, дюйми тощо в США та літри, сантиметри в стилі ЄС), ви отримаєте істотно різні прогнози даних.

Аргумент проти автоматичного використання кореляційних матриць полягає в тому, що це досить жорстокий спосіб стандартизації ваших даних. Проблема з автоматичним використанням матриці коваріації, що дуже очевидно з даними гептаталону, полягає в тому, що змінні з найбільшою дисперсією будуть домінувати над першим головним компонентом (властивістю максимізації дисперсії).

Тож "найкращий" метод, що використовується, базується на суб'єктивному виборі, ретельному обдумуванні та певному досвіді.


46

НЕТРАНСФОРМОВАНІ (RAW) ДАНІ: Якщо у вас є змінні з широко різними масштабами для необроблених, неперероблених даних, тобто споживання калорій на день, експресія генів, ІФА / Luminex в одиницях ug / dl, нг / дл, виходячи з кількох порядків величиною експресії білка, потім використовують кореляцію як вхід до PCA. Однак якщо всі ваші дані ґрунтуються, наприклад, на експресії генів з однієї платформи з аналогічним діапазоном і масштабом, або ви працюєте з доходами активів власного капіталу, то використання кореляції викине величезну кількість інформації.

RССR10010С1R

ZС

RС

(П<0,05)н=100

  1. Ri=1,2,,100.
  2. pcтi=Ri/(н+1)
  3. N(0,1)ZZi=Φ-1(pcтi)

pcтi-1,96=Φ-1(0,025)pcтi=0,9751,96=Φ-1(0,975)

Використання балів VDW дуже популярне в генетиці, де багато змінних перетворюються на бали VDW, а потім вводяться в аналізи. Перевага використання балів VDW полягає в тому, що у даних видаляються перекоси та зовнішні ефекти, і вони можуть бути використані, якщо метою є аналіз за нормами нормальності - і кожна змінна повинна бути чисто стандартною, звичайною, розподіленою без косості. або пережили


7
Це, безумовно, найрозумніша відповідь, оскільки вона насправді дає належну думку, що коваріація виграє, коли це доречно. Занадто багато відповідей тут і в інших місцях згадують звичайне "це залежить", фактично не даючи важкої основи, чому слід віддати перевагу коваріації, якщо це можливо . Ось lep do: коваріація не вимикає жодної інформації, яка відповідає кореляції. Приклад даних про запаси є хорошим: великі бета-акції, звичайно, мають більш високі навантаження, але вони, ймовірно, повинні , як і будь-який аспект будь-якого більш мінливого аналізу, як правило, цікавіший (в межах причини).
Томас Браун

3
Звичайно, проблема, яку слід розглядати, є цікавою стороною аналізу, чи є більш висока дисперсія. Якщо це не так, то, звичайно, краще корелювати, і це однозначно, якщо одиниці різні.
Томас Браун

Чудова відповідь +1. Думаю, ще одним прикладом може бути застосування PCA до аналізу термінової структури доходності облігацій у фінансах. Варіантність врожаю на різних термінах погашення різниться, але оскільки всі вони врожаї, різні масштаби зазвичай не є неприйнятно широкими. Дійсно, більша / менша мінливість певного зрілості дає самі багату інформацію.
Микола

11

Загальна відповідь полягає в тому, щоб припустити, що коваріація використовується, коли змінні знаходяться в одній шкалі, і кореляція, коли їх масштаби різні. Однак це справедливо лише тоді, коли масштаб змінних не є фактором. В іншому випадку, чому хто-небудь коли-небудь робити коваріаційний PCA? Було б безпечніше завжди виконувати кореляційний PCA.

Уявіть, що ваші змінні мають різні одиниці вимірювання, такі як метри та кілограми. Не має значення, чи використовуєте ви метри або сантиметри в цьому випадку, тому ви можете стверджувати, що слід використовувати матрицю кореляції.

Розглянемо зараз чисельність населення у різних штатах. Одиниці виміру однакові - кількість (кількість) людей. Тепер ваги можуть бути різними: у штаті постійного струму 600К, а у ЦА - 38 млн. Осіб. Чи варто тут використовувати кореляційну матрицю? Це залежить. У деяких додатках ми хочемо відкоригувати розмір штату. Використання матриці коваріації є одним із способів побудови факторів, що враховують розмір стану.

Отже, моя відповідь - використовувати коваріаційну матрицю, коли важлива дисперсія вихідної змінної, а також використовувати кореляцію, коли її немає.


2

Я особисто вважаю дуже цінним обговорювати ці варіанти з огляду на модель аналізу максимальної ймовірності основних компонентів (MLPCA) [1,2]. У MLPCA застосовується масштабування (або навіть обертання) таким чином, що похибки вимірювання вимірюваних змінних є незалежними та розподіляються відповідно до стандартного нормального розподілу. Це масштабування також відоме як максимальне масштабування ймовірності (MALS) [3]. У деяких випадках модель PCA та параметр, що визначає масштабування / обертання MALS, можна оцінювати разом [4].

Для інтерпретації PCA на основі кореляції та коваріації можна стверджувати, що:

  1. PCA на основі коваріації еквівалентний MLPCA всякий раз, коли матриця дисперсії-коваріації помилок вимірювання вважається діагональною з рівними елементами на її діагоналі. Параметр дисперсії помилки вимірювання може бути оцінений за допомогою моделі ймовірнісного аналізу основних компонентів (PPCA) [5]. Я вважаю це обґрунтованим припущенням у декількох вивчених нами випадках, зокрема, коли всі вимірювання є однотипними змінними (наприклад, всі потоки, всі температури, всі концентрації або всі вимірювання поглинання). Дійсно, можна з упевненістю припустити, що похибки вимірювання таких змінних розподіляються незалежно та однаково.
  2. Кореляція на основі PCA еквівалентна MLPCA всякий раз, коли матриця дисперсії-коваріації помилок вимірювання вважається діагональною з кожним елементом по діагоналі, пропорційним загальній дисперсії відповідної вимірюваної змінної. Хоча це популярний метод, я особисто вважаю, що припущення про пропорційність в більшості випадків, які я вивчаю, нерозумно. Як наслідок, це означає, що я не можу інтерпретувати PCA на основі кореляції як модель MLPCA. У випадках, коли (1) припущенні припущення PCA на основі коваріації не застосовуються та (2) інтерпретація MLPCA є цінною, я рекомендую замість цього використати один із методів MLPCA [1-4].
  3. PCA, заснований на кореляції та на коваріації, дасть такі самі результати - порівняно зі скалярним множником - коли індивідуальні відхилення для кожної змінної точно рівні між собою. Коли ці індивідуальні дисперсії схожі, але не однакові, обидва методи дадуть однакові результати.

Як вже було підкреслено вище, остаточний вибір залежить від ваших припущень. Крім того, корисність будь-якої конкретної моделі також залежить від контексту та мети вашого аналізу. Процитуйте Джорджа EP Box: "Усі моделі помиляються, але деякі корисні".

[1] Wentzell, PD, Andrews, DT, Hamilton, DC, Faber, K., and Kowalski, BR (1997). Аналіз максимальної ймовірності основного компонента. Журнал хіміометрії, 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). Журнал хіміометрії, 20 (3–4), 120–127.

[4] Нарасимхан, С., Шах, SL (2008). Ідентифікація моделі та оцінка коефіцієнтної матриці помилок за шумними даними за допомогою PCA. Практика контрольної техніки, 16 (1), 146-155.

[5] Тіпінг, М.Є. та Бішоп, CM (1999). Імовірнісний аналіз основних компонентів. Журнал Королівського статистичного товариства: Серія B (Статистична методологія), 61 (3), 611-622.


-1

Прямо і просто: якщо ваги схожі, використовуйте cov-PCA, якщо ні, використовуйте corr-PCA; інакше вам краще захистити не. Якщо ви сумніваєтесь, використовуйте F-тест на рівність дисперсій (ANOVA). Якщо вона не відповідає F-тесту, використовуйте corr; в іншому випадку використовуйте cov.


2
-1. Я не бачу, чому проведення F-тесту може бути тут доречним. PCA є дослідницьким методом, а не підтверджуючим (як статистичні тести).
амеба

-5

Аргументи на основі шкали (для змінних, виражених в одних і тих же фізичних одиницях) здаються досить слабкими. Уявіть набір змінних (безрозмірних) змінних, стандартні відхилення яких змінюються між 0,001 та 0,1. У порівнянні зі стандартизованим значенням 1, вони обидва здаються «малими» і порівнянними рівнями коливань. Однак, коли ви виражаєте їх в децибелі, це дає діапазон -60 дБ проти -10 і 0 дБ відповідно. Тоді, мабуть, тоді це було б класифіковане як "великий діапазон", особливо якщо ви включаєте стандартне відхилення, близьке до 0, тобто мінус нескінченність дБ.

Моя пропозиція полягала б у тому, щоб зробити ВІДКР на основі кореляції та коваріації. Якщо ці двоє дають однакові (або дуже схожі, що б це не означало) ПК, то можна переконатись, що ви отримали відповідь, що має сенс. Якщо вони дають дуже різні ПК, не використовуйте PCA, оскільки два різних відповіді на одну проблему не є розумним способом вирішення питань.


9
(-1) Отримати "дві різні відповіді на одну і ту ж проблему" часто означає, що ви безглуздо відбиваєтесь, не замислюючись про те, яка методика підходить для ваших аналітичних цілей. Це не означає, що одна або (як ви заявляєте) обидві методи не є розумними, а лише те, що принаймні одна може не відповідати проблемі чи даним. Крім того, у багатьох випадках можна передбачити, що PCA на основі коваріації та PCA на основі кореляції повинні дати різні відповіді. Зрештою, вони вимірюють різні аспекти даних. Робити обидва за замовчуванням не було б сенсу.
качан

Насправді дуже розумно отримати 2 різні відповіді при використанні PCA з кореляцією та коваріацією. У випадку з акціями, питання про те, чи варто брати до уваги бета (або стандартне відхилення)
Juancentro
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.