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