☹️ Какие подводные камни и edge-cases встречаются при применении PCA
➡️ Масштабирование признаков — если признаки измеряются в разных единицах и имеют сильно разные масштабы, то компоненты будут доминироваться признаками с высокой дисперсией. Обычно перед PCA данные стандартизируют (mean=0, std=1).
➡️ Линейность метода — PCA работает только с линейными зависимостями. Если данные имеют нелинейную структуру (например, лежат на многообразии), то PCA не уловит её. В таких случаях применяют kernel PCA или manifold learning.
➡️ Интерпретация компонент — хотя PCA и несупервизированный метод, часто возникает соблазн приписывать главным компонентам слишком явный смысл. На деле они могут быть трудны для интерпретации.
➡️ Мало наблюдений — если выборка меньше размерности (N < D), матрица ковариации может оказаться вырожденной. Лучше использовать SVD-реализацию PCA, которая стабильнее.
➡️ Выбор числа компонент — нет универсального правила. Иногда используют порог по объяснённой дисперсии (например, 95%), иногда руководствуются доменной экспертизой или CV на супервизированной задаче.
🐸 Библиотека собеса по Data Science
Post #1166
722
- ❤ 2