Сокращение размерности , или уменьшение размерности , представляет собой преобразование данных из многомерного пространства в маломерное пространство таким образом, что маломерное представление сохраняет некоторые значимые свойства исходных данных, в идеале близкие к его внутренней размерности . Работа в многомерных пространствах может быть нежелательной по многим причинам; необработанные данные часто бывают разреженными из-за проклятия размерности , а анализ данных обычно вычислительно невыполним . Сокращение размерности распространено в областях, которые имеют дело с большим количеством наблюдений и/или большим количеством переменных, таких как обработка сигналов , распознавание речи , нейроинформатика и биоинформатика . [1]
Методы обычно делятся на линейные и нелинейные подходы. [1] Подходы также можно разделить на выбор признаков и извлечение признаков . [2] Снижение размерности может использоваться для снижения шума , визуализации данных , кластерного анализа или в качестве промежуточного шага для облегчения других видов анализа.
Процесс выбора признаков направлен на поиск подходящего подмножества входных переменных ( признаков или атрибутов ) для поставленной задачи. Три стратегии: стратегия фильтра (например, прирост информации ), стратегия оболочки (например, поиск с ориентацией на точность) и встроенная стратегия (признаки добавляются или удаляются при построении модели на основе ошибок прогнозирования).
Анализ данных , такой как регрессия или классификация, может быть выполнен в сокращенном пространстве более точно, чем в исходном пространстве. [3]
Проекция признаков (также называемая извлечением признаков) преобразует данные из многомерного пространства в пространство с меньшим количеством измерений. Преобразование данных может быть линейным, как в анализе главных компонент (PCA), но также существует множество нелинейных методов снижения размерности . [4] [5] Для многомерных данных тензорное представление может использоваться для снижения размерности посредством обучения мультилинейному подпространству . [6]
Основной линейный метод снижения размерности, анализ главных компонент, выполняет линейное отображение данных в пространство меньшей размерности таким образом, что дисперсия данных в представлении меньшей размерности максимизируется. На практике строится ковариационная (а иногда и корреляционная ) матрица данных и вычисляются собственные векторы этой матрицы. Собственные векторы, соответствующие наибольшим собственным значениям (главные компоненты), теперь могут использоваться для реконструкции большой доли дисперсии исходных данных. Более того, первые несколько собственных векторов часто можно интерпретировать в терминах крупномасштабного физического поведения системы, поскольку они часто вносят подавляющее большинство энергии системы, особенно в системах меньшей размерности. Тем не менее, это должно быть доказано в каждом конкретном случае, поскольку не все системы демонстрируют такое поведение. Исходное пространство (с размерностью числа точек) было уменьшено (с потерей данных, но, как мы надеемся, с сохранением наиболее важной дисперсии) до пространства, охватываемого несколькими собственными векторами. [ необходима ссылка ]
NMF разлагает неотрицательную матрицу на произведение двух неотрицательных, что стало многообещающим инструментом в областях, где существуют только неотрицательные сигналы, [7] [8], таких как астрономия. [9] [10] NMF хорошо известен со времен правила мультипликативного обновления Ли и Сына, [7] которое постоянно совершенствуется: включение неопределенностей, [9] рассмотрение отсутствующих данных и параллельных вычислений, [11] последовательное построение [11] , которое приводит к стабильности и линейности NMF, [10] а также другие обновления , включая обработку отсутствующих данных при цифровой обработке изображений . [12]
При стабильной компонентной базе во время построения и линейном процессе моделирования последовательный NMF [11] способен сохранять поток при прямом отображении околозвездных структур в астрономии [10] как один из методов обнаружения экзопланет , особенно для прямого отображения околозвездных дисков . По сравнению с PCA, NMF не удаляет среднее значение матриц, что приводит к физически неотрицательным потокам; поэтому NMF способен сохранять больше информации, чем PCA, как продемонстрировали Рен и др. [10]
Анализ главных компонент может быть использован нелинейным способом с помощью трюка ядра . Полученная техника способна строить нелинейные отображения, которые максимизируют дисперсию в данных. Полученная техника называется ядерным PCA .
Другие известные нелинейные методы включают методы обучения многообразий , такие как Isomap , локально линейное вложение (LLE), [13] гессиан LLE, собственные карты Лапласа и методы, основанные на анализе касательного пространства. [14] Эти методы создают низкоразмерное представление данных с использованием функции стоимости, которая сохраняет локальные свойства данных, и могут рассматриваться как определение графового ядра для Kernel PCA.
Совсем недавно были предложены методы, которые вместо определения фиксированного ядра пытаются изучить ядро с помощью полуопределенного программирования . Наиболее ярким примером такого метода является развертка максимальной дисперсии (MVU). Основная идея MVU заключается в точном сохранении всех попарных расстояний между ближайшими соседями (в пространстве внутреннего произведения) при максимизации расстояний между точками, которые не являются ближайшими соседями.
Альтернативный подход к сохранению соседства заключается в минимизации функции стоимости, которая измеряет разницу между расстояниями во входном и выходном пространствах. Важные примеры таких методов включают: классическое многомерное масштабирование , которое идентично PCA; Isomap , которое использует геодезические расстояния в пространстве данных; диффузионные карты , которые используют диффузионные расстояния в пространстве данных; t-распределенное стохастическое вложение соседей (t-SNE), которое минимизирует расхождение между распределениями по парам точек; и криволинейный компонентный анализ.
Другой подход к нелинейному снижению размерности заключается в использовании автокодировщиков , особого вида нейронных сетей прямого распространения со скрытым слоем узкого места. [15] Обучение глубоких кодировщиков обычно выполняется с использованием жадного послойного предварительного обучения (например, с использованием стека ограниченных машин Больцмана ), за которым следует этап тонкой настройки на основе обратного распространения .
Линейный дискриминантный анализ (ЛДА) представляет собой обобщение линейного дискриминанта Фишера — метода, используемого в статистике, распознавании образов и машинном обучении для нахождения линейной комбинации признаков, которая характеризует или разделяет два или более классов объектов или событий.
GDA занимается нелинейным дискриминантным анализом с использованием оператора функции ядра. Базовая теория близка к машинам опорных векторов (SVM), поскольку метод GDA обеспечивает отображение входных векторов в многомерное пространство признаков. [16] [17] Подобно LDA, цель GDA состоит в том, чтобы найти проекцию для признаков в маломерное пространство путем максимизации отношения разброса между классами к разбросу внутри класса.
Автокодировщики могут использоваться для изучения нелинейных функций сокращения размерности и кодировок вместе с обратной функцией от кодировки к исходному представлению.
T-распределенное стохастическое соседнее встраивание (t-SNE) — это нелинейный метод снижения размерности, полезный для визуализации многомерных наборов данных. Его не рекомендуется использовать в таких анализах, как кластеризация или обнаружение выбросов, поскольку он не обязательно хорошо сохраняет плотности или расстояния. [18]
Равномерное многообразие аппроксимации и проекции (UMAP) является нелинейным методом снижения размерности. Визуально он похож на t-SNE, но предполагает, что данные равномерно распределены на локально связном римановом многообразии и что риманова метрика локально постоянна или приблизительно локально постоянна.
Для многомерных наборов данных уменьшение размерности обычно выполняется до применения алгоритма k -ближайших соседей ( k -NN) с целью смягчения проклятия размерности . [19]
Извлечение признаков и уменьшение размерности можно объединить в один шаг, используя анализ главных компонент (PCA), линейный дискриминантный анализ (LDA), канонический корреляционный анализ (CCA) или методы неотрицательной матричной факторизации (NMF) для предварительной обработки данных, с последующей кластеризацией через k -NN на векторах признаков в пространстве с уменьшенной размерностью. В машинном обучении этот процесс также называется встраиванием низкой размерности . [20]
Для многомерных наборов данных (например, при выполнении поиска сходства в прямых видеопотоках, данных ДНК или многомерных временных рядах ) запуск быстрого приближенного поиска k -NN с использованием локально-чувствительного хеширования , случайной проекции , [21] «скетчей» [22] или других методов многомерного поиска сходства из набора инструментов конференции VLDB может быть единственным возможным вариантом.
Метод снижения размерности, который иногда используется в нейронауке, — это максимально информативные измерения , [ требуется ссылка ] , которые находят представление набора данных с меньшей размерностью таким образом, чтобы сохранить как можно больше информации об исходных данных.