Ортогональная проекция на направления максимальной — линейное сжатие с минимальной потерей информации.
Ключевые тезисы
- Компоненты — ковариационной , вычисляются через SVD.
- Число компонент подбирают по доле объяснённой (например, 95%).
- Требует предварительной и плохо ловит нелинейную структуру.
Какую задачу решает
Когда сотни, они почти всегда избыточны: часть дублирует друг друга, часть — чистый шум. находит новые оси — линейные комбинации исходных признаков, — вдоль которых данные разбросаны сильнее всего, и позволяет оставить лишь первые несколько.
Формально это поворот системы координат в направления максимальной , вычисляемый через ковариационной (или SVD). Практический смысл: если 95% разброса данных объясняются десятью компонентами из двухсот, остальные 190 можно выбросить почти без потерь — и получить более быструю, более устойчивую и менее переобучающуюся модель.
Постройте график накопленной объяснённой . Типичная картина на реальных данных: первые 10 компонент из 200 дают 85%, первые 30 — 95%, остальные 170 добавляют оставшиеся 5%, которые в основном шум. Берите столько, сколько нужно для 90–95%, — но проверьте выбор по итоговой метрике модели, а не только по этому графику: изредка важная для задачи информация лежит именно в младших компонентах. Если такое обнаружилось, для этой задачи не подходит — используйте под целевую переменную.
Подробный разбор
- Центрировать данные (и обычно стандартизировать).
- Посчитать ковариационную .
- Найти её и значения (на практике — через SVD ).
- Отсортировать по убыванию и взять первые как новый базис.
- сила регуляризации
- номер или количество: индекс шага, число соседей, кластеров или позиций
- суммирование по всем перечисленным элементам
- не знает про целевую переменную: он может выбросить компоненту с малой , но огромной предсказательной силой.
- Без компоненты определяются с самым большим масштабом.
- Компоненты — линейные комбинации всех , поэтому интерпретируемость теряется.
- Нелинейную структуру (спираль, кольцо) не развернёт — нужны Kernel PCA, UMAP или .
Частое полезное применение — не сжатие ради сжатия, а декорреляция и борьба с мультиколлинеарностью перед линейной моделью.
Где применяется
- перед модельюУскоряет обучение и снижает там, где много и они скоррелированы.
- ВизуализацияПервые две компоненты дают быстрый взгляд на структуру данных и кластеры.
- Борьба с мультиколлинеарностьюКомпоненты ортогональны по построению — линейная модель на них устойчива.
- Сжатие и шумоподавлениеОтбрасывание младших компонент убирает в основном шум.
- Предобработка для и Методы, основанные на расстояниях, в высокой размерности не работают — возвращает им смысл.
Плюсы, минусы и альтернативы
Плюсы
- Быстрый, детерминированный, с понятной математикой.
- Даёт явную оценку потерь через объяснённую .
- Компоненты ортогональны, что снимает мультиколлинеарность.
- Преобразование обратимо и применимо к новым данным одним умножением.
- Хорошо подавляет шум, сохраняя основную структуру.
Минусы
- Только линейные зависимости: изогнутое многообразие не распрямит.
- Компоненты не интерпретируются как исходные .
- Максимальная не означает максимальную полезность для задачи — важный слабый можно потерять.
- Чувствителен к выбросам: одна аномальная точка способна задать первую компоненту.
- Обязательна , о которой часто забывают.
Брать, если
- много и они заметно скоррелированы.
- Нужна быстрая визуализация структуры данных.
- Модель основана на расстояниях и страдает от размерности.
Не брать, если
- Структура данных нелинейная — берите UMAP или .
- Нужна интерпретируемость в финальной модели.
- немного и они уже осмысленны — только всё запутает.
- Используются деревья: они и так игнорируют нерелевантные , а от поворота осей им хуже.
Чем заменяют
Видеолекции
Записи университетских курсов, где эта тема звучит. Ссылка открывает запись с той секунды, где о ней говорят, — искать по трёхчасовой лекции не нужно.
Связанные темы
Представления и снижение размерности · Линейная алгебра в ML
Eigenvalue91%
Собственное значение · Математический справочникКоэффициент растяжения вдоль направления, которое преобразование не поворачивает.
Eigenvector91%
Собственный вектор · Математический справочникНаправление, сохраняющееся при линейном преобразовании с точностью до масштаба.
Dimensionality reduction70%
Снижение размерности · ДанныеПроекция данных в пространство меньшей размерности с сохранением структуры — против проклятия размерности.
Dimensionality Reduction70%
Снижение размерности · Обучение без учителяКомпактное представление данных, сохраняющее важную часть структуры.
Representation Learning70%
Обучение представлений · Обучение без учителяМодель сама учится полезным признакам, чаще всего через self-supervised задачи.
Autoencoders70%
Автоэнкодеры · Глубокое обучениеСеть учится восстанавливать вход через узкое место, получая сжатое представление.
Embeddings70%
Эмбеддинги · Обработка естественного языкаПлотные векторные представления объектов, где геометрическая близость означает смысловое сходство.
Linear Algebra70%
Линейная алгебра · ОсновыВекторы и матрицы — способ описать данные и преобразования над ними. Обучение модели почти всегда сводится к последовательности матричных операций.
Vector70%
Вектор · Математический справочникУпорядоченный набор чисел; в ML — представление объекта в пространстве признаков.
Matrix70%
Матрица · Математический справочникПрямоугольная таблица чисел, задающая линейное преобразование или набор объектов.
Norm70%
Норма · Математический справочникМера длины вектора; выбор нормы определяет геометрию задачи.
Distance70%
Расстояние · Математический справочникМера непохожести объектов — основа кластеризации, k-NN и поиска.
Metric spaces70%
Метрические пространства · Топологический анализ данныхМножество с функцией расстояния. Любой TDA-пайплайн начинается с выбора метрики.
Всё, что названо в описании, разобрано здесь же или в соседней теме — переходы под каждым определением.
Главная компонента
Направление максимальной , ортогональное всем предыдущим.
Разбор ниже: Как считается PCAОбъяснённая дисперсия
Доля разброса, приходящаяся на компоненту. По накопленной сумме выбирают, сколько компонент оставить.
Разбор ниже: Как считается PCAОбязательная стандартизация
Без неё компоненты определит с самым большим масштабом — увидит единицы измерения, а не структуру.
Разбор ниже: Границы применимостиСвязь с SVD
— это сингулярное разложение центрированной данных; так его и считают на практике.
Разбор ниже: Как считается PCAПотеря интерпретируемости
Компонента — смесь всех исходных , и содержательного названия у неё обычно нет.
Разбор ниже: Границы применимостиГлава «Классическое машинное обучение» последний раз правилась . Нашли ошибку — напишите.