Из Википедии, бесплатной энциклопедии
  (Перенаправлено из ядра PCA )
Перейти к навигации Перейти к поиску

В области многомерного статистического анализа , ядра анализа главных компонент (РСА ядра) [1] является продолжением основного компонентного анализа (РСА) с использованием методики методов ядра . Используя ядро, первоначально линейные операции PCA выполняются в воспроизводящем гильбертовом пространстве ядра .

Предыстория: Linear PCA [ править ]

Напомним, что обычный PCA работает с данными с нулевым центром; это,

,

где - одно из многомерных наблюдений. Он работает путем диагонализации ковариационной матрицы ,

другими словами, он дает собственное разложение ковариационной матрицы:

который можно переписать как

. [2]

(См. Также: Матрица ковариации как линейный оператор )


Введение ядра в PCA [ править ]

Чтобы понять полезность ядра PCA, особенно для кластеризации, обратите внимание, что, хотя N точек, как правило, нельзя разделить линейно по размерам, их почти всегда можно разделить линейно по размерам. То есть, если дано N точек, если мы отобразим их в N -мерное пространство с

где ,

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

Вместо этого в ядре PCA «выбирается» нетривиальная, произвольная функция, которая никогда не вычисляется явно, что дает возможность использовать функции очень высокой размерности , если нам никогда не придется фактически оценивать данные в этом пространстве. Поскольку мы обычно стараемся избегать работы в -пространстве, которое мы будем называть «пространством функций», мы можем создать ядро ​​N-by-N

который представляет внутреннее пространство продукта (см. матрицу Грамиана ) трудноразрешимого в противном случае пространства признаков. Двойственная форма, возникающая при создании ядра, позволяет нам математически сформулировать версию PCA, в которой мы никогда не решаем собственные векторы и собственные значения ковариационной матрицы в -пространстве (см. Уловку с ядром ). N-элементы в каждом столбце K представляют собой скалярное произведение одной точки преобразованных данных по отношению ко всем преобразованным точкам (N точек). Некоторые известные ядра показаны в примере ниже.

Поскольку мы никогда не работаем непосредственно в пространстве функций, формулировка ядра PCA ограничена тем, что вычисляет не сами основные компоненты, а проекции наших данных на эти компоненты. Чтобы оценить проекцию из точки в пространстве признаков на k-й главный компонент (где верхний индекс k означает компонент k, а не степени k)

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

где N - количество точек данных в наборе, а и - собственные значения и собственные векторы K. Затем, чтобы нормализовать собственные векторы , мы требуем, чтобы

Следует проявлять осторожность в отношении того факта, что независимо от того, имеет ли оно нулевое среднее значение в исходном пространстве, не гарантируется его центрирование в пространстве функций (которое мы никогда не вычисляем явно). Поскольку для проведения эффективного анализа главных компонент требуются центрированные данные, мы « централизуем » K, чтобы он стал

где обозначает матрицу размером N на N, для которой каждый элемент принимает значение . Мы используем для выполнения описанный выше алгоритм ядра PCA.

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

Большие наборы данных [ править ]

На практике большой набор данных приводит к большому K, и сохранение K может стать проблемой. Один из способов справиться с этим - выполнить кластеризацию набора данных и заполнить ядро ​​средствами этих кластеров. Поскольку даже этот метод может дать относительно большое значение K, обычно вычисляются только верхние собственные значения P, а собственные векторы собственных значений вычисляются таким образом.

Пример [ править ]

Точки ввода до ядра PCA

Рассмотрим три концентрических облака точек (показаны); мы хотим использовать ядро ​​PCA для идентификации этих групп. Цвет точек не представляет информацию, задействованную в алгоритме, а только показывает, как преобразование перемещает точки данных.

Сначала рассмотрим ядро

Применение этого к ядру PCA дает следующее изображение.

Вывод после ядра PCA с расширением . Эти три группы можно различить только по первому компоненту.

Теперь рассмотрим гауссовское ядро:

То есть это ядро ​​является мерой близости, равной 1, когда точки совпадают, и равной 0 на бесконечности.

Вывод после ядра PCA с гауссовым ядром.

Обратите внимание, в частности, что первого главного компонента достаточно, чтобы различать три разные группы, что невозможно с использованием только линейного PCA, потому что линейный PCA работает только в данном (в данном случае двумерном) пространстве, в котором эти концентрические облака точек находятся линейно не разделимы.

Приложения [ править ]

Было продемонстрировано, что ядро ​​PCA полезно для обнаружения новизны [3] и устранения шумов в изображениях. [4]

См. Также [ править ]

Ссылки [ править ]

  1. ^ Schölkopf, Бернхард (1998). «Нелинейный компонентный анализ как проблема собственных значений ядра». Нейронные вычисления . 10 (5): 1299–1319. CiteSeerX  10.1.1.100.3636 . DOI : 10.1162 / 089976698300017467 . S2CID  6674407 .
  2. ^ Нелинейный анализ компонентов как проблема собственных значений ядра (Технический отчет)
  3. Перейти ↑ Hoffmann, Heiko (2007). «Ядро PCA для обнаружения новинок» . Распознавание образов . 40 (3): 863–874. DOI : 10.1016 / j.patcog.2006.07.009 .
  4. ^ Ядро PCA и снижение шума в пространствах функций. НИПС, 1999 г.