Понижение размерности

Материал из MachineLearning.

Версия от 13:29, 25 июля 2026; Kirill Bazhutov (Обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск
Первоначальная версия статьи написана с использованием LLM Gemini и проверена участником Kirill Bazhutov 17:29, 25 июля 2026 (MSD)


Понижение размерности (также снижение размерности; англ. dimensionality reduction) — совокупность методов статистики, машинного обучения и анализа данных, позволяющих представить данные с большим числом признаков при помощи меньшего числа переменных. При этом стремятся сохранить свойства исходных данных, существенные для решаемой задачи: дисперсию, возможность реконструкции, попарные расстояния, отношения соседства, топологию или информацию, необходимую для прогнозирования.[1]

Понижение размерности применяют для визуализации многомерных выборок, сжатия и подавления шума, ускорения последующих алгоритмов, уменьшения требований к памяти и ослабления эффектов проклятия размерности. Оно может также снижать влияние мультиколлинеарности. Вместе с тем уменьшение числа координат не гарантирует улучшения качества модели: результат зависит от того, какая структура данных сохраняется выбранным методом.

Большинство классических методов понижения размерности относится к обучению без учителя, поскольку для построения представления используются только объекты X. Существуют и контролируемые методы, использующие метки классов или целевую переменную, однако они оптимизируют уже не общее сохранение структуры данных, а свойства, связанные с конкретной задачей прогнозирования.

Содержание

Формальная постановка задачи

Пусть задана матрица «объекты — признаки»

X = (x_1,\ldots,x_N)^T \in \mathbb{R}^{N \times D},

где N — число объектов, а D — число исходных признаков. Требуется получить представление

Y=(y_1,\ldots,y_N)^T \in \mathbb{R}^{N \times d}, \qquad d<D.

Если метод строит явное отображение, то y_i=f(x_i), где f:\mathbb{R}^D\to\mathbb{R}^d. Однако не все алгоритмы задают такую функцию: например, некоторые методы визуализации непосредственно оптимизируют координаты точек Y, поэтому перенос результата на новые объекты требует отдельной процедуры.

Универсальной функции потерь для понижения размерности не существует. В зависимости от метода минимизируется ошибка реконструкции, искажение расстояний или соседств, статистическая дивергенция либо ошибка последующей модели. Поэтому два представления одинаковой размерности могут сохранять разные свойства одного и того же набора данных.

Различают два основных подхода:

  1. Отбор признаков (англ. feature selection) — выбор подмножества исходных признаков без конструирования новых.
  2. Извлечение признаков (англ. feature extraction) — построение новых координат как функций исходных признаков. Отображение может быть линейным или нелинейным.

Отбор признаков

Отбор признаков также является формой понижения размерности: из D исходных переменных сохраняются только d. Его преимущество состоит в том, что смысл выбранных признаков обычно не меняется. Основные группы методов отбора:

  • фильтры оценивают признаки независимо от конкретной прогнозирующей модели, например по корреляции, взаимной информации или статистическому критерию;
  • обёртки сравнивают подмножества признаков по качеству выбранной модели;
  • встроенные методы выполняют отбор во время обучения модели, например при помощи L_1-регуляризации или отбора переменных в деревьях решений.

Отбор не следует смешивать с извлечением признаков: PCA, например, создаёт новые координаты как линейные комбинации всех или многих исходных признаков.

Линейные методы и матричные разложения

Линейное извлечение признаков задаётся проекцией

Y=XW, \qquad W\in\mathbb{R}^{D\times d}.

Такие методы сравнительно просты, часто допускают явное преобразование новых объектов и тесно связаны с низкоранговыми приближениями и разложениями матриц.

Низкоранговое приближение и сингулярное разложение

Во многих методах матрицу данных приближают произведением двух матриц меньшего ранга:

X\approx ZH, \qquad Z\in\mathbb{R}^{N\times d},\quad H\in\mathbb{R}^{d\times D}.

Строки Z служат новым d-мерным представлением объектов, а строки H задают компоненты или базисные направления.

Для сингулярного разложения (SVD)

X=U\Sigma V^T

усечённое разложение

X_d=U_d\Sigma_dV_d^T

является наилучшим приближением ранга не выше d в спектральной норме и норме Фробениуса (теорема Эккарта — Янга — Мирского).[1] Координатами объектов можно считать строки матрицы U_d\Sigma_d. Усечённое SVD применяется, в частности, при сжатии данных и в латентно-семантическом анализе.

Метод главных компонент

Метод главных компонент (PCA) — основной линейный метод понижения размерности без учителя. Перед вычислением PCA данные центрируют:

X_c=X-\mathbf{1}\mu^T,

где \mu — вектор средних значений признаков. Ковариационная матрица имеет вид

C=\frac{1}{N-1}X_c^TX_c.

Столбцы матрицы проекции W=V_d являются собственными векторами C, отвечающими d наибольшим собственным значениям. Новые координаты и реконструкция задаются формулами

Y=X_cV_d,\qquad \widehat X=YV_d^T+\mathbf{1}\mu^T.

PCA одновременно максимизирует дисперсию ортогональной проекции и минимизирует сумму квадратов ортогональных ошибок реконструкции. На практике главные компоненты обычно получают из SVD центрированной матрицы X_c=U\Sigma V^T, не формируя ковариационную матрицу явно. Если масштабы признаков несопоставимы, перед PCA часто выполняют стандартизацию, но она изменяет смысл оптимизируемой дисперсии.

Неотрицательное матричное разложение

Неотрицательное матричное разложение (NMF) применяется к матрице X с неотрицательными элементами и ищет приближение

X\approx WH,\qquad W \ge 0,\quad H \ge 0,

где W\in\mathbb{R}^{N\times d}, а H\in\mathbb{R}^{d\times D}. Строки W задают координаты объектов в новом представлении. Ограничение неотрицательности приводит к аддитивному описанию данных и нередко облегчает интерпретацию компонент, например как частей изображения или тем в коллекции текстов.[1] В отличие от SVD, решение NMF в общем случае не единственно, а задача оптимизации может иметь локальные минимумы.

Факторный анализ и независимые компоненты

Факторный анализ описывает наблюдаемый вектор при помощи латентных факторов:

x=\mu+\Lambda z+\varepsilon,

где z\in\mathbb{R}^d — скрытые факторы, \Lambda — матрица нагрузок, а \varepsilon — специфический шум. В отличие от PCA, факторный анализ задаёт вероятностную модель и отдельно моделирует общую и специфическую вариацию признаков.

Анализ независимых компонент (ICA) ищет линейное преобразование, при котором скрытые компоненты статистически независимы или максимально близки к независимым. Это отличает ICA от PCA, где компоненты лишь некоррелированы и упорядочены по дисперсии. ICA прежде всего используется для разделения смешанных сигналов; понижение размерности возникает, если сохраняется только часть найденных компонент.[1]

Случайные проекции

В случайной проекции матрица W генерируется из подходящего распределения и не обучается по выборке. Основанием метода служит лемма Джонсона — Линденштрауса: конечное множество из N точек можно вложить в пространство размерности порядка

d=\mathcal{O}\left(\frac{\log N}{\varepsilon^2}\right)

с относительным искажением попарных евклидовых расстояний не более заданной величины \varepsilon.[1] Плотные и разреженные случайные матрицы позволяют быстро обрабатывать большие наборы данных, но полученные координаты обычно не интерпретируются как содержательные признаки.

Нелинейные методы

Если объекты расположены около нелинейного многообразия малой внутренней размерности, одной линейной проекции может быть недостаточно. Нелинейные методы различаются тем, сохраняют ли они глобальные расстояния, локальные соседства, графовую структуру или вероятности сходства.

Ядерный метод главных компонент

Ядерный метод главных компонент (kernel PCA) неявно отображает данные в пространство признаков при помощи положительно определённого ядра и выполняет PCA в этом пространстве. Вычисления сводятся к спектральному разложению центрированной матрицы Грама.[1] Метод способен описывать нелинейные зависимости, но результат сильно зависит от выбора ядра и его параметров, а работа с полной матрицей Грама требует памяти порядка N^2.

Многомерное шкалирование и Isomap

Многомерное шкалирование (MDS) строит координаты, сохраняющие заданные попарные расстояния или различия между объектами. Классическое метрическое MDS для евклидовых расстояний тесно связано с PCA.

Isomap заменяет прямые евклидовы расстояния приближёнными геодезическими расстояниями вдоль многообразия. Для этого строится граф ближайших соседей, вычисляются длины кратчайших путей, после чего к матрице геодезических расстояний применяется классическое MDS.[1] Результат чувствителен к связности графа: слишком малое число соседей может разорвать граф, а слишком большое — создать «короткие пути» между удалёнными частями многообразия.

Локально-линейные и спектральные методы

Локально-линейное вложение (LLE) сначала представляет каждый объект линейной комбинацией его ближайших соседей, а затем ищет низкоразмерные координаты, в которых сохраняются найденные веса реконструкции.[1]

К спектральным методам обучения на многообразиях относятся также лапласианские собственные отображения (Laplacian eigenmaps) и диффузионные карты (diffusion maps). Они строят взвешенный граф соседства и используют собственные векторы матрицы, связанной с графовым лапласианом или марковским оператором. Эти методы преимущественно сохраняют локальную геометрию и связность данных.

t-SNE

t-SNE (англ. t-distributed Stochastic Neighbor Embedding) предназначен прежде всего для визуализации локальной структуры многомерных данных в двух или трёх измерениях.[1]

В исходном пространстве сходство объектов задаётся условными вероятностями с гауссовыми ядрами:

p_{j\mid i}=\frac{\exp(-\lVert x_i-x_j\rVert^2/2\sigma_i^2)}{\sum_{k\ne i}\exp(-\lVert x_i-x_k\rVert^2/2\sigma_i^2)}, \qquad p_{i\mid i}=0.

Масштаб \sigma_i выбирается отдельно для каждой точки в соответствии с параметром perplexity. Условные вероятности симметризуются:

p_{ij}=\frac{p_{j\mid i}+p_{i\mid j}}{2N}.

В пространстве малой размерности используется распределение Стьюдента с одной степенью свободы:

q_{ij}=\frac{(1+\lVert y_i-y_j\rVert^2)^{-1}}{\sum_{k\ne l}(1+\lVert y_k-y_l\rVert^2)^{-1}},\qquad q_{ii}=0.

Координаты Y выбираются минимизацией дивергенции Кульбака — Лейблера

C=KL(P\Vert Q)=\sum_{i\ne j}p_{ij}\log\frac{p_{ij}}{q_{ij}}.

«Тяжёлые хвосты» распределения в малой размерности ослабляют проблему скученности точек. Из-за асимметрии KL(P\Vert Q) метод сильнее штрафует разрушение соседств, чем появление ложных дальних соседств. Поэтому расстояния между удалёнными кластерами, их площади и плотности на карте t-SNE не следует автоматически интерпретировать как соответствующие величины в исходном пространстве.

UMAP

UMAP (англ. Uniform Manifold Approximation and Projection) строит взвешенный граф k ближайших соседей, интерпретируемый как нечёткое представление локальной структуры данных, и подбирает низкоразмерный граф, минимизируя перекрёстную энтропию между двумя представлениями.[1] Как и t-SNE, UMAP зависит от выбора параметров соседства, метрики, инициализации и случайного состояния. Метод часто используется для визуализации и обычно быстрее точных реализаций t-SNE на больших выборках, однако сохранность глобальных расстояний необходимо проверять отдельно, а не выводить только из вида диаграммы.

Автокодировщики

Автоэнкодер (также автокодировщик; англ. autoencoder) — нейронная сеть, состоящая из кодировщика и декодировщика:

z=g_\theta(x)\in\mathbb{R}^d,\qquad \widehat x=h_\phi(z)\in\mathbb{R}^D.

Код z является низкоразмерным представлением, а параметры \theta и \phi обучаются минимизировать среднюю ошибку реконструкции:

\min_{\theta,\phi}\frac{1}{N}\sum_{i=1}^{N}\mathcal{L}\bigl(x_i,h_\phi(g_\theta(x_i))\bigr).

Для вещественных данных часто используют среднеквадратичную ошибку, а вид функции потерь в общем случае согласуют с вероятностной моделью наблюдений.

Если размер скрытого кода d<D, автоэнкодер называют неполным (undercomplete), а центральный слой — «узким горлышком». Линейный автоэнкодер с одним скрытым слоем, линейными активациями и квадратичной ошибкой при подходящих условиях выделяет то же главное подпространство, что и PCA, хотя конкретный базис в нём может отличаться.[1] Нелинейные слои позволяют аппроксимировать более сложные отображения и многообразия.[1]

Одного узкого слоя не всегда достаточно, чтобы получить полезное представление: мощный декодировщик может восстанавливать обучающие объекты, не выделяя устойчивой структуры. Поэтому применяют регуляризованные варианты:

  • разреженный автоэнкодер ограничивает среднюю активность скрытых нейронов или добавляет штраф за плотный код;
  • шумоподавляющий автоэнкодер получает на вход искажённый объект, но обучается восстанавливать исходный, что поощряет устойчивость представления;[1]
  • контрактивный автоэнкодер штрафует чувствительность кода к малым изменениям входа;
  • вариационный автоэнкодер задаёт вероятностную латентную модель и оптимизирует вариационную нижнюю границу, содержащую член реконструкции и регуляризацию распределения скрытых переменных. Он относится также к генеративным моделям и не является прямой заменой обычного метода проекции.[1]

В отличие от t-SNE, обученный кодировщик естественным образом задаёт отображение для новых объектов. К недостаткам относятся необходимость выбора архитектуры и регуляризации, вычислительная стоимость обучения, зависимость от объёма данных и риск переобучения. Низкая ошибка реконструкции сама по себе не гарантирует сохранения расстояний, кластеров или факторов, значимых для прикладной задачи.

Контролируемое понижение размерности

Если доступны метки классов или целевая переменная, представление можно выбирать по качеству прогноза. К таким подходам относят частичные наименьшие квадраты, достаточное снижение размерности, контролируемые варианты метрического обучения и некоторые дискриминантные проекции.

Линейный дискриминантный анализ (LDA) иногда используют как контролируемое понижение размерности: он ищет направления с большим отношением межклассового разброса к внутриклассовому. Однако основная цель LDA — разделение заранее заданных классов, а не сохранение общей структуры X. Поэтому его корректнее рассматривать как частный контролируемый метод извлечения признаков, а не как центральный универсальный метод понижения размерности. При K классах число нетривиальных дискриминантных направлений не превышает K-1.[1]

Выбор целевой размерности и оценка качества

Размерность d выбирают с учётом цели анализа:

  • в PCA используют график собственных значений, долю объяснённой дисперсии или ошибку реконструкции; порог 90–95 % является эвристикой, а не универсальным правилом;
  • в факторных и вероятностных моделях сравнивают правдоподобие, информационные критерии или качество на отложенных данных;
  • для автоэнкодеров и других параметрических моделей оценивают реконструкцию и качество последующей задачи на валидационной выборке;
  • для вложений измеряют сохранение расстояний и соседств, например при помощи корреляции расстояний, trustworthiness и continuity;
  • для визуализации обычно выбирают d=2 или d=3, но визуальная убедительность не заменяет количественной проверки.

Выбирать гиперпараметры и оценивать последующую модель следует без утечки данных: преобразование обучают только на обучающей части выборки, а затем применяют к валидационной и тестовой частям.

Ограничения и компромиссы

  • Потеря информации. Любое отображение с d<D может удалить структуру, важную для неизвестной заранее задачи.
  • Разные критерии сохранения. Метод, хорошо сохраняющий локальные соседства, может искажать глобальные расстояния, и наоборот.
  • Интерпретируемость. Отобранные исходные признаки обычно понятнее новых компонент; ограничения NMF или разреженности могут улучшить интерпретируемость, но не гарантируют её.
  • Предобработка. Масштабирование признаков, выбранная метрика, обработка выбросов и пропусков способны существенно изменить результат.
  • Вычислительная сложность. Полное SVD матрицы N\times D требует порядка \mathcal{O}(\min(ND^2,N^2D)) операций, хотя усечённые и рандомизированные алгоритмы могут быть значительно быстрее. Методы, использующие полные матрицы расстояний или сходства, требуют порядка N^2 памяти без приближений.
  • Устойчивость и воспроизводимость. Стохастические методы и невыпуклые задачи оптимизации могут давать разные результаты при разных инициализациях. Для них указывают случайное состояние и проверяют устойчивость выводов.
  • Перенос на новые данные. PCA, случайная проекция и кодировщик задают явное преобразование, тогда как для многих непараметрических вложений требуется дополнительный алгоритм вневыборочного продолжения.

См. также

Примечания


Литература

  • Айвазян С. А., Бухштабер В. М., Енюков И. С., Мешалкин Л. Д. Прикладная статистика: классификация и снижение размерности. — М.: Финансы и статистика, 1989. — 607 с.
  • Bishop C. M. Pattern Recognition and Machine Learning. — Springer, 2006. — ISBN 978-0387310732
  • Hastie T., Tibshirani R., Friedman J. The Elements of Statistical Learning: Data Mining, Inference, and Prediction. — Springer, 2009. — ISBN 978-0387848570
  • Jolliffe I. T. Principal Component Analysis. — Springer, 2002.
  • Baldi P., Hornik K. Neural Networks. — 1989. — Т. 2, № 1. — С. 53–58.
  • Comon P. Signal Processing. — 1994. — Т. 36, № 3. — С. 287–314.
  • Eckart C., Young G. Psychometrika. — 1936. — Т. 1, № 3. — С. 211–218.
  • Hinton G. E., Salakhutdinov R. R. Science. — 2006. — Т. 313, № 5786. — С. 504–507.
  • Johnson W. B., Lindenstrauss J. Contemporary Mathematics. — 1984. — Т. 26. — С. 189–206.
  • Kingma D. P., Welling M. Proceedings of the 2nd International Conference on Learning Representations. — 2014.
  • Lee D. D., Seung H. S. Nature. — 1999. — Т. 401. — С. 788–791.
  • McInnes L., Healy J., Melville J. arXiv preprint arXiv:1802.03426. — 2018.
  • Pearson K. Philosophical Magazine. — 1901. — Т. 2, № 11. — С. 559–572.
  • Roweis S. T., Saul L. K. Science. — 2000. — Т. 290, № 5500. — С. 2323–2326.
  • Schölkopf B., Smola A., Müller K.-R. Neural Computation. — 1998. — Т. 10, № 5. — С. 1299–1319.
  • Sorzano C. O. S., Vargas J., Montano A. P. arXiv preprint arXiv:1403.2877. — 2014.
  • Tenenbaum J. B., de Silva V., Langford J. C. Science. — 2000. — Т. 290, № 5500. — С. 2319–2323.
  • van der Maaten L., Hinton G. Journal of Machine Learning Research. — 2008. — Т. 9. — С. 2579–2605.
  • van der Maaten L., Postma E., van den Herik J. Tilburg University Technical Report TiCC-TR 2009-005. — 2009.
  • Vincent P., Larochelle H., Bengio Y., Manzagol P.-A. Proceedings of the 25th International Conference on Machine Learning. — 2008. — С. 1096–1103.
Личные инструменты