Це питання багато в чому стосується визначень PCA / FA, тому думки можуть відрізнятися. Моя думка, що PCA + varimax не слід називати PCA чи FA, а досить чітко називатись, наприклад, "PCA з поворотом у варімаксі".
Додам, що це досить заплутана тема. У цій відповіді я хочу пояснити , що поворот на насправді є ; для цього знадобиться деяка математика. Випадковий читач може перейти безпосередньо до ілюстрації. Тільки тоді ми можемо обговорити, чи слід обертання PCA + слід називати "PCA".
Одне посилання на книгу Джолліффа «Аналіз основних компонентів», розділ 11.1 «Обертання основних компонентів», але я вважаю, що це може бути зрозумілішим.
Нехай - матриця даних яку, як ми вважаємо, зосереджена. PCA дорівнює ( див. Мою відповідь тут ) на розклад значення сингулярного значення: . На цю декомпозицію є два еквівалентні, але безкоштовні погляди: перегляд більш «проекції» в стилі PCA і більш «латентні змінні» в стилі FA. n × p X = U S V ⊤Xn×pX=USV⊤
Згідно з поданням у стилі PCA, ми знайшли купу ортогональних напрямків (це власні вектори матриці коваріації, які також називаються "основні напрямки" або "осі") та "головні компоненти" ( також називається головним компонентом "балів") - це прогнози даних по цих напрямках. Основні компоненти не пов'язані між собою, перший має максимально можливу дисперсію і т. Д. Ми можемо записати:U S X = U S ⋅ V ⊤ = Оцінки ⋅ Основні напрямки .VUS
X=US⋅V⊤=Scores⋅Principal directions.
Згідно з поглядом у стилі FA, ми знайшли деякі некорельовані одиничні дисперсії "прихованих факторів", які спричиняють спостережувані змінні через "навантаження". Дійсно, є стандартизованими основними компонентами (некорельовані та з одиничною дисперсією), і якщо ми визначаємо навантаження як , тоді (Зверніть увагу, що .) Обидва погляди еквівалентні. Зауважимо, що навантаження - це власні вектори, масштабовані за відповідними власними значеннями ( є власними значеннями матриці коваріації).L=VS/ √U˜=n−1−−−−−√U X= √L=VS/n−1−−−−−√
X=n−1−−−−−√U⋅(VS/n−1−−−−−√)⊤=U˜⋅L⊤=Standardized scores⋅Loadings.
S⊤=SS/n−1−−−−−√
(Я повинен додати в дужках, що PCA FA≠ ; FA явно спрямований на пошук прихованих факторів, які лінійно відображаються до спостережуваних змінних за допомогою навантажень; він більш гнучкий, ніж PCA і дає різні навантаження. Ось чому я вважаю за краще називати вище "Перегляд у стилі FA на PCA", а не FA, хоча деякі люди вважають це одним із методів FA.)
Тепер, що робить обертання? Наприклад, ортогональне обертання, наприклад, варимакс. По-перше, він розглядає лише компоненти, тобто:Тоді він займає квадратний ортогональний матриця і підключає до цього розкладу: де поворотні навантаження задаютьсяk<p
X≈UkSkV⊤k=U˜kL⊤k.
k×kTTT⊤=IX≈UkSkV⊤k=UkTT⊤SkV⊤k=U˜rotL⊤rot,
˜ U r o t = ˜ U k T T L r o tLrot=LkT, І обертали стандартизовані бали даються . (Мета цього - знайти таким, щоб став максимально наближеним до того, наскільки це можливо, для полегшення його інтерпретації.)
U˜rot=U˜kTTLrot
Зауважте, що обертається: (1) стандартизовані бали, (2) завантаження. Але не сирі рахунки та не основні напрямки! Тож обертання відбувається в латентному просторі, а не в початковому просторі. Це абсолютно важливо.
З точки зору стилю FA, нічого особливого не відбулося. (A) Латентні фактори все ще є некорельованими та стандартизованими. (B) Вони все ще відображаються до спостережуваних змінних за допомогою (обертових) навантажень. (C) Кількість дисперсії, що охоплюється кожним компонентом / коефіцієнтом, визначається сумою квадратних значень відповідного стовпчика навантажень у . (D) Геометрично навантаження все ще охоплюють той самий -вимірний підпростір у (підпростір, що охоплюється першими власними векторами PCA). (E) Наближення до та помилка відновлення взагалі не змінилися. (F) Матриця коваріації все ще наближається однаково добре: k R p k XLrotkRpkX
Σ≈LkL⊤k=LrotL⊤rot.
Але точка зору в стилі PCA практично зруйнувалася. Поворотні навантаження більше не відповідають ортогональним напрямкам / осям у , тобто стовпці не є ортогональними! Гірше, якщо ви [ортогонально] запроектуєте дані на напрямки, задані поворотними навантаженнями, ви отримаєте співвіднесені (!) Прогнози і не зможете відновити бали. [Натомість для обчислення стандартизованих балів після обертання потрібно помножити матрицю даних на псевдоінверсію навантажень . Крім того, можна просто обертати оригінальні стандартизовані бали за допомогою матриці обертання:RpLrotU˜rot=X(L+rot)⊤U˜rot=U˜T ] Також обертові компоненти послідовно не фіксують максимальну кількість дисперсії: дисперсія перерозподіляється між компонентами (навіть хоча всі обертові компоненти охоплюють рівно стільки ж дисперсії, скільки всі вихідні головні компоненти).kk
Ось ілюстрація. Дані - це 2D еліпс, розтягнутий уздовж основної діагоналі. Перший головний напрямок - головна діагональ, другий - ортогональний. Вектори завантаження PCA (власні вектори, масштабовані власними значеннями) відображаються червоним кольором - вказують в обох напрямках, а також розтягуються постійним коефіцієнтом видимості. Потім я застосував до навантажень ортогональне обертання на . Отримані вектори навантаження показані пурпуровими. Зверніть увагу, як вони не є ортогональними (!).30∘
Тут інтуїція стилю FA полягає в наступному: уявіть собі «прихований простір», де точки заповнюють невелике коло (походять від 2D-гаусса з одиничними відхиленнями). Цей розподіл точок потім розтягується вздовж навантажень PCA (червоний), щоб стати еліпсом даних, який ми бачимо на цій фігурі. Однак однаковий розподіл точок можна повернути і потім розтягнути вздовж обертових навантажень PCA (пурпурового), щоб стати тими самими еліпсами даних .
[Щоб насправді побачити, що ортогональне обертання вантажів - це обертання , потрібно подивитися на біплот PCA; там вектори / промені, що відповідають оригінальним змінним, просто обертаються.]
Підведемо підсумки. Після ортогонального обертання (наприклад, варимакса) осі "обертаються-головні" не є ортогональними, і ортогональні проекції на них не мають сенсу. Тож варто скористатися цілою точкою осі / проекції точки зору. Було б дивно все ще називати його PCA (що стосується проекцій з максимальною дисперсією тощо).
З точки зору стилю FA, ми просто обертали наші (стандартизовані та некорельовані) латентні фактори, що є дійсною операцією. У ФА немає "прогнозів"; натомість приховані фактори породжують спостережувані змінні за допомогою навантажень. Ця логіка досі зберігається. Однак ми почали з основних компонентів, які насправді не є факторами (оскільки PCA не є тим же, що і FA). Тож було б дивно називати це і ФА.
Замість того, щоб обговорювати, чи варто «називати» PCA чи FA, я б запропонував бути ретельним у визначенні точної використовуваної процедури: «PCA з наступним обертанням varimax».
Postcriptum. Це є можливим розглянути альтернативну процедуру обертання, де вставляється між і . Це призведе до повороту неочищених балів та власних векторів (замість стандартизованих балів та навантажень). Найбільша проблема такого підходу полягає в тому, що після такого «обертання» бали більше не будуть співвідноситись, що є досить фатальним для PCA. Це можна зробити, але це не так, як ротації зазвичай розуміються та застосовуються.TT⊤USV⊤