На скільки розмірів слід зменшити, роблячи PCA?


12

Як вибрати K для PCA? K - кількість розмірів, на які слід проектувати. Єдина вимога - не втрачати занадто багато інформації. Я розумію, це залежить від даних, але я шукаю більше простий загальний огляд того, які характеристики слід враховувати при виборі K.


Залежить від допустимої втрати даних, а також від постановки проблеми!
Світанок33

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

Відповіді:


13

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


(+1) Так, просто так :)
Світанок33

3

Я зазвичай перевіряю на відсоток інформації, що міститься за значенням K. Скажімо, з 8 полів, 2 з них містять 90% інформації. Тоді немає сенсу включати інші 6 або 5 полів. Якщо вам відомі дані з списку даних, із 768 вхідних даних я використав лише 250, що нахилило мою точність від 83 до 96%. Справа в тому, що більше розмірності приносить більше проблем. Тож відріжте їх. Зазвичай я беру лише К, який містить лише 90% інформації, і це працює на мене.


Привіт .. У мене є подібна проблема, де я хотів би використовувати x% інформації і не знаю, як це зробити? Я маю намір використовувати IPCA для цього, я можу залишити n_components = None, але як я тоді вирішую, які функції мають x% даних?
Арсенал Фанатик
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.