Чи є якась перевага SVD над PCA?


20

Я знаю, як обчислити PCA та SVD математично, і я знаю, що обидва можна застосувати до регресії лінійних найменших квадратів.

Основна перевага SVD математично виглядає в тому, що він може бути застосований до не квадратних матриць.

Обидва фокусуються на розкладанні матриціОкрім переваги зазначеного SVD, чи є додаткові переваги чи розуміння, надані за допомогою SVD над PCA?ХХ

Я справді шукаю інтуїцію, а не математичні відмінності.


2
Питання незрозуміле. Спочатку ви згадуєте регресію OLS. Потім він зникає. Далі, advantage... SVD over PCA- svd та PCA не можна порівнювати як математичний метод роботи та аналіз даних. Чи може ваше запитання щось стосуватись способів зробити PCA ? Або про що ви питаєте?
ttnphns

1
Вибачте за незрозумілість. У мене є оцінювачі типу хребта, які одні отримують за допомогою PCA, а інші використовують SVD. Існують різні способи налаштування моделей, тобто умови попередньої інформації, яку вони використовують. Але вони написані тим самим автором. Я намагаюся зрозуміти відмінності між ними і намагався з’ясувати, чому він використовує PCA vs SVD як основу для свого аналізу. Можливо, це було довільно, але якщо я можу зрозуміти плюси і мінуси, це допоможе. Поки здається, SVD - це лише спосіб зробити PCA, який має тенденцію бути більш стабільним в чисельності.
Баз

Це добре, але мені просто цікаво, чи використання SVD також створює додаткові економетричні уявлення / інтуїцію проблеми.
Баз

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

4
@Baz: "Наразі SVD - це лише спосіб зробити PCA, який має тенденцію бути стабільніше чисельно" - [у цьому контексті] це абсолютно правильно, так.
амеба повідомляє Відновити Моніку

Відповіді:


43

Як сказали @ttnphns і @ nick-cox, SVD - це числовий метод, а PCA - аналіз підходів (як мінімум квадратів). Ви можете зробити PCA за допомогою SVD, або ви можете зробити PCA, роблячи власне розкладання (або ), або ви можете зробити PCA, використовуючи багато інших методів, подібно до того, як ви можете вирішити найменші квадрати за допомогою десятка різних алгоритмів як метод Ньютона або спуск градієнта або СВД тощо.X X TХТХХХТ

Тож немає ніякої «переваги» для SVD перед PCA, оскільки це як запитання, чи краще метод Ньютона менший за найменші квадрати: ці два не порівнянні.


8
Хороший приклад того, як стисла, коротка відповідь все-таки може дістати до суті питання.
Нік Кокс

3
Нічого собі, 8 відповідей на цю відповідь та 0 нагород за оригінальне запитання. Це не має великого сенсу. Якщо ви відповідаєте за відповідь, розгляньте також питання про відмову!
амеба каже, що повернеться до Моніки

1
@amoeba Питання до мене бентежить. Відповідь дає зрозуміти, що таке плутанина. Я думаю, що це хороше пояснення відмінностей у голосах.
Нік Кокс

5
Насправді, щоб бути більш педантичним, SVD - це не чисельний метод сам по собі, це лінійна операція з алгебри, яку можна реалізувати, використовуючи конкретні чисельні методи, що включають такі речі, як перетворення домогосподарств ...
purple51

І все ж перевага (при виведенні основних компонентів через) SVD є числовим: більша точність. Дивіться, наприклад, Jolliffe (2002). Можливо
Нікос Олександріс

2

Питання справді задає питання, чи варто робити нормалізацію стовпців Z-балів перед застосуванням SVD. Це пояснюється тим, що PCA - це перерахована вище трансформація, за якою слід SVD. Іноді робити нормалізацію досить шкідливо. Якщо ваші дані, наприклад, (перетворені) підрахунки слів є позитивними, віднімання середнього значення, безумовно, шкідливо. Це тому, що нулі, які представляють відсутність слова в документі, будуть відображені в негативні числа з великою величиною. У лінійних задачах більш високу величину слід використовувати для представлення діапазону, де ваші функції є найбільш чутливими. Також поділ на стандартне відхилення шкідливо для даного типу даних.


Це цікавий приклад, але я вважаю, що він повинен належати до якоїсь іншої теми. PCA, безумовно, можна зробити без z-оцінка, тому я не погоджуюся з вашим першим реченням: це не те, що "справді задається".
Амеба каже: Відновити Моніку

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